百万TPS的区块链到底有没有用?
作为首家达到百万 TPS 性能的底层区块链技术平台,迅雷链(ThunderChain)已经运行一整年,其卓越的技术性能和开放的行业生态,吸引了近三十家政企机构和开发者们,堪称区块链 3.0 时代的开路者。这篇文章中,我们以案例研究(Case Study)的方式对迅雷链进行了分析。
从共享计算到“迅雷链”区块链技术
跟“互联网信徒”划分 Web1.0、Web2.0、Web3.0 的思路有些相似,区块链在行业内也被分成了三个阶段。
区别于 1.0 时代的数字货币和 2.0 时代的智能合约,区块链 3.0 的本质是将现有区块链技术真正应用到实体经济中去,解决那些原有技术无法完美解决的具体问题和场景。
但是在 2018 年之前,大部分底层主链的技术性能还停留在两位数 TPS 的程度,一个几千用户的区块链应用就无法承受,更无法在大规模的商业级应用中落地。性能差、效率低、扩展性有限,成为制约区块链 3.0 时代到来的关键因素。
2018 年 4 月,迅雷链的发布则被称为区块链 3.0 时代到来的标志性事件。
其实早在 2016 年,迅雷就在十余年分布式技术积累的基础上,开始探索区块链技术和自身共享计算业务的结合。为了支撑这一百万级别用户规模的应用场景,迅雷创新地研发了同构多链架构,将底层区块链技术性能提升到百万 TPS, 并通过优化的共识算法达到秒级确认,这一突破使得大规模商业级应用开发得以实现。在经过一段时间的试运行之后,迅雷正式推出迅雷链开放平台,将自身的技术能力赋能于开发者,共同推动区块链行业的繁荣发展。
迅雷链具体是如何实现的呢?
分层来看,迅雷链以共享计算的 P2P 网络、存储空间、算力为基础层,搭建起同构多链架构。多链是指多条链,不同用户的数据会落到不同的链上。而同构是指每一条链使用相同的应用程序。单个节点只需负责单一链上的相关数据,不仅对存储的需求变小,同时性能得到了极大提升。
在共识机制上,迅雷链引入了 DPoA 共识算法,遴选出带宽较高、稳定性好、计算能力强的节点作为代理节点。为了保证服务稳定,迅雷链会定期对代理节点进行洗牌,把更好的节点作为候选。
此外,迅雷链利用改进过的 PBFT 共识算法,能够在秒级做到 2/3 以上的节点确认。一经确认,就不会在产生分叉或回滚,确保链上数据准确可靠。
同构多链的底层架构配合双共识算法,能够利用扩链的方式来大幅提升性能,从而实现高并发。如果按照主网上线时间,迅雷链应该是国内第一个真正实现百万 TPS 的底层区块链平台。
这无疑具有里程碑式的意义。
我们熟悉的区块链,无论是以太坊还是EOS.IO,他们的TPS速度都不高。以EOS.IO为例,这个号称是能够达到百万TPS的区块链系统,到目前为止最高TPS仅仅超过3590次,远低于宣称理论值。而迅雷链则已经在实际应用中实现了真正意义上的百万TPS,即每秒处理超过100万次的真实交易。
但迅雷链的技术实力还不止于此。
对于需要存储大体积文件的链上应用,迅雷链文件系统(TCFS)能够派上用场。它采用“链外存储、链内验证”的设计理念,TCFS 上的所有文件均被视为用户的个人资产,这些资产不能随便转移,文件不能被人随便查看或者下载。只有拿到了用户私钥签名、得到授权后,才能具备查看、下载的权限。此外,迅雷链还在冗余编码、文件自愈等技术上也有所创新。比如在 TCFS 上存储 10M 数据可以同时存放在 40 个节点上,但文件总体积并非 400M,而是 20M。冗余编码在控制文件体积上起到了关键作用。