在接下来的几个月中,鼓励所有 Telos 节点和应用使用全新 V2 历史解决方案,并逐步停止使用 V1 历史解决方案。许多节点在 2020 年 3 月 31 日后将不再支持 V1 历史解决方案。
背景:
V2 历史解决方案是什么?为什么如此重要?我们需要知道链上实际数据(通常称为“区块日志”)和查询链上单笔交易的接口(称为“历史解决方案”)之间的区别。虽然链上数据的确涵盖了所有的链上操作细节,但我们需要有一个系统能够快速查询精确信息,比如查询帐户执行的最后 10 个操作(这是浏览器/钱包的常见查询)。
在这样的情况下,如果只有基本的区块日志可用,那么系统需要逐个查看所有链上日志,以找到所需的少量信息。可以想象,随着链上数据的增长,这样的操作十分低效。这就需要历史解决方案来发挥作用。
历史解决方案将有关操作的所有链上信息存储在单独的数据库中,可以根据需要快速检索。就上面的示例而言,当请求查询最后十个操作时,它不必读取链上的所有操作来查找数据,能够快速响应所需信息。
问题:
Block.one 已经在 EOSIO 标准版内部署了 V1 历史解决方案。然而,自最初版本,人们就知道 V1 历史解决方案难以维护持续增长的链上数据(因为这个原因,从一开始,V1 就被打上了过时的标签)。目前要在 Telos 主网上构建和维护 V1 历史解决方案,需要数周的时间来准备/修复系统,还需要占用大量的服务器内存(RAM)和硬盘空间。
例如,为了协助一个节点顺利升级至新的 EOSIO 2.0.0,管理员需要花费 100 多个小时来重新处理,其他所有未运行 V1 历史解决方案的节点则可以在几个小时内更新。另一个例子是,运行了 V1 历史解决方案的节点无法运行其他 EOSIO 软件,因此需要单独操作更多节点来保证稳定运行。
历史解决方案是区块链所需的重要服务,许多新的解决方案正在开发中,试图以一个更可持续,无需占用过多基础设施的系统,来取代原来的 V1 历史解决方案。
解决方案:
许多团队开发了新的基于 EOSIO 的历史解决方案,EOSRio 开发了 Hyperion 历史解决方案,由于其基础设施成本低,查询功能强,该解决方案在许多节点中迅速获得采用。EOSRio 的开发人员积极参与 Telos 社区的创建,Hyperion 还提供了添加 Telos 特定链上信息的功能。关于 Hyperion 的更多信息: https://eosrio.io/hyperion/ Hyperion Github 信息库: https://github.com/eosrio/Hyperion-History-API
为了减少 Telos 对 V1 历史解决方案的依赖性,节点们积极努力通知社区,节点将不再支持 V1 历史解决方案,而会积极提供 Hyperion 历史服务或其他下一代历史解决方案。这将有助于标准化及更广泛的 Hyperion 历史解决方案应用的推进(就像其他 EOSIO 链正在经历的一样,V1 历史解决方案现在和将来都很难完成定位)。
操作指南:
节点:与往常一样,节点请提供标准 API/P2P,目前无需运行其他任何历史解决方案。如果确实提供了 V1 历史解决方案,请应用 Hyperion V2 历史解决方案来替换 V1 历史服务。我们已与所有现有的 V1 历史提供商沟通,直到2020年3月底,他们都将持续提供这些服务(如果可能的话),以支持 DAPP /服务商在这段时间内过渡到新的服务。
DAPP/服务开发者:如果对节点有查看历史记录的需求,请使用全新 V2 历史服务(在查看记录方面,使用体验与 V1 非常相似),这样就不会受到任何节点停止提供 V1 服务的影响。以下是可以使用的公共 Telos Hyperion 节点列表(每周都会有更多的节点上线):
https://mainnet.telosusa.io/v2/docs/
https://telos.eosphere.io/v2/docs/
https://telos.caleos.io/v2/docs/
以上链接涵盖了服务器可响应的所有可用端点,在页面上可直接进行创建/测试。如果需要 Hyperion 服务的更多帮助,请加入 Hyperion 电报群:https://t.me/EOSHyperion
加入 Telos 电报群
https://t.me/HelloTelos
加入 Telos DAPP 开发者电报群
https://t.me/dappstelos
来源:CSDN
作者:EOSwriter
链接:https://blog.csdn.net/EOSwriter/article/details/103975837