相关文章
Valis 网络:更难、更好、更快、更强的 Qubic
Valis 网络是一种强大的中间件解决方案,旨在支持数百万同时使用 Qubic 的用户。
Spelunker,2024 年 7 月 29 日。
正在形成的大都市
想象一个即将大规模增长的城市,但面临一个主要问题:其有限的道路威胁着这种扩张。正如一个城市需要更多的基础设施来处理增加的交通量一样,Qubic 生态系统需要强大的基础设施来支持其不断扩展的用户基础。
让我们快速计算一下。根据当前设置,每个处理 80 个连接的 50 个公共 Qubic 计算节点,Qubic 网络只能支持 4,000 个连接。幸运的是,这有限的连接数量可以通过“按请求连接方法”由多个最终用户共享。
按请求连接方法是一种网络技术,其中为客户端向服务器发出的每个单独请求建立一个新连接。一旦服务器处理完请求,连接就会关闭。这允许多个客户端有效地共享有限的连接池,因为每个连接仅被临时使用。
就像你的车并不是 100% 的时间都在使用道路一样,客户端也不是 100% 的时间都在使用连接。因此,实际道路的容量取决于其利用水平。由于快速计算无法胜任,我们需要一些场景:
利用率 | 每 QCN 的并发
连接数 | 总连接数(50 QCNs) | 每钱包的连接负载 | 支持的
总用户数 |
最大 | 80 | 4,000 | 100% | 4,000 |
峰值 | 80 | 4,000 | 10% | 40,000 |
现实 | 80 | 4,000 | 3% | 133,333 |
低 | 80 | 4,000 | 1% | 400,000 |
在我们的“峰值”场景中,Qubic 网络可以支持 40,000 个并发用户,刚好低于官方 Qubic Discord 中的 43,000 名成员。如果没有可扩展性,雄心勃勃的 Qubic 大都市可能在其成形之前就消失。
历史回顾
2023 年末,Qsilver 发现了这个问题,并开始开发解决方案。他的主要目标是创建能够支持首批百万 Qubic 并发用户的工具。由于当前 Qubic 网络无法直接处理这种容量,Qsilver 设计了中间层,充当各种应用程序(例如有钱包的最终用户)和 Qubic 网络之间的桥梁。从技术角度来看,他创建了一个“中间件”,最终可以将世界带入 Qubic。
Qsilver 设想的第一个实现是独立开发的,名为 Qserver 和 Qclient。后来,Qubic 社区的资金用于 UI 开发。Qserver 和 Qclient 当前为 Valis Wallet 和 Valis Explorer 的第一个版本提供支持。
在过去四个月中,我们一直在安静而勤奋地工作以增强我们的中间件。经过广泛的重构、改进和打磨,代码库已准备好成为 Valis Wallet 和 Valis Explorer 第 2 版的支柱。我们对结果感到非常自豪。我们称之为 Valis 网络。
进入 Valis 网络
Valis 网络被设计为一种云服务,具有按需扩展能力。它遵循分布式分层节点结构,利用两种节点:
- Valis 云节点 (VCN): 部署在集中式云环境中,VCN 与 Qubic 计算节点 (QCN) 交互,并处理大量数据处理和存储。
- Valis 边缘节点 (VEN): 位于网络外围,VEN 管理面向用户的交互并与 VCN 通信。
Valis 网络支持多个 VCN,每个 VCN 服务多个 VEN。每个 VEN 又支持多个最终用户应用程序(例如,Valis Wallet)。
在 Valis 网络中,99.9% 的数据流从 Qubic 网络流向最终用户。VCN 从 Qubic 网络提取数据,压缩后传递给 VEN,后者处理优化的数据流并处理来自最终用户应用程序的 WebSocket 请求。VEN 以最小的延迟同步到最新的 tick。
只有当最终用户通过 Valis Wallet 等最终用户应用程序向 Qubic 网络提交交易时,数据才会以相反方向流动。
将成本效益推至极限
在 Valis 谈论“执行”时,我们指的是有效 且 高效地完成任务。需要注意的是,效能是关于结果,而效率是关于过程。仅仅实现目标(例如,可扩展性、可用性……)并不算作成功。您必须在明智地使用资源并尽量减少浪费的情况下做到这一点。因此,要确定 Valis 网络是否成功,我们必须看成本。
成本效益的可扩展性
在我们准备进入测试阶段时,我们预计 Valis 网络将以每百万用户每月 1,000 美元的成本水平进行水平扩展。换句话说,每个钱包和每月的费用为一毫分。这个例子假设只部署 1 个 VCN(200 美元/VCN/月)来管理 40 个 VEN(20 美元/VEN/月),每个支持 25,000 个 Valis Wallet。
就可扩展性而言,这种设置比去中心化解决方案更具成本效益。再次提醒,一台 Qubic 计算节点支持 80 个连接,单台服务器(具有至少 8 核、500 GB RAM 和 1 Gbps 同步互联网连接的裸机服务器)的估计成本约为 13,000 美元。
当然,将 VCN 与 QCN 进行比较就像将苹果与橙子进行比较。每个都专注于实现不同的目标。但是,在为最终用户服务时,Valis 网络(VN)在其最低配置下的 1,000 美元/月比在峰值利用率下的 50 个 QCN 操作的整个 Qubic 网络 (QN) 更具成本效益,后者在初始资本支出上为 650,000 美元。
成本效益的可用性
在确保最佳的最终用户体验时,可扩展性并不是威胁 Qubic Megalopolis 的唯一因素。
在不遗余力地追求最大性能时,Qubic 做出许多非正统的选择,其中一些影响了可用性。例如,由于 Qubic 每周修剪除余额以外的所有数据,为最终用户创建交易历史成为一个挑战。别担心,Valis 网络来救援。通过维护最新的交易数据历史存档,存储和索引所有交易以便快速检索,Valis 网络能够为最终用户提供最新的代币余额和交易历史。作为参考,一个 QCN 需要每个 epoch 35 GB 的存储空间用于原始数据,而每个 VEN 使用 6 GB 的空间用于 23 个 epoch,或每个 epoch 0.26 GB。
除了功能外,速度也很重要。每个新连接需要大约一秒钟的建立时间,这增加了不必要的延迟。一秒钟可能看似不长,但在涉及最终用户应用程序(登录、POS 支付、期望几乎即时确认的转账……)时,这种额外的延迟变得相当明显,远远超过了 Doherty 阈值。通过维护持久连接,Valis 网络在规模上消除了这额外的一秒。
成本效益、可扩展性和可用性在行动中
为了更好地理解 Valis 网络对最终用户应用程序的好处,让我们以 Valis Wallet 为例。我们将重点介绍如何在规模上提供三个关键功能:
- 显示代币余额:Valis Wallet 能够高效地显示代币余额而无需用户干预。其他钱包可以显示余额。但它们通常会断开连接,并需要手动刷新以减少 QCN 负载。
- 支持 Qx:Valis Wallet 是唯一支持 Qx 去中心化交易所 (DEX) 的 Qubic 钱包。其他钱包可以创建 Qx 交易而不需要中间件,直接连接到 QCN,但在没有看到订单簿的情况下用户应该下哪些订单呢?理论上,其他钱包可以请求每 tick 获取订单簿,但它们会很快使 QCN 超负荷,因此它们不这样做。
- 高峰期的可用性:Valis Wallet 即使在高流量事件期间仍保持响应和功能,支持数百万用户,得益于持久连接的使用。其他钱包在重负载下可能会变得无响应。
如您所见,尽管其他人在低活动期或有限条件下努力模仿关键功能或失败,但 Valis Wallet 可以经济高效地和可靠地提供相同的关键功能,在规模上确保不间断服务,同时防止网络拥堵。
总之,Valis 网络为企业和开发人员提供了在高流量条件下的可扩展性、效率和可用性方面的独特优势。此外,它通过提供这些功能而不损害网络来为 Qubic 生态系统带来好处,从而避免了公地悲剧。
Qubic 的外骨骼
阅读上面描述的挑战时,有些人可能会认为 Qubic 存在缺陷,Valis 网络是 Qubic 的拐杖。我们不这么认为。Qubic 是一个美丽的 DRT,在追求性能方面毫不妥协,剥离所有不必要的元素,直到只剩下最基本的。相反,我们将 Valis 网络视为 Qubic 的外骨骼,补充和增强 Qubic 网络。
借助智能合约的使用,Qubic 最终用户获得性能,同时得益于 Valis 网络的可扩展性和可用性。有效且高效。
另一种思考这两者互补性质的方法是将它们视为一个具有四层的洋葱,每层包裹着前一层。内层是由 QCN 组成的网络。第二和第三层分别由 VCN 和 VEN 组成。中间层共同构成了 Valis 网络。外层是由最终用户、开发人员和企业组成的网络。
Qubic 的利益相关者可以选择直接与内层进行交互,但他们会体验到较低的可靠性、更高的开发复杂性、较少的功能、较慢的性能和较差的可扩展性。得益于 Valis 网络,Qubic 变得:
更难(可靠性)
Valis 网络中的持久连接可防止在交易高峰期间停机。您的 Valis Wallet 在您最需要时将随时可用。
更好(解决时间和功能)
开发人员可以使用 Valis 网络快速集成 Qubic,避免直接节点交互的复杂性。最终用户享有访问非交易、非 tick 相关数据(地址和代币余额、订单簿、市值、富豪榜、智能合约状态……)的好处。
更快(速度)
持久连接允许最终用户享受最小的延迟。在所有用户之间共享连接可提供快速、一致的体验,类似于繁忙高速公路上的快速通道。
更强(可扩展性)
Valis 网络可以支持数百万并发用户,比直接连接到 Qubic 节点的钱包多出数量级,后者在仅仅支持一百个用户时就会陷入困境。
未来
正如我们两周前所暗示的,我们相信 Valis 网络将在商业和技术层面上变革 Qubic 生态系统。通过在 Qubic 之上创建类似于 Infura 的服务,而不是以太坊,我们旨在促进高性能终端用户应用程序的开发和部署,推动 Qubic 的增长和采用。
对于开发人员
Valis 网络抽象了 Qubic 网络的复杂性,让开发人员可以在不担心基础设施和可扩展性的情况下构建应用程序。
对于企业
企业可以在 Qubic 网络上构建和部署可扩展的应用程序,并采用按使用付费的模式以实现成本效益。
对于 Qubic 生态系统
Valis 网络通过提供必要的基础设施来支持 Qubic 网络的增长,使开发人员和企业更容易采用和使用 Qubic。
随着开发的继续,重点仍然放在确保所有利益相关者的稳健性能、可扩展性和易用性。
如果您有在 Valis 网络上构建的想法,我们很想听到。
要获取最新更新,加入Valis Discord,在X上关注我们,并将我们的博客加入书签。
← 上一页
下一页 →