NULS模块化架构,区块链也能由你自定义

in #nuls6 years ago (edited)

转自链世界:https://www.7234.cn/nulss/82156
2018年初,多家互联网公司宣布推出区块链项目,区块链热度骤升,众多企业纷纷试水区块链,区块链技术的相关需求爆发式增长。目前,企业一般是组建自己的技术团队开发属于自己的区块链系统,或是技术外包,让专业的区块链团队为其打造专属区块链。而在当前区块链发展仍不成熟的境遇下,企业无疑会面临区块链人才难招、
成本高昂、周期长、所开发的底层有漏洞导致风险巨大等困境

对此,NULS 团队提出了他们的解决方案。NULS的设计完全不同于其他的区块链项目,NULS由微内核和功能模块组成,以弱化主链的全新思维,通过事件和服务的剥离,实现高度模块化的底层架构,提供智能合约、多链并行、跨链共识等运行机制,降低开发和使用的成本,推动区块链商业应用进程。

NULS以模块化为架构,模块是NULS生态的最基础部分
在程序设计中,模块也就是构件,一个模块能够单独命名并独立地完成一定功能的程序语句。而模块化是在解决一个复杂问题时,自上而下逐层把系统划分成若干模块的过程。以汽车制造为例,当汽车零部件的通用率不断提高,汽车各部分总成例如发动机总成、变速箱总成、车身部件及电气系统等以模块的形式自由组合,因此厂商可以在一个平台上开发出不同级别、不同类型的车型,这就是模块化架构。使得企业或其他使用者能够直接地自由选择内核、账户、交易管理、区块管理、共识、网络、智能合约、社区治理等等模块,组装成为适合自己需求的友链,他们自己的技术团队就不需要关注区块链底层的实现逻辑,从而能够全身心的投入区块链上层应用的创新

模块热插拔,高效、长久、不过时
良好的模块化能够降低区块链的整体复杂度,使链的设计、调试和维护变得简单化;各个模块还可以独立运行。因而模块化具有三个特性:相互独立,可替换,通用。
NULS模块提供了标准定义“NULSModule”,所有NULS的模块都遵循NULSModule模块定义。NULS模块管理器负责管理所有模块,定义了模块加载/卸载、服务注册等规范,凡是遵循NULSModule规范的扩展模块都可以通过模块管理器加载到NULS节点运行。模块加载时模块管理器会注册该模块所有服务,NULS模块可以提供对外服务也可以调用其他模块的服务,NULS模块可以触发事件也可以订阅其他模块的事件。NULS内置NULSVM作为智能合约模块,是非常重要的一个模块,从模块结构上看,NULS智能合约模块处于对外服务模块和底层设施模块之间,内核模块、区块管理、账户模块、网络模块等其他模块为智能合约提供底层支撑。
在NULS的模块架构中,每个模块都会根据技术升级和应用需求而升级或替换,永远不会过时。这是非常高效的,有非常长的生命周期,不仅不会受到短时期技术升级的限制,而且还可以促进全球开发者高效合作,企业也能够更加专注于区块链上层应用的创新发展。


模块化支撑下的NULS生态

应用落地是区块链2.0成功过渡到区块链3.0的必由之路,是数字世界与现实世界连接的桥梁。NULS不仅仅期望模块化的链工厂可以帮助企业快速定制符合商业应用的区块链,实现商业应用场景落地,还希望由此推动更多应用场景的落地,以实现价值的流通,促进区块链生态的持续健康发展。
from 链世界