踏平zkSync链,铭文事件是否”宕机”只是”只言片语”?
崇拜铭文的热情如何使Layer2 zkSync通过超高交易压力测试?
Layer2 zkSync是如何通过天量交易压力测试的?
作者:Haotian,加密观察员 来源:X,@tmel0211
大家好!今天我们要聊一聊最近发生在zkSync链上的铭文事件,还有一些关于链上交易处理的优化问题。首先,让我们用一种幽默的方式为大家解读这个事件。
你可以把zkSync链上的铭文事件看作是一次 layer2 公链的”压力测试”,强大的交易量像潮水般涌入,好像要把zkSync链轰炸个稀巴烂!但是,别怕,结果却不是我们想象的那样,zkSync的性能完美地经受住了考验,TPS峰值、GAS稳定性等方面表现出色。简直是公开练兵一样,毫不费力地打败了所有困难。
听起来有点匪夷所思吧?别着急,接下来我会用技术逻辑给大家解释一下:
首先,让我们来看看zkSync链是如何打包出块的。用户构造交易进入zkSync Sequencer的排序序列,然后Sequencer根据Gas Fee的高低进行排序打包进区块,再经过Proof系统的验证和主网的提交,最终完成状态确认。
在这个过程中,有两个关键点很容易引发”糟糕体验”的错觉:
第一,用户构造交易的环节。大多数用户会通过Metamask等钱包来发起交易,在钱包端发起的交易会先进入RPC远程调用服务器,然后进入Sequencer的排队序列。这个排队时间可能短至几秒,长至几分钟。如果用户等待的时间太长,Metamask就会认为交易失败,并返回交易失败的提示。
然而,这并不意味着交易真的失败了,只是因为Metamask的RPC响应时间和反馈逻辑与zkSync的Sequencer排队打包交易逻辑存在某种”不兼容”。这就是为什么有些交易明明在Metamask显示失败,但等待一段时间后,后端服务器却显示交易成功的原因。
如果用户使用后端代码调用zkSync的RPC,而不是通过钱包发起交易,就不会遇到响应超时和提示失败的问题,体验会更加流畅。这确实让一些会使用后端指令的”科学家”获得了优势,但这实际上是钱包体验端的问题,与zkSync链的处理能力无关。
第二,Sequencer的公平排序环节。当用户短时间内向RPC队列发出多笔交易时,每笔交易都会从0开始递增nonce值。如果上一笔交易还在排队状态(nonce为0),而用户又发起了一笔新交易(nonce为1),zkSync的Sequencer会根据时间给这些交易分配nonce,然后按顺序排序。
然而,如果用户在Metamask看到上一笔交易失败后立即提交新的交易,由于钱包端和zkSync API接口调用的问题,一部分交易可能并没有成功提交到RPC的排队序列中。用户以为提交了很多交易,实际上zkSync只收到了其中一部分,而只要zkSync收到了交易,就会进行排序处理。
看起来,用户看到Metamask反馈交易失败后,不停提交新交易的行为也会导致大量交易”失败”,因为这些交易根本就没有提交到zkSync链的后端,只是你在前端以为自己提交了。
综上所述,Metamask钱包的RPC响应时间和逻辑问题,以及用户急于叠加交易的行为,都可能导致大量交易”失败”。只要我们理解zkSync后台交易处理的工作流程,就能更好地避免这些优化体验问题。
那么,“宕机”的问题究竟是怎么回事呢?
其实,zkSync链并没有真正”宕机”,只是浏览器前端的显示问题。浏览器通过zkSync的RPC接口来获取最新的数据,但接口的响应会有一定的延迟,大量新交易会导致响应变慢。这是浏览器前端的问题,与链的运转无关。当交易速度适当放慢,浏览器就能够正常获取数据,问题就会解决。
当浏览器发生问题时,你可以通过其他能够同步zkSync区块数据的浏览器来进行交叉验证,比如:https://hyperscan.xyz。
那么,真实链的”运行性能”如何呢?
首先,在传闻”宕机”的时候,zkSync官方工作人员Anthony Rose在推特上频频晒出TPS刷新的好消息。实际上,zkSync的TPS达到了187.9的峰值,而正常情况下,TPS只有50-100左右。这说明大量的新交易涌入,zkSync轻松应对了压力。这次”压力测试”为未来数千甚至上万的TPS提供了充分的准备。
其次,ZK-Rollup的特殊机制决定了处理的交易量越大,Gas费就越便宜。的确,zkSync的Gas费确实更加便宜了,因为交易成本也被分摊了。根据growthepie的数据显示,近24小时,zkSync的Gas平均值降低了5.2%,平均在$0.19左右。当然,每个人的体验可能不一样,但综合链的运行数据来看,确实相对便宜。这证明了ZK-Rollup带来更流畅体验的需要将现有用户规模提升一个量级。
那铭文事件对layer2公链有何影响呢?
根据dune的数据显示,Sync的铭文铸造在短短14个小时内新增了5M笔交易,已经有65575个Holder参与其中。正如前面所说,zkSync官方已经知道了这次社区发起的”压力测试”活动,并紧急采取措施确保zkSync链的有序进行。
这个数据对zkSync来说确实是一次很好的压力测试实验,正面影响远大于负面效应。从长远来看,铭文事件并没有像传言中打回原形一样,相反,它为layer2进一步的性能优化提供了宝贵的实践经验。
不过据我的了解,除了Sync之外,还有其他铭文正在铸造。虽然没有Sync那么火爆,但也为这次压力测试增添了一把火。
总之,总体而言结果是好的。只要我们搞清楚zkSync后台排序出块的技术逻辑,消除其中的”糟糕体验”误解,我们就应该相信一切都进行得很好,要对layer2多一点的信心。
如果你对以上内容有任何疑问或想法,欢迎在评论区留言,让我们一起探讨!
We will continue to update 算娘; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles