博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【许晓笛】EOS 系统架构图解
阅读量:5812 次
发布时间:2019-06-18

本文共 1066 字,大约阅读时间需要 3 分钟。

其实没有那么复杂

相信关心 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:本地钱包工具。非节点用户存储钱包的进程,可以管理多个含有私钥的钱包并加密。

本地单节点测试系统

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

本地多节点测试系统

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

公共测试网络

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

EOS 初期主网络

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

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


相关文章和视频推荐

圆方圆学院汇集大批区块链名师,打造精品的区块链技术课程。 在各大平台都长期有优质免费公开课,欢迎报名收看。 公开课地址:

转载地址:http://mitbx.baihongyu.com/

你可能感兴趣的文章
RAC环境下抓取ID大于应用ID
查看>>
Python_openpyxl处理Excel表格
查看>>
字节,字符,Unicode及Web编码
查看>>
仿百度壁纸客户端(二)——主页自定义ViewPager广告定时轮播图
查看>>
web项目部署随笔
查看>>
HBase写性能优化
查看>>
Android 4.0 开发者指南(27) —— Resource Types - String
查看>>
《卸甲笔记》-PostgreSQL和Oracle的SQL差异分析之五:函数的差异(五)
查看>>
JAVA数组之选择排序算法
查看>>
setjmp与longjmp
查看>>
Xcode6中添加pch文件
查看>>
【Oracle】How to Rename or Move Datafiles and Logfiles 之二
查看>>
Struts 框架 之 文件上传下载案例
查看>>
Scalaz(36)- Free :实践-Free In Action - 实用体验
查看>>
IOS应用架构思考二(网络图片库)
查看>>
Java内存模型FAQ(七)同步会干些什么呢
查看>>
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
查看>>
Cocos2D中屏幕分辨率解释
查看>>
ORACLE的SPFILE与PFILE
查看>>
深入理解Java内存模型(四)——volatile
查看>>