1. 系统框架
1.1 eosd
提供数据存储功能,只是eosd是基于状态的区块链数据存储方式,以及通过交易执行智能合约进行状态的修改。
- GraphQL: 一个由Facebook提出的应用层查询语言。借助GraphQL可以基于图模式定义后端,然后客户端就可以请求所需要的数据集了。
1.2 Client(React.js)Web:前端
在EOS架构中,前端使用React.js对接RPC接口是一种简单的开发方式。这个逻辑基本上和网站开发是一样的。
1.3 EOS.IO Storage 存储
IPFS一个去中心化的文件系统
区块生产者为持有区块链原生代币的人提供的服务。 区块生产者将在 IPFS 网络上复制和托管代币持有者的文件,并提供 https 端点,允许任何拥有浏览器的人访问这些文件。
生产者将共同就他们愿意提供多少存储以换取他们的补偿(块奖励)达成共识。为相同奖励提供更多存储空间的区块生产者可能会从代币持有者那里获得更多选票。
1.4 EOS.IO 查询服务
- EOS:Query Services
- Web:REST、GraphQL和微服务
- EOS把用户账户管理、转账等功能封装成微服务,方便使用。
除了托管文件,区块生产者还需要运行 API 节点,这些节点能够代表应用程序查询区块链数据库状态。这些 API 可能是 Graph QL 和基于自定义 Web 程序集的查询的组合。这使得应用程序无需运行和维护自己的可扩展托管服务即可轻松获取所需信息。
eg. block.one 将设计和发布开源微服务,区块生产者可以部署这些服务,将区块链数据库状态映射到更传统的数据库中,以扩展读取访问、可维护性和附加索引。
|