您当前的位置:首页 >> 博客
看鉴 区块链的“生产车间”——Chain33
发布时间:2020-02-10
 

区块链技术日新月异地改变着人们的生活,越来越多的企业开始着手研究或落地区块链应用。

摆在传统企业,特别是小微企业面前的,是一道难题:学习和开发门槛!区块链作为新生技术,让传统企业认识到价值需要一定的学习成本,而想参与区块链的小微企业,却无法破解区块链开发周期长,成本高,人才稀缺的问题。

面对这种情况,复杂美CEO吴思进认为,好技术一定要让大家都用得上,用得起。

吴思进团队历时五年,打造出了区块链的“生产流水车间”——Chain33。“Chain33是一个开发门槛低、可拔插、易升级高效区块链架构,可供开发公链、联盟链及私链等,并首创模块化体系及平行链架构。”

模块化和平行链的说法在如今的业内并不少见,但吴思进自豪的讲,复杂美是第一个提出平行链架构,并将之落地的公司。

模块化开发的优势

模块化这个词对熟悉互联网开发的人来说,并不陌生。它是一种很常见的开发方式。通俗点的理解就是:为了搭建一个房子,工人们先做出横条、竖条、圆圈等物件,然后按照房子的架构拼凑在一起,形成一个窗户,一面墙,房顶等等部件。这些部件就如同是一个个模块一样。具备一定的功能,可以单独分开使用。不同的框架和库的模块,只要接口Api可以对的上,基本也可以通用。

“模块的优点是一个地方换了,另一个地方不用换。”吴思进解释道,“就像手机一样,如果接口都是标准的,位置大小也合适,那么我的摄像头、面板、芯片等都可以单独换,这样的架构就很灵活。”

但是在区块链领域,这种方法并不是那么普遍、流行。吴思进团队研究过比特币、以太坊、瑞波币、超级账本等,发现行业大部分项目都没有做到模块化。

也就是说,现在做公链还在使用传统的方法盖房子,从地基开始,一层一层往上面做。这样虽然建得很快,但是如果后续有需要调整的地方,就不太容易改造。“牵一发而动全身,成本很高,改起来也很困难。”

吴思进以以太坊为例做了进一步的诠释。他认为以太坊的开发周期非常长,最开始设计的时候没有按照分模块去设计,现在以太坊要转变共识机制,那么所有的模块都需要进行相应的改动,因为各个模块会相互影响。

如果以太坊是用模块化方式开发,现在他想要转换到POS共识机制,只需要单独修改共识模块就可以了,其他的存储、通信等不用改变。

用搭积木的方式搭建一条链

如果用模块化的方式来搭建区块链,首先需要将链拆分成一个个模块。在吴思进的展示PPT中,他们将链分成了几个模块:


看鉴 区块链的“生产车间”——Chain33


复杂美CTO王志文在开发日志中介绍,所有的模块通过一个消息队列通讯,而不是直接互相调用。消息队列不仅仅解决了耦合的问题,对二次开发也非常有用。因为整个系统的构建是基于一套消息协议的,这样,第三方实现者只要实现一个模块的消息协议,就可以直接替换掉这个模块。

“各个模块之间通过消息队列的方式进行连接。这样协作很方便,就像搭积木一样,大家的接口都一样。”吴思进补充道,“这是软件行业传统的方法。区块链的软件编程并不高明,很多都不是软件高手,而是有创新精神的人在做。现在很多人开始使用消息队列机制了。”

这种模块化开发方式听起来虽然简单,但是做起来并不容易。

吴思进劝诫:“我们做了5年才做出来Chain33这个底层系统。一般来说,使用传统的方式建一条链几个月就可以做出来。但这样一来遇到需要升级、修复的时候就很麻烦。我们是磨刀不误砍柴工,将接口标准统一后就很方便了,开发者只需要按照格式来写就可以了。所以如果你图快,就不要做模块化。”

“用我们的模块,上链变得很简单。”吴思进介绍,模块和接口都做好,并统一标准后,搭建一条链就很容易了:将各个模块拼凑起来,模块之间用消息队列机制联通,一条链就诞生了。

“公有链、联盟链、私有链等只有共识机制的区别,其他都是一样的,所以只要换一下共识就行了。”吴思进笑着说,“我们说不定是最早将联盟链、私有链、公有链做在一起的公司。”

不可能三角的另一种解法——平行链

Chain33 支持的公链架构有一大特色——平行链。平行链是为了解决区块链扩容以及TPS限制问题。

资料显示,平行链由多条底层为Chain33的链组成,交易发送到主链上被共识打包,随后同步到平行链上被执行,最后执行结果写回主链进行共识,分离共识和交易执行,同时实现交易执行,提升TPS。


看鉴 区块链的“生产车间”——Chain33


“在chain33的底层系统上可以发很多平行链,主链会为这些平行链提供存证功能。”据吴思进介绍。每一个平行链都是一个单独的场景,他可以是公链、联盟链、私链。

通俗的理解就是,将所有复杂的功能(运算、智能合约等)全部放到平行链上,主链只为这些平行链提供存证服务。这样一来,主链的效率和安全性就会提高很多。

吴思进说,平行链上一般是4个、7个节点,采用三分之二拜占庭机制,相当于一个小公司。但如果只有4个节点,那么很容易作恶,好在主链上有很多节点会为你做见证,这样你的东西就改不了,要改也是透明的。现在平行链TPS可以达到1000。

“如果将复杂的功能都放在平行链上,如何保障平行链的安全呢?”

“安全性可以由主链保证。以前以太坊的某个地方着火了,整条链都会着火。但是在Chain33 上,即使某条平行链‘着火’了,其他的平行链和主网不会受到影响。主链就相当于一个备案中心,上链的证据都会存下来。但是你不会影响到别人的链。这就是平行链的安全性。”

去年11月,复杂美已经将chain33 系统的代码开源,开发人员可以在这个底层系统上自己开发,复杂美也会为企业提供定制化服务,帮助他们低成本搭建自己的链。“很多公司都不会自己去研发底层,因为这样不合算。”

吴思进认为阻碍区块链落地发展的很大一个因素就是认知,chain33的存在就是为了助力行业发展,“为区块链行业造车、送水”,让更多的人、企业、机构都能轻松上链。

“你的技术好,一定要成本低让大家都能用得起。”

来源火鸟财经