【许晓笛】EOS 系统架构图解

相信关心 EOS 系统的同学肯定见过下面这张蓝图。对,目前只是一个蓝图,而且以 BM 的尿性,肯定在心理已经把这张图改的面目全非了(比如图中的 eosd 早就改名了)。所以这张图只能作为未来 EOS 发展方向的参考而已,目前的 EOS 还远没有这么复杂和完善。

了解系统架构之前我们先看看目前 EOS 系统的主要组成部分:

  • nodeos: EOS 系统的核心进程,也就是所谓的“节点”。运行时可以配置插件:

    • producer_plugin(见证人插件):见证人必须使用这个插件,普通节点不需要。

    • wallet_plugin(钱包插件):使用这个插件就可以省去 keosd 钱包工具。

    • wallet_api_plugin(钱包接口插件):给钱包插件提供接口。

    • chain_api_plugin(区块链接口插件):提供区块链数据接口。

    • http_plugin(http 插件):提供 http 接口。

    • account_history_api_plugin(账户历史接口):提供账户历史查询接口。

  • cleos:本地的命令行工具,通过命令行与真人用户交互,并与节点(nodeos)的 REST 接口通信。是用户或者开发者与节点进程交互的桥梁。

  • keosd:本地钱包工具。非节点用户存储钱包的进程,可以管理多个含有私钥的钱包并加密。

本地单节点测试系统

本地单节点的情况下,仅需要 nodeos 和 cleos,不需要 keosd,因为用节点的钱包插件管理私钥即可。这一个节点就是区块链的全部,所有的数据均储存在单一节点中。所以下图中的“BlockChian”只是一个概念,所有的出块工作全都在 nodeos 中搞定。

本地多节点测试系统

本地多节点测试系统就更接近真实的区块链网络了,只是运行在同一台计算机中。各个程序各司其职,keosd 管理私钥,cleos 连接用户与节点,nodeos 作为节点出块。


 

公共测试网络

公共测试网络的架构与即将上线的 EOS 主网基本相同,只是缺少了 100 个后备节点,有 21 个主节点。用户通过 cleos 连接到 nodeos , nodeos 再连接到区块链网络(其他nodeos)。

EOS 初期主网络

如果近期没有大的变化,EOS 即将上线的主网络就是 21主节点 + 100 后备节点的架构。

(图片来自或修改自 EOS 官方)

圆方圆区块链汇集大批区块链名师,采取导师值班制,为学员实时解决技术疑难。请关注圆方圆区块链知识星球与导师。(培训咨询请联系船长13826054890微信手机同号)

 

作者小笛 ,专注于 EOS 技术研究与区块链智能合约开发.是圆方圆区块链的导师,更多小笛老师的文章和视频请关注圆方圆链圈公众号。


猜你喜欢

转载自blog.51cto.com/13625500/2107531