如何降低造链门槛,帮助企业实现简单造链,加快区块链落地
作者:黄连金、向文波、冉小波 原文标题:《降低造链门槛,帮助企业实现简单造链,加快区块链落地》
随着区块链的不断发展,越来越多的企业想要将自己的业务与区块链结合,以提升生产效率,节约成本,但造链成本高,难度大,成了企业需要面对的首要难题。
如果可以帮助企业实现简单造链,就能有效刺激企业,大胆地尝试将业务与区块链进行结合。只有通过不断探索,才能更快地帮助企业,找到业务与区块链的结合点,加快区块链商业应用的落地。
那 如何才能降低造链门槛,实现简单造链呢?
1.如何实现简单造链
结合传统软件开发的经验,想要实现简单造链,可以从以下4个方面考虑,然后给出合理的解决方案。
1.1.分层设计,封装底层
区块链基础架构可以细分为六层,最底层是数据层,最上层是应用层。想要降低造链难度,可以将越靠近底层的技术进行封装,最理想的状态是造链者只需要专注自己的业务开发。
封装过后的区块链系统,将不再是原始的六层结构,可能只包含两层或者三层,这样在降低造链难度的同时,也让系统的代码结构变得更简单,有利于系统维护。1.2.完善开发框架
分层设计的另一个好处是,底层得到封装之后,可以形成完善的开发框架。传统互联网技术,经过多年的积累,在各个领域,都形成了完善的开发框架。
对于企业而言,开发框架是重要的开发工具,可以帮助企业降低工作量,节约开发成本,快速地构建系统。
目前区块链技术仍处于早期阶段,完善的开发框架还比较稀缺,出现更多的开发框架,可以有效地降低企业造链的门槛。1.3.模块化
想让企业在造链时,只需要专注于业务开发,在分层设计的基础上,还必须进行模块化开发。
在传统软件开发中,模块化的开发思想,已经得到了验证。通过模块化的划分,每个模块只需要承担相对单一的功能,可以实现业务功能与基础功能的分离,而基础功能通常已经被开发框架封装好,可以直接使用。模块化开发可以有效地降低代码耦合度和维护成本,提升系统的可扩展性。
1.4.图形化界面造链
在软件开发中,有一种开发思想,叫做“约定优于配置,配置优于实现”。意思是说保证编码风格的通用性,尽可能通过配置实现编程,更有利于写出易于人理解的代码,提升编程效率,降低维护成本。通过图形化界面产品实现造链,可以很好的达到这个目标。
同时图形化界面造链,可以达到像电脑组装一样的效果,造链者只需要选择自己需要的模块和组件,完善部分配置,就可以组装出自己需要的区块链。这可以极大地降低造链难度,提升造链速度。
图形化界面造链是开发周期最短,用户体验最好,成本最低的方式,这也是未来实现简单造链的发展方向。
2.造链项目对比
在造链领域,目前Cosmos、NULS都给出了自己的解决方案,并取得了相应的成果。
在Cosmos中,分为Tendermint Core和Cosmos SDK两层。Tendermint Core是Cosmos的底层,封装了共识机制和网络层的功能。Cosmos SDK是Cosmos的应用层,是一个开发框架。
分层设计让使用Tendermint Core和Cosmos SDK造链,只需要关注应用层的开发,但为了进一步降低工作量,让造链者只需要专注于业务开发,Cosmos SDK还做了模块化设计。Cosmos SDK的模块化设计
Cosmos SDK将业务逻辑进行了拆分,封装了许多通用的业务模块,造链者可以直接使用这些通用模块,实现基础的区块链功能,在完成业务模块的开发后,与SDK进行组装,就可以完成造链。与Cosmos类似,NULS项目同样采用了分层设计+开发框架+模块化的架构设计。NULS的整体设计分为三层:微服务基础架构层、区块链基础服务层、DAPP应用层。在使用NULS造链时,主要涉及的是微服务基础架构层和区块链基础服务层。
NULS的分层设计
微服务基础架构层是NULS的底层,被称为NULSTAR,是一个区块链微服务底层框架。由于NULS的整体架构采用的是微服务,需要有一个微服务底层框架来完成服务发现、服务注册、服务通信等功能。
NULSTAR的架构设计
NULSTAR中就实现了这些功能,同时从NULSTAR的设计图中,我们还可以看出其针对区块链系统还做了专门的适配,例如无消息总线,服务间采用Websocket通信协议等。如果NULSTAR实现了微服务框架应该具备的所有功能,意味着想要采用微服务架构造链的造链者,都可以使用NULSTAR造链。
区块链基础服务层是NULS的业务层,NULS称其为NULS模块仓库。NULS模块仓库将区块链系统根据业务进行了拆分,将共识机制、账户、账本、网络、区块等通用功能开发成了独立的微服务模块。造链者在开发完自己的业务模块之后,与这些通用模块一组装,就可以造出一条自己想要的区块链。
NULS模块仓库
从造链的角度来说,Cosmos和NULS两者都采用了分层设计+模块化+开发框架的整体设计,但两者在具体实现上还是有很大差别的。首先两个项目的架构选型不同,Cosmos采用的是单体架构,NULS采用的是微服务架构。
单体架构无法做到彻底的代码解耦,模块化程度不及微服务,微服务是模块化的极致,具备更高的可扩展性,并且不会受到开发语言的限制。对于大型的区块链系统来说,采用微服务,可以更好的对业务进行拆分,降低系统复杂度,节约运营成本。
其次Cosmos和NULS两者在做分层设计时,对共识机制的划分不同,Cosmos将共识机制放到了底层,NULS将共识机制放到了业务层。这意味着使用Cosmos SDK和Tendermint Core造链,不能定制自己的共识机制,而采用NULS造链则可以根据自己的需求,定制不同的共识机制。
从市场定位来说,Cosmos是跨链项目,更侧重于跨链,对造链的支持,仅限于基于单体架构的插件式造链。NULS则将其发展分为造链和跨链两个阶段,对造链的支持更加友好,同时对跨链也进行了布局。
根据NULS核心团队发布的消息,NULS已经可以实现模块化造链,不久将通过核心产品链工厂,实现图形化界面的“一键造链”,并且其跨链功能也即将开发完成。
3.总结
想要降低造链门槛,可以采用分层设计+模块化+开发框架的设计思路,最理想的情况是提供基于图形化界面的“一键造链”的产品。
目前Cosmos和NULS都给出了自己的造链解决方案,并取得了一定成果。不同的是两者的架构选型不同,对造链的支持程度不同。Cosmos是跨链项目,更侧重于跨链,实现的是基于单体架构的插件式造链,NULS则将它的发展分为造链和跨链两个阶段,对造链的支持更友好,目前已经实现了基于微服务的模块化造链,不久将实现图形化界面的“一键造链”。
造链是急需解决的问题,这不仅是现在和未来的刚需,也是一个巨大的市场。类似NULS链工厂这样的产品的推出,将会帮助企业实现简单造链,探索业务与区块链的结合,加快区块链商业应用的落地。
作者简介:
黄连金 (Ken Huang):著名区块链专家,美国 DistributedApps CEO、中国电子学会区块链分会专家委员、NULS顾问。 向文波 (Double Xiang):Java软件工程师,Cryptotech-Writer,NULS Core Team成员。专注于区块链技术研究和区块链解决方案。 冉小波 (Reaper Ran):NULS联合发起人&社区负责人 长期从事区块链技术和项目前景研究;区块链早期的参与和布道者,拥有丰富的社区建设运营经验,负责NULS社区治理研究和运营。
参考文献:
《NULS的一键造链和跨链生态》 向文波 NULS中文社区; 《软硬核:彻底读懂 Cosmos 如何一键发链与万链互联》李画 链闻ChainNews。
위믹스3.0 최초의 DAO ‘원더다오’, 노드 카운슬 파트너 합류
위믹스3.0 최초의 DAO ‘원더다오’, 노드 카운슬 파트너 합류 l 탈중앙화 자율조직 형태로 결성…구성원 모두가 위믹스3.0 운영에 참여 가능l 스마트 컨트랙트 기반 모듈화 ...
[주간톡톡] 양의 탈을 쓴 늑대는 양일까? 늑대일까?
주간톡톡은 한주간의 블록체인 소식을 재구성해 독자들과 재미있게 이야기해보는 코너입니다. 이번주는 페이스북의 스테이블 코인 프로젝트 '디엠(Diem)'에 대해 알아보겠습니다. 그럼 ...
IBM, 블록체인 와인 추적 서비스 '빈어슈어(Assure)' 공개
IBM이 재배지부터 매장까지 와인 공급망을 추적할 수 있는 블록체인 기반 플랫폼을 공개했다.10일(현지시간) 발표에 따르면 IBM은 와인 모니터링 업체 e프로브넌스(eProven...