MSTR Cat

区块链/等级 VIII · Meme币时代/8.2 Solana/课程 5

宕机、韧性与速度的代价

三次停摆、随后的修复,以及速度招致的问题

材料提供历史状态数据的区块浏览器(例如 Solana Status、Etherscan)用于记录事件发生日期及持续时间的笔记本访问验证器控制面板或网络指标工具的权限

好奇

  1. 为什么那种每400毫秒生成一个区块的链在出现故障后需要人工协调才能重新启动?
  2. 究竟是何种机制导致了2021年9月大量机器人交易涌入,从而使整个网络瘫痪了17小时?
  3. 与以太坊的多客户端生态系统相比,Firedancer 的出现如何改变共享软件漏洞所带来的风险?

探索

  1. Solana的架构通过在单一的高速链上执行所有交易来优先保证吞吐量。这种单体式设计意味着,如果大多数验证节点上运行的客户端软件出现故障,或者负载压垮了验证节点,区块生成就可能停止;自2022年至2024年的一系列修复之后,严重拥堵更多时候意味着交易被丢弃,而非整条链停止运行。与那些可以将执行分布到不同层的模块化系统不同,Solana将负载和风险集中在一处。核心客户端中的漏洞会同时影响所有验证节点,没有其他替代的执行路径来维持连续运行。
  2. 2021年9月发生的网络故障正是这种脆弱性的体现。在某次备受关注的代币发行过程中,大量的机器人交易挤占了网络的处理能力。验证节点无法应对如此庞大的交易量,导致区块生成中断了大约17小时。为恢复网络运行,必须由验证节点操作员协同手动重启系统。这一事件表明:虽然Solana能够高效地处理正常负载,但如果网络没有足够的冗余容量或动态流量控制机制,突然增加的流量仍可能引发连锁故障。
  3. 此后的多次故障继续考验着该系统的承受能力。2022年5月,由于类似的网络拥堵问题,NFT铸造机器人导致了长达七小时的系统停机。2024年2月,程序缓存中的缺陷又使得区块链网络停运了大约五小时。这次故障并非由外部负载造成的,而是软件内部的缺陷所致。这表明,即便没有恶意攻击或意外的流量激增,大多数节点所使用的客户端代码中的漏洞也足以让整个网络陷入瘫痪状态,直到补丁被应用且节点重新启动为止。
  4. Solana Labs及其他团队的工程师推出了多项修复。将交易接收改用QUIC协议,使领导者能够控制并限制传入流量;而基于质押权重的服务质量(stake-weighted QoS)会按照发送方背后的质押量比例分配领导者的接收容量,这样垃圾交易就无法再挤占其他所有人的资源。本地费用市场则允许费用根据特定账户的活动动态调整,而非依据全网负载,从而减少了无关交易所受到的不必要拥堵。
  5. 批评者认为,需要协调各节点同时重启,加之历史上一直依赖单一主导客户端,这些因素都带来了系统性风险。而以太坊则采用了多种独立的客户端实现方式,因此具有更高的冗余性:即使某个客户端出现故障,其他客户端仍可继续处理交易。Solana的支持者则指出,自2024年2月以来,该网络的正常运行时间有了显著提升。他们认为,网络性能的改善足以弥补其架构的复杂性,而且当前的架构能够支持更广泛的应用场景,无需像多链设计那样面临碎片化问题。
  6. Jump Crypto开发的独立客户端Firedancer的出现,旨在解决客户端集中化的问题。该客户端于2024年以混合形式首次运行,当时仍大量使用Agave的代码;从2025年12月起则成为完全独立的客户端。只有这种完全独立的客户端才能真正实现独立性:如果Agave出现故障,只要Firedancer上有足够的质押资产,其验证节点就能维持链的正常运转。这为网络增加了类似以太坊多客户端架构的弹性,降低了单一软件缺陷导致整个网络停止出块的概率。

关键事实

  • 2021年9月,由于代币发行时的交易拥堵,Solana中断了运行,持续时间约为17小时。
  • 2024年2月,程序缓存中的漏洞导致了Solana网络出现长达五小时的停机故障。
  • 采用了 QUIC 交易接收以及基于质押权重的服务质量机制,以抵御交易洪泛。
  • 本地费用市场允许费用根据特定账户的活动来调整,而非依据全局拥堵状况。
  • Firedancer(Jump Crypto)从2024年开始以混合形式运行,直至2025年12月才作为完全独立的客户端正式推出。
  • 2021年和2022年的重大故障均需要通过协调后的手动重启来处理。

练习 九、六、三、一

9收集列出自2020年以来各主要区块链(比特币、以太坊、Solana)发生的9起不同的网络故障或软件问题,需注明发生日期、持续时间及根本原因。
6归类根据引发原因,将这9起事件分为6类:外部负载激增、内部软件漏洞、硬件故障、网络分区、经济攻击以及其他。
3提炼将这 6 组归纳为去中心化网络即便具备冗余仍会失败的 3 个根本原因。
1凝结写一句话,描述区块链设计中单体式执行速度与系统韧性之间的权衡。

事实核查

日期、数字及数据均依据下方列出的已发表资料进行核实。

在互动学院中打开 →

EN PT ES JA KO RU DE FR MS