首页
学习
活动
专区
工具
TVP
发布

NULS项目技术以及理念特性-模块化修改后

CTO区块链

链接CTO,做区块链布道的前行者

区块链商业应用落地,可以说是2018年,关于区块链讨论最热门的话题。为了达成这个目标,区块链人都在不同方面有着各自不同的努力。NULS建立的初衷就是为了能让区块链承载不同的商业应用。为了实现这一愿景,NULS走的是了一条不去猜测未来商业发展的可能性,而是踏实搭建可预见的技术需求的路线。在接下来的文章里,NULS中文社区,会从模块化、多链并行、跨链共识、智能合约、共识机制5个技术实现,具体向大家展露展示NULS为了应用落地所累积的技术思维。

比特币大家都熟悉,从它逻辑以及代码的角度来说,非常精巧。今天人们对它扩展性的诟病,其实是忘记了它本原本设计就只是一个点对点的支付工具。而NULS的设立初时初期,就考虑到现当今的商业世界的发展迅猛,甚至是不可预测的。所以NULS不在商业发展上做任何猜测,而是全力搭建一个可以伴随商业世界高速发展的基础设施。这个基础设施的必要特点显著优势就是可持续升级。未来商业商务世界不可预测,技术更不容有任何局限!

模块化的设计在目前阶段,能,在最大成程度的上让区块链技术,能伴随着商业世界的持久变化,进行并能持续不断的升级。下面这张图就很具体的向大家展示了NULS从底层架构到应用层的模块化实现

为了实现模块化的构建,首先需要底层代码层,这层代码层包含了程序运行的基本逻辑。在代码层的基础上,产生了区块链的基础模块层。其中包括了共识机制、存储、网络、账本、智能合约这五个基础模块。

值得一提的是,在模块设计模块时候,如何建立模块标准的建立,并统一所有技术上称之为接口标准,是至关紧重要的一步。只有标准建立后,模块才能成为一个通用的东工具西。以共识机制模块为例,POC和POW是两种不同的共识机制。共识机制模块的标准,就是不同共识机制下,去组建一个通用的接口。只有当有了这个接口(标准)后,共识机制才可以实现在模块化下的定制选择,并且以实现热插拔,的方式和迅速和其他它模块相组合兼容。NULS为模块提供了标准定义,一个完整的模块定义包含4个部分:基本信息,模块服务,模块事件,模块配置。在主网发布后,NULS会提供详细模块说明书,并规划应用DEOMODemo,来演示如何使用模块来搭建应用。

目前阶段NULS的几大模块标准(账本、共识、存储、网络、智能合约),已基本已经定义完成,并且我们会NULS团队将根据行业动态发展动态来迭代升级这些定义标准,同时维护模块(插拔)内容。

模块化标准定义之后,就达到再上一层就是了链层,根据由不同模块自由选择组合成了NULS主链,同样的道理也可组成其他子链。最后一层是业务应用层,前面三层的设计终极最终目的都是为了支持支持业务应用层达到这一层。在上图中,介于在第四层和第三层,中间有一个中间层,这样设计是因为在这是NULS为了商业应用细分领域行业中,有一些共性的需求,这些需求在技术实现上可以抽象和提炼,。比如防伪行业中的,批量查询和高速存储。,这些技术实现,也就是NULS封装了一这些业务功能(同样可以模块化输出),直接提供给应用开发者,需要使用的时候直接调用即可。更是NULS从业务层面实现了帮助区块链和不同行业结合。

在这四层结构中,每一层和上一层的链接中,都有一个规范(也就是标准)来保证层级的流动是顺畅可执行的并且顺畅的,这也是模块化搭建的难点之一。

上述就是NULS模块化实践路径的介绍,再次总结下NULS模块化设计下的优势:

1. 便于技术可持久的升级、模块可以分别独立升级。

2. 便于用户组合不同模块下的内容,组合搭建开发自己的应用。

3. NULS是一个开源生态,后期开发者在模块化模式下,更方便地加入NULS底层的任一模块(部分),进行开发。

4. 当发现BUG的时候,更容易定位BUG,修复BUG。

编辑:菱酒

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180413G1FMW700?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券