对于需要比当前 Polkadot 协议允许的更高吞吐量的平行链来说,弹性扩展是一个非常有用的补充。
Polkadot 的使命是提供一个专注于出色扩展性和安全性的平台。其目标是让去中心化应用尽可能在最佳条件下运行。
Polkadot 通过对平台架构进行分级来实现扩展。平行链可以为中继链上的每个区块提交一个区块,中继链是为所有平行链提供共享安全的中心链。中继链最多可以支持 300 个平行链。
Polkadot 的分层架构使得平行链项目能够整合资源并拥有强大的安全支持,几乎消除了攻击的威胁。如果每条平行链都在自己的区块链上运行安全措施,这些安全资源将会被分割,从而使得攻击变得成本更低、更容易实施。
弹性扩展只是针对 Polkadot 提出的几个令人兴奋的变化之一,这些变化为生态系统内的更多采用机会打开了更多的可能性。
将平行链扩展到多个核心
弹性扩展的一个重要方面是允许平行链为每个中继链区块生成多个区块,并对其进行验证。这些平行链区块仍可以按顺序构建,但中继链会并行处理它们。
Polkadot 可以同时验证多个平行链区块。我们将用于验证中继链上的平行链区块的中继链资源和时间称为 “核心”,类似于之前笼统地被称为 “插槽” 的概念。
因此,如果中继链可以一次验证 50 个平行链区块,我们就说它有 50 个核心,就像一颗具有 50 个核心的处理器可以同时执行 50 个线程一样。通过这种方式,平行链就能同时获得多个核心来执行,因此具有高吞吐量的平行链就能更快地执行交易。
核心任务:一个新模式
Polkadot 的既定模式是,潜在项目通过参与拍卖来申请插槽。在拍卖中胜出的新项目将成为平行链。拍卖决定了需要锁定多少代币。在单一核心模式下,这意味着租期在六个月到两年之间。
已经在实施的Agile Coretime改变了这一模式,因为它允许更灵活地分配核心。“Coretime” 指的是在中继链上使用一个核心的权利。新的变化将允许通过链上购买或从二级市场购买一个月、一小时甚至一个区块等较短时间内的一个或多个核心。
弹性扩展:启用额外的核心
每个平行链拥有多个核心以及 Agile Coretime,这两项变化共同促成了弹性扩展的实现。通过这种开发方式,平行链可以在短时间内租用额外的核心,帮助他们以更快的速度验证区块,从而执行更多的交易。弹性扩展对区块链领域的各种实体都很有用。例如,服务提供商可以为更多的客户(应用程序开发人员)提供服务,从而帮助他们增加收入和扩大影响力。
许多对核心时间的需求无法预测的应用也将受益于弹性扩展。它们只需在特定时间购买所需的核心时间来节省成本,无需在高成本和低性能之间做出选择。
在发布初期,应用程序可能只有少量用户。显然,优秀的应用会随着时间的推移逐渐增加用户数量。弹性扩展允许他们根据用户增长情况,在需要时购买更多的核心时间。
一个项目很难估算出未来的路线图上需要多少核心时间。如果一个服务只提供刚性扩展,这些项目要么一开始就必须大量购买核心时间(并找到资金来支付),要么最终只能提供速度缓慢的服务,一旦他们变得流行起来,就有可能流失终端用户。
成本效益高的扩展
许多应用程序倾向于购买比实际需求更多的核心时间,这不仅提高了各方的价格,还提高了应用程序开发者的入门门槛。弹性扩展允许他们只在需要时支付核心时间费用,从而为所有人降低成本。此外,通过可能随 Agile Coretime 引入的二级市场,项目将能够转售他们未来不需要的核心时间。
与其他扩展模型的比较
到目前为止,以 "roll-up" 形式存在的 Web3 项目,通常是基于以太坊构建的 Layer-2 操作,已经解决了可扩展性问题。然而,这些项目本身也有缺陷,要么必须在安全性较弱的情况下运行(如 “乐观” roll-up),要么必须按照“零知识”模型对节点进行大量计算。
出现这种情况是因为,在 roll-up 中,区块的执行被委托给验证者集合之外。因此,大部分计算和存储都是在链下进行的。
我们还能期待什么?
正如 Gavin Wood 上周在迪拜所概述的那样,CoreJAM是 Polkadot 核心模型更为深远和通用的扩展,比单独的 Agile Coretime 或弹性扩展要全面(尽管两者都能很好的融入 CoreJAM 模型)。
除此之外,Polkadot 还能验证更多的链。目前,平行链上的智能合约有一个局限性,即链上合约之间的调用是同步且快速的,而跨链调用则较慢且异步。这导致了一个困难的选择:选择哪条链,以及选择哪种合约易于互操作。CorePlay 构想是 CoreJAM 的一个可能的扩展,它提出在对更快调用的需求允许的情况下,同一个智能合约可以与不同的智能合约进行调度。
Polkadot 计划在未来数月和数年内,在互联网络内实现最大的可扩展性和安全性,以推动 Web3 新一轮的采用方式——并且该项技术将准备好吸引关注。