虽然HT3区块天然气上限有所提高,但区块规模(数据量)变化不大,因为HT3的交易数量与数据量之间没有完全的正相关关系。
不久前,HT3达到满负荷运行,但它只处理了历史很高容量的一半。我们可以从中学到很多东西。
从上图可以看出,火币网上的区块数据大小与上述区块天然气的上限之间存在明显的关系。如果是折线图,也会呈现上升趋势。然而,两者之间的关系有点复杂。
HT3的Gas是一个抽象单位,用于测量执行一项操作所消耗的计算资源量。
因为契约是图灵完成的,所以可以在事务中包含无数的循环结构。HT3为单个区块的可用天然气设定了上限,目前为12亿。
-2020年6月火币网交易量-
尽管区块天然气上限增加了50%,HT3的交易量仍低于历史很高水平。这是因为大多数天然气用于代币交易或智能合约交易。
执行一个简单的代币交易需要花费80000天然气,以太转账交易则需要20000天然气。执行DAPP交易视情况而定,但其天然气消耗量通常高于代币交易。
相比之下,a660112要简单得多,一个基本交易只有250个字节(其中a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a,a为a为a,a为a,a为;a a a a a a a a a a a a a a a a a a a a a a a HTTP转换器)。
HT3上没有这样的协议级事务压缩,因为它使用的是帐户系统。
为了方便帐户管理,火币网网络的状态将在每次添加块时更新。火币网基金会的HojCh吻公司称:
“完整的HT3状态是指所有帐户和余额的当前状态,以及在EVM(HT3虚拟机)中部署和运行的所有智能合约的内存。在HT3区块链上,最终确定的每个区块只有一个状态,整个网络已经达成共识。每当向链中添加新块时,状态都会更改和更新。”
举一个最简单的比较:火币状态是指utxo(未使用的有效事务输出)。火币网状态和HT2状态都很难理解。简单地说,它是网络的内存(RAM)或快照。因此,合同中包含的账户余额和代码功能都是公开可见的。
如果从genesis块同步HT3,则需要遍历40亿个“节点”,大约需要1周时间。
每次生成块时,火币网 10000个节点的整个网络(运行火币网客户端并保存所有火币网区块链块的计算机)必须在本地进行更新,更新大约3000个状态树节点。
这意味着每隔15秒,您的计算机内存需要同步一个块,磁盘必须始终对每个块中的HT3网络进行读写更改。
因此,更改越多,计算机的内存和磁盘就越忙。当资源达到上限后,整个网络的进度将不同步。
不能同步意味着不能下载历史记录,但不能同时完成整个网络的事务。
此外,去年的一篇论文指出,对于程序员来说,构建一个数学模来精确地将执行成本(gas)与所使用的资源量(如CPU和内存)关联起来并不是一个简单的问题。
“我们发现了经济计量模中的一些差异,比如订单定价的严重不一致,”该报说。我们设计了一个遗传算法(GA),它可以生成比普通合同慢200倍的合同。在那之后,我们证明了所有主要的火币网客户端实现都是脆弱的,如果它们运行在消费级硬件上,一旦受到攻击,它们将无法跟上网络的步伐。”
类似地,在火币系统中,如果攻击者生成难以验证的块,甚至可能导致计算机挖矿系统崩溃。但是,如果有人这样做,它很可能会失去6.25 HT4的区块奖励,如果矿坑发生了,则很可能失去所有矿工。
然而,在HT3系统中,攻击者只会损失发布合同的成本。研究人员称,这种损失与攻击的影响并不成正比。
如果我们想在当前HT3网络形式的基础上扩展容量,让您继续运行HT3节点(例如,我们trustnode希望继续我们的区块链分析),这是一项非常复杂和耗时的任务。
当然,我们可以通过云服务提供商infra运行节点。火币网网络上的绝大多数操作由基础设施上的节点执行。
据火币网 consensys孵化器创始人Joseph Lubin称,consensys最近与amd建立了W3Bloud,以创建下一代去中心化计算、存储和带宽”
然而,目前真正的解决方案是区块链的合约级碎片化。
-火币网扩建计划(2020年6月)-
右边三个扩展方案有独立的网络环境和区块链,并与HT3建立了通信。然而,目前,这些网络之间没有通信。
如果历史重演,第一步可能是把世界上许多独立的计算机连接起来,这样每个人都可以互相交流。
一开始,如果你有一台笔记本电脑,你只能访问笔记本电脑中的数据。后来,随着技术的突破,不同的笔记本电脑之间建立了连接(最初是通过电缆),这样你就可以从邻居的笔记本电脑上获取数据。
因为这些计算机之间可以建立通信,我们可以允许每个人访问我们的数据,但我们不需要每个人都存储我们的数据,除非他们愿意。
只需要那些负责存储数据的人。我们只需要连接其他人的计算机,这样我们就可以看到彼此的数据。
也就是说,我们需要OMG和ZK之间进行沟通。我们无法在HT2和HT3之间建立通信,因为它们是不同的协议。但仍有一些项目试图将两者联系起来。
如果我们让这些数据集群彼此通信,只要它们都运行在同一协议上,那么可伸缩性就没有限制。
这需要很多时间才能实现。如果我们从这个角度来看,我们会发现中本和格雷戈里·麦克斯韦是对的,因为他们是从不同的时间层次考虑的。
中本可能会考虑全面开发火币技术。在他的声明中,他清楚地相信HT2技术将像互联网一样发展(作为一个全球分布式系统)。
然而,麦克斯韦正在考虑现在。他有一句非常正确的话:如果你工作不够努力,你就不会有飞跃。
换言之,我们正在发展,也许最困难的任务已经完成。现阶段,我们不妨耐心享受升级的过程。酿造需要时间。
文章标题:以太坊可扩展性挑战:状态数据
文章链接:https://www.btchangqing.cn/48781.html
更新时间:2020年07月07日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。