什么是 Transactions Per Second (TPS)?
Transactions Per Second (TPS) 是一个吞吐量指标,表示区块链每秒能处理多少笔交易。可以把它想成繁忙商店的收银通道:通道越多,排队越短。简单来说,它反映了链在高负载时的处理速度。
更高的 Transactions Per Second (TPS) 并不总意味着链更优。安全性、费用、最终性和去中心化同样重要,单一的头条数字可能掩盖需要权衡的方面。
Transactions Per Second (TPS) 的工作原理
想象一个繁忙的下午,大家都在交换、铸造或支付。TPS 指的是这些操作在链上被确认的速率,而不是仅提交的速度。
- 步骤 1:你通过钱包或应用提交一笔交易。
- 步骤 2:节点接收并将其放入等待区,通常称为 mempool,与其他交易一起排队。
- 步骤 3:区块生产者收集一批交易并将它们写入一个区块;这种写入的频率取决于 区块时间。
- 步骤 4:网络对该区块达成共识,区块内的交易随后被确认。
- 步骤 5:TPS 按选定窗口内的已确认交易数除以该窗口的秒数计算,随着需求变化该值会波动。
就是这个意思。
为什么 Transactions Per Second (TPS) 很重要
吞吐量会影响使用体验和成本,但它并不是唯一需要考虑的指标。
- 好处:每秒更多的已确认交易可以带来更快的结算,并在高峰时减少卡单现象。
- 视角:TPS 是 可扩展性 的一部分,要与安全性和去中心化一起考虑,因此更好的平衡比单纯宣称更高更重要。
- 相关性:DeFi、游戏和 NFT 发售在吞吐量高且配合 Layer 2 解决方案 将流量转移并降低成本时,通常表现更好。
当有人报出 TPS 时,问两个问题:统计的是哪个时间窗口,以及这是峰值还是持续值。你在钱包中的实际体验通常更接近持续值。
Transactions Per Second (TPS) 的关键特性
以下是定义该指标以及其波动原因:
- 吞吐量:TPS 计量每秒已确认的交易数,而非排队的交易。
- 分批:更大的区块或更智能的打包可以在不改动应用的情况下提高吞吐率。
- 波动性:在热门事件期间 TPS 会飙升,mempool 清空后又会回落。
- 最终性:有些链确认速度快但最终确定更晚,因此用户的信任可能滞后于原始数字。
- 传播:网络的 网络延迟 会影响区块传播速度,这可能限制吞吐量。
如何计算 Transactions Per Second (TPS)?
选定时间窗口,统计已确认交易数,再除以该窗口的秒数。就是这样。
TPS = 窗口内已确认交易数 / 窗口秒数 示例:如果某条链在 60 秒内确认了 1.2 万笔交易,那么 TPS 为 200。
不同类型
并非所有 TPS 数字都相同,营销人员通常会突出最吸引人的那种:
- 理论值:在理想条件下的实验室估算,适合放在演示文稿上,但在实际高峰铸造时参考价值有限。
- 峰值:测试或短时激增中达到的最高瞬时值。
- 持续值:连续负载下的平均值,用户日常体验更接近此值。
- 有效值:在考虑费用、拥堵控制和应用开销后观察到的吞吐量。
- 分片:跨分片分摊的吞吐量,常与 分片 设计一起讨论。
TPS 告诉你吞吐量本身,而不是费用水平或用户等待时间。钱包设计、mempool 规则和应用逻辑都会改变实际体验。
示例
在一次热门 NFT 铸造活动中,Transactions Per Second (TPS) 更高的链能更快完成订单,而较小的链则出现待处理队列和费用上升。
趣闻
人们喜欢把 TPS 与支付网络比较,但那些网络的打包和结算方式不同,难以做到完全可比;不过排行榜讨论仍然让加密社群热闹非凡。
总结
把 TPS 想成收银通道数量:通道越多越有帮助,合理的设计很重要,表现最好的系统能在客流到来时保持队列顺畅。
