在区块链的背景下,常常有人讨论 Polkadot 背后的技术如何为可扩展性问题提供有力的解决方案。简单来说,Web3 中的可扩展性问题,就是指网络在处理越来越多交易时会遇到的困难。如果没有好的解决方法,网络可能会变得拥堵、交易确认慢,费用也会增加。造成这些问题的原因有很多,比如区块的大小、网络带宽、存储需求和共识机制等。为了应对这些挑战,Polkadot 将工作负载分配到多个可以互相协作的 Rollup(以前叫做“平行链”)上,而这些 Rollup 的安全性由 Polkadot 的中继链来保障。过去几年,我们不断对这项技术进行创新和改进,让 Polkadot 在各个方面逐步扩展,并引入更多的抽象层次,推动 Polkadot 成为一个独特的 Web3 云平台。在本文中,我们将探讨 Polkadot 的可扩展性,讨论已实施的扩展技术,未来将推出的技术,包括弹性扩展,以及 Web3 应用程序的一般可扩展性挑战。让我们从回顾 Polkadot 的演变历程开始吧,了解它如何发展到现在的状态。
Polkadot 的去中心化多核计算机Polkadot 1.0 于 2021 年推出,并在两年后全面交付!这是迈向多核“世界计算机”的第一步。它代表了区块链技术的突破性进展:一个完全去中心化且可扩展的平台,支持多个互联的 Rollup。这一创新架构远超时代的需求,使得 Polkadot 能够支持广泛的应用场景,从去中心化金融、供应链管理到身份验证和游戏等,像 Centrifuge、Hydration、Kilt 等项目就是其中的典型例子。这个架构让 Polkadot 从一开始就解决了 L1 层的可扩展性问题。如今,我们看到其他平台也在考虑类似的解决方案:例如以太坊基金会最近提出了构建原生的 rollup 的计划。https://x.com/2077Research/status/1883980391301755100Polkadot 引入了“核心”这一概念,作为一个基本单元,为 rollup 提供计算和带宽。需要注意的是,核心的资源每 12 秒可以被 rollup 使用一次。当时共有 50 个核心可用,每个核心提供以下资源:500 毫秒的执行时间5MB 的带宽
Polkadot 的“核心”是什么?Polkadot 核心与普通 CPU 核心有本质的区别。计算不是只进行一次,而是多次执行,以确保结果以完全去信任和去中心化的方式得到验证。在低层次上,使用特定的协议,通过加密学和经济激励来确保计算结果的正确性。没有恶意行为者能阻止计算的进行或篡改其结果。
Polkadot 的核心如何提供带宽?由于 Polkadot 的去中心化特性,它并不假设输入数据的存储位置与计算资源的位置之间存在任何关系。Polkadot 的数据可用性(DA)层使用纠删码将数据安全地存储在多个不同节点上的较小冗余碎片中。每个核心提供这个过程所需的带宽。这是实现一个完全去信任、无许可系统并安全存储这些输入的必要条件。核心的带宽限制了可用于计算的输入大小。Polkadot 在短期和中期对可扩展性做出的早期简化假设:核心资源每 12 秒只能使用一次每个 Rollup 只能使用一个核心这些假设导致了 Polkadot 全球计算机上最多只能运行 50 个 rollup。rollup 可以在完全无许可和去信任的方式下,通过参与并赢得拍卖来获取一个核心,进而连接到 Polkadot。然而,这些简化假设并不是不可改变的。接下来的部分将讲述 Polkadot 如何显著改善 rollup 的可扩展性问题。
Polkadot 2.0 - 更快、更易访问
横向扩展我们逐步优化和改进了 Polkadot 的共识技术,使得验证者数量从 2021 年的 200 个增加到 2024 年的 500 个,并计划在 2025 年达到 1,000 个验证者。这不仅增加了可用核心的数量,还提升了在 Polkadot 上能运行的 rollup 数量。同时,它也增强了网络的弹性和安全性,使 Polkadot 成为拥有最高 Nakamoto 系数的 PoS 网络,跻身顶尖行列。通过这段简短的视频,您可以进一步了解为什么去中心化(通过该系数衡量)在比较不同网络时如此重要。https://www.youtube.com/watch?v=_dXNNeqdYmw2024 年 12 月,Polkadot 在 “The Spammening” 活动中展示了仅使用 15 个核心(共 100 个核心)时所能达到的性能。它已经超越了像 Solana 和 Aptos 等顶级竞争对手,证明了其技术优势。虽然这些结果很令人惊讶,但它们只是 Polkadot 潜力的一小部分,真正的能力还远未展现出来。因此,Polkadot 在吞吐量方面是最快的,并且在数据可用性带宽方面远远领先。查看完整的 12 月直播测试结果。https://polkadot.com/reports/polkadot-spammening-report-2024.pdf
垂直扩展在 2024 年,Polkadot 推出了一个重大协议升级(异步支持),进一步垂直扩展整体网络容量,并改善了单个 rollup 的性能特性。这个新功能将 Rollup 的延迟从 12 秒缩短到 6 秒,有效地使得每 6 秒可以消耗一个核心的资源。这使得单个 Rollup 的吞吐量翻倍。同时,每个核心提供的计算资源也从 500 毫秒增加到 2 秒,代表吞吐量增加了 4 倍。在该升级之后,推出了 Agile Coretime。它取代了拍卖模型,并降低了开发者的入门门槛。它使得计算和数据可用性带宽资源的管理变得更加简单和高效。曾经非常静态的资源消耗模型,现在变得更加动态,允许 Rollup 通过两种不同的方式来获取和使用核心:批量分配:通过 NFT 来代表一段固定时间的核心分配,开发者可以用 DOT 购买这些核心资源。购买后的核心可以拆开、共享或者转售,这样多个 Rollup 就可以共享同一个核心,从而有效地增加系统中能运行的 Rollup 数量。按需分配:顾名思义,可以在需要时立即获取并使用单个核心。
弹性扩展:更强的垂直可扩展性预计将在 2025 年第二季度在 Polkadot 上推出,弹性扩展为目前影响成功 Web3 应用程序的可扩展性挑战提供了一个有效的解决方案。
高交易费用像以太坊这样流行的去中心化应用平台经常会出现网络拥堵,导致交易费用(gas 费用)不断上涨,通常这种情况会引发一场“竞价战”。大部分问题的根源在于架构本身,它在交易吞吐量(每秒交易数)方面存在固有的限制。这种影响非常严重,阻碍了 Web3 技术在金融服务等关键领域的大规模应用。以 DeFi 应用为例,与 Web2 相比,它们面临以下问题:吞吐量瓶颈,导致性能和可用性大幅下降微交易和频繁交互的成本更高
慢交易时间网络拥堵会导致交易确认时间变慢,严重影响用户体验,并对实时 Web3 应用造成重大限制。
Web2 在 UI 和 UX 方面逐步提高了标准,用户已经习惯了既快速又响应迅速的应用程序。在当今的数字环境中,加载缓慢的应用程序已经无法被接受,我们必须努力弥合这个差距,满足用户日益提高的期望。
弹性扩展的应用场景与示例Polkadot 作为 Web3 云领域的先行者,意味着它天生具有可扩展性,能够满足最具挑战性的应用场景 —— 这是以前无法做到的。因此,我们正在缩小 Web2 和 Web3 之间的可扩展性差距。弹性扩展技术的价值在于,它能够解决一些之前由于技术限制无法实现的关键应用场景。以前,某些应用场景因为可扩展性问题无法得到支持,但现在,Polkadot 上的所有 rollup 可以根据需要动态地调整使用计算和带宽资源,从而满足不同类型的应用需求。
高吞吐量、低延迟热门游戏拥有数百万玩家,是 CPU 密集型应用的典型例子。玩家期望他们的操作能够立即产生效果。因此,减少交易延迟对于提升 Web3 游戏体验至关重要,并将其拉近 Web2 游戏的互动水平。
高吞吐量和带宽弹性扩展可以显著提高 CPU 和带宽密集型应用的速度,例如空投、账户迁移和存储迁移,速度可能提高多达六倍。
低吞吐量、高带宽例如 L2 可用性、去中心化存储、物联网网络或其他 DePIN 用例,可能需要大量带宽但较少的 CPU 资源。这些应用可以根据需求将带宽使用量扩展到每秒 12MB。
低延迟使用 12 个核心的应用可以在 500 毫秒内确认交易,这在速度至关重要的场景中(如高频交易)能显著提升用户体验和效率。
Polkadot 为 Web3 提供真正的云能力Web2 云的一个重要特点是,它们可以根据需要灵活地调整应用所使用的资源。这种灵活性可以帮助降低成本或提升用户体验。如果 Polkadot 想要成为第一个真正的 Web3 云平台,它就必须具备这样的能力。为了实现 Web3 云的目标,我们在 Polkadot 上改进了 rollup 的可扩展性,并且在提升性能和可扩展性的同时,依然保持了安全性和去中心化这些长远价值。下面的表格展示了 Polkadot 如何通过引入弹性扩展,进一步提升 rollup 的可扩展性。执行时间和最大可使用核心数取决于排序器硬件的速度弹性扩展是在 Polkadot 现有技术的基础上发展出来的,它不需要为 rollup 引入任何新的概念或要求。它只是让 rollup 可以根据需要动态调整和分配资源,从而提升用户体验。排序器会提交它们构建的状态变化(交易记录),而验证这些变化的过程将在 Polkadot 中继链上并行进行,这样就可以为单个 rollup 提供多核支持。虽然验证过程可以同时进行,但状态变化仍然需要按顺序连接成链。因此,如果排序器的速度得到提升,未来可能会提高整个系统的性能。
Rollup 能否成为 Web3 的虚拟机吗?在 Web2 云环境中,物理硬件资源被划分为任意大小的虚拟机。例如,一个 64 核的裸金属机器可以被划分为 32 个双核虚拟机,或者 16 个四核虚拟机。然后,每个虚拟机用于托管一个或多个并行运行的应用。弹性扩展的引入使得 Polkadot 也能以类似方式动态划分其资源。每个 rollup 就变成了一个虚拟机,拥有任意数量的 Polkadot 核心。使用单个核心的虚拟机每 6 秒可以消耗 2 秒的执行时间。一个虚拟机(VM)可以使用弹性扩展将其计算能力提升三倍。
Polkadot 与 Web2 云:相似但不同Web2 云(如 AWS、GCP 等)引入了一些关键概念,这些概念已经被广泛理解并接受:可扩展性:系统处理增长的能力,通常通过横向扩展(增加更多机器)和纵向扩展(为现有机器增加更多处理能力)来实现。计算能力:按需运行应用和工作负载的能力,无需拥有物理基础设施。存储:以可靠、持久的方式存储数据,并且可以随时从任何地方访问。网络连接:高效可靠地将应用和服务连接在一起的能力。安全性:保护数据和应用免受未经授权访问、使用或披露的能力。管理能力:提供、监控和管理云资源的能力。从定义上看,Web3 云并没有偏离这些概念,而是将它们与 Web3 的使命紧密对齐。Web3 云的特点是完全无需许可、无需信任、去中心化且透明,赋予开发者安全地拥有和管理计算、存储、带宽和网络资源的能力。开发者可以利用 Polkadot 的技术栈,构建不可阻挡的应用,这些应用不仅高度可靠、性能优越且安全,同时还能扩展以满足不断增长的终端用户需求。为了更清楚地理解 Web2 云和 Web3 云之间的异同,下面的表格提供了两者的对比:
世界需要 Web3 云Web3 提供了解决长期以来 Web2 忽视或加剧的问题的方案。它不应被视为对现有系统的简单替代,而应视为对现有技术的增强。Polkadot 可以托管任何类型的 Web3 应用,并提供所需的可扩展性特性,以实现 Web2 和 Web3 技术无缝集成,带来统一的终端用户体验。现在,我们可以减少甚至完全去除用户对当前中心化 Web2 应用和系统所需的信任。当 Web3 服务得到正确实施时,它们可以大幅提升以下方面的效果,代表终端用户利益:提供无需中介的借贷、借款和交易等金融服务。通过在不可更改的账本上记录产品每个环节的过程,增强透明性和可追溯性。表现艺术、收藏品及其他数字物品的所有权。创建游戏内经济,赋予玩家真正拥有数字资产的权利。提供安全和自主的数字身份,减少欺诈,增强隐私保护。透明且防篡改的投票系统,提高信任度和参与度。简化房地产交易、减少文书工作并增加透明度。最后,我们可以得出结论,Polkadot 不仅是在改善 Web3,它正在彻底改变游戏规则。通过弹性扩展,rollup 可以实时调整其吞吐量和延迟,这意味着我们可以在不牺牲安全性或去中心化的前提下,享受到极佳的性能。互联网的未来属于 Web3 云,它建立在更少信任和更多真相的基础上。Polkadot 就是这个未来正在创造的地方。加入我们,一起构建这个未来吧!