在区块链项目中,很多人最熟悉的就是比特币(BTC)。但是,比特币网络每秒最多只能处理7笔交易,超出的交易只能按顺序排队。在最拥挤的时候,有超过150,000笔比特币交易在排队等待处理(注1)。或许,你会嘀咕:比特币这样的性能,怎么能和微信、支付宝抗衡呢?事实上,这个问题扩展一直是区块链(不仅仅是比特币)的关键优化方向。01我们需要多少高性能的区块链?很多人会把双11期间Visa或者淘宝的交易处理峰值速度作为区块链的性能优化目标。事实上,在一些特殊场景下,这个性能可能还不够。例如,当区块链应用于物联网时,终端和设备的实时访问控制要求需要极高的数据传输和处理速率。因此,如果要用区块链来构建价值传递网络,有人认为它的性能至少应该针对目前整个互联网信息的实时数据处理速度(包括每秒200万封电子邮件,65000次谷歌搜索),72,000个youtube视频等,53TB的数据流量,数据来源见注2,这绝不是只处理每秒(TPS)的简单需求,如何在基础上提升当前区块链的处理能力有限?挑战和机遇都非常巨大,近几年出现了很多扩容方案登场,总体来说都来自两个阵营:on-chainScaling和off-chainscaling02链上扩容最先登场的就是链上扩容组,也常被称为layer-1扩容,所谓链上,顾名思义就是直接在区块链上进行操作并直接修改基本的r区块链的规则,包括区块大小、共识机制等。以道路建设为例。如果堵车多,最直接的办法就是把原来的双向两车道扩成四车道,不够就改成六车道或八车道。比特币每秒只能处理7笔交易。直接原因是出块慢,出块容量小。然后提高块生成速度并增加块大小。例如莱特币(LTC),基于比特币代码,将出块速度从平均10分钟左右提高到4次,达到每2.5分钟一次;还有比特币现金(BCH),它也是基于比特币的,块大小直接从1M增加到32M,处理能力提升了32倍;并采用相对复杂的分片方案来优化整个网络,将每笔交易一起处理,并优化成多个组并行运行。时间做更多的工作等。链上扩容的方法比较简单,但是像在路上直接扩容一样,有点麻烦,或者很难一步到位。最终实现扩展后,出现了对性能要求更高的应用场景,我们需要不断超越自己。而且,由于所有的交易在区块链的分布式系统中仍然需要数据同步,整个网络的性能瓶颈将取决于单个服务器的处理性能。因此,普遍认为链上扩容方案的性能会有一个无法逾越的天花板。03链下扩容所以,从2018年开始,出现了越来越多的链下扩容方案,也就是常说的Layer-2扩容方案。链下扩容和链上扩容是相对的。链下扩张阵营改变了思路。它们并不直接改变区块链本身的规则(区块大小、共识机制等),而是在其之上构建一层。做特定的任务,只有在必要的信息或需要共识参与时(如数据错误、争议)才与区块链进行信息交互和传播。因为扩容本质上并不发生在区块链上,所以这种方案直观地称为链下扩容。还是用道路扩容来类比,链下扩容不是对原有道路的扩容,而是在现有线路上修一条可以向四面八方延伸的高架或隧道。普通车都会开过去,不到万不得已不要走原路。在链下扩展方案中,大量交易通常只在参与节点之间直接交易,不会传播到全网。效率直接取决于节点之间的网络性能,显然效率更高。又因为没有全网广播,信息无法公开和搜索,隐私性通常更高。因此,链下交易的性能不受原有区块链性能的影响,链下扩容的性能目标不是最高,只有更高。链下扩容主要包括状态通道和侧链等解决方案。闪电网络是链下扩展的代表之一。在闪电网络中,交易双方可以直接建立通道,然后可以在通道中实现任意数量的点对点零确认交易。他们只需要在通道打开和关闭时与区块链“打招呼”。确认广播即可。它不需要修改比特币的共识算法,比特币网络从每笔交易的处理者退一步,只处理少量的关键交易,或者在出现纠纷时处理交易以“主持公道”。这样的工作负载的现有性能是可以满足的。当然,链下扩容并不完美,其解决方案也伴随着是否会带来中心化,或者数据可能被修改的疑虑。但是,作为普通用户,您通常不会考虑使用哪种解决方案。随着区块链商业应用场景的落地,哪些解决方案能够更好的解决问题,同时不影响用户体验,才有可能赢得扩容计划。
