查看原文
其他

CESS 选择 Substats,为用户提供区块链浏览器的最佳体验

CESS CESS Fans 2023-04-02

区块浏览器是链上数据可视化的主要窗口。它记录和统计不同区块链网络的每个区块、每笔交易以及地址等信息。区块浏览器的本质就是根据区块链网络的实际情形,合理地向各类用户展示原生数据和衍生数据。其中,链数据、区块数据、合约数据、代币数据、地址数据等共同构成了区块链浏览器的基本数据架构。


举例来说,当您在使用 CESS Network 上的 DeShare 进行了文件的上传和存储,您能通过 CESS 的区块链浏览器看到更详细的数据和记录。


CESS 区块链浏览器:https://substats.cess.cloud/







CESS 为何选择 Substats




Substats 是一个获得波卡 Grant 的轻量级区块链浏览器。轻量级一方面指的是 Substats 优化了访问速度;另一方面则是 Substats 对开发者和用户更为友好,具体表现在 Substats 根据大多数用户的使用习惯以及大多数开发者的需求,对相应功能进行了优化。


CESS 选择 Substats 开发区块链浏览器,也是看到了 Substats 对于用户体验的优化。当前,Polkadot 生态最具影响力的区块浏览器是 Polkadot 原生浏览器。它提供了一个功能全面的区块浏览器,任何基于 Substrate 搭建的区块链网络都可以申请接入,并且支持多链之间的一键切换,在区块链浏览器开发之初也是 CESS 的首要选项。


然而,功能的庞大是把双刃剑,大而全的背后也有对性能的牺牲:如果交互的数据量臃肿,必然导致网络延迟高。对于普通用户来说,检索交易、查询钱包地址余额、查看网络基础状态等查询类场景,更多的实际需要是快速而不是全面。为了让 CESS 的用户能够在使用区块链浏览器时拥有更快速的体验,能够更高效地查询到相应的数据信息,CESS 选择了 Substats 作为区块链开发框架。


不仅是用户体验,从开发角度来看,Substats 与 Polkadot 原生浏览器不同,Substats 提供轻量化的组件降低对网络的依赖,提供自定义的数据展示功能。并且支持搭建后台与数据库服务来扩展更多的数据处理能力。同时也根据大多数用户的使用习惯以及大多数开发者的需求,增加了更多的展示图表。 







Substats 优势一览




Substats 对各流程都进行了优化,旨在为开发者减少不必要的工作量,提升效率。例如,支持自定义数据获取;通过缓存队列实现了数据的读写分离;支持多种类型的获取数据方式:全节点的 RPC 通信、对等节点的 P2P 协议等。相比于其他波卡生态的区块链浏览器,Substats 提供了以下一系列开发者友好的特性:


链上数据的缓存和检索

相比于 Polkadot.js App 直接从链上节点获取大量数据,Substats 会缓存链上数据,并为用户提供稳定灵活的数据检索服务,极大提高检索的速度和灵活性。


数据处理模块

Substats 在用户与区块链网络中间搭建了加工站,其包含缓存(数据库)层和计算(数据处理)层。缓存层负责将链上数据拉取至本地数据库进行存储。计算层负责加工数据库中的链上数据,使其能够组合成对用户而言更有含义的数据,比如历史数据统计、全网算力排名等。这一设计的理念是对数据进行预处理加工,而不是将庞大复杂的链上数据全盘显示出来。我们希望让用户可以更直观、快速地找到他们感兴趣的数据。除此之外,Substats 也允许开发者扩展更多的统计数据和图表


模块化的 UI 组件

Substats 将各个 UI 组件进行了模块化设计,各个组件之间没有互相依赖。开发者可以避免繁琐的代码开发和 UI 设计,轻松构建定制浏览器的视觉呈现。


更低的开发成本

Substats 仅需配置少量配置文件就能实现一键部署和启动。这些针对技术细节的改进设计,大幅度降低了开发的时间成本。


开源与安全性

Substats 提供了完全开源的代码,不包含后台托管与运维服务。所有服务由项目方来部署与运维,避免了信任成本。








Substats 的实现原理




1.节点服务同步区块链网络的区块数据。这里节点服务包括网络的全节点、第三方数据检索服务等。


2. 数据爬取模块从区块链节点那获取区块数据。Substats 支持全节点、P2P 节点以及本地数据库等类型的节点服务对接,同时支持自定义数据读取接口


3. 将从节点服务爬取而来的区块数据写入缓冲管道。缓冲管道用于分离爬取数据与解析数据过程,同时支持数据完整性检查与异常处理。


4. 将区块数据从缓冲管道中取出并有序送入解析器。


5. 解析器对区块数据进行解析,并及时写入数据库。解析过程通过并发来加速。


6. 对于通用区块数据,Substats 提供了可用的数据库表结构,使得开发者能够开箱即用。而对于定制 Pallet 的数据来说,需要开发者定义相关表结构。


7. 前端组件通过 HTTP API 定期读取数据库中的相关数据来渲染 web 页面。







和 CESS 一起选择 Substats 




Substats 在功能的和性能设计方面,更加贴合普通用户对速度和交互体验的需求。如果您正在为项目团队在寻找一个区块链浏览器开发框架,和 CESS 一样关注用户的体验和需求,Substats 将会是一个不错的选择。


了解 Substats 更多信息,请访问:https://github.com/CESSProject/substats/blob/master/README.md


欢迎加入CESS!
  官网
https://www.cess.cloud
  Twitter
https://twitter.com/CESS_Storage
  Telegram
https://t.me/CESS_Storage_official
  Discord
https://discord.gg/cess
  Medium
https://medium.com/@CESS_LAB

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存