Hyperledger Fabric1.0 整体结构
整体结构
Hyperledger Fabric 在 1.0 中,架构已经解耦为三部分:
- fabric-peer:主要起到 peer 作用,包括 endorser、committer 两种角色;
- fabric-ca:即原先的 membersrvc,独立成一个新的项目。
- fabric-order:起到 order 作用。
其中,fabric-peer 和 fabric-order 代码暂时都在 fabric 项目中,未来可能进一步拆分。
核心代码
fabric 项目中主要包括代码、工具、脚本等部分,核心源代码目前约为 430 个文件,80K 行。
$ cd fabric
$ find bccsp common core events gossip msp orderer peer protos \
-not -path "*/vendor/*" \
-name "*.go" \
-not -name "*_test.go" \
| wc -l $ find bccsp common core events gossip msp orderer peer protos \
-not -path "*/vendor/*" \
-name "*.go" \
-not -name "*_test.go" \
| xargs cat | wc -l
源代码
实现 fabric 功能的核心代码,包括:
- bccsp 包:实现对加解密算法和机制的支持。
- common 包:一些通用的模块;
- core 包:大部分核心实现代码都在本包下。其它包的代码封装上层接口,最终调用本包内代码;
- events 包:支持 event 框架;
- examples 包:包括一些示例的 chaincode 代码;
- gossip 包:实现 gossip 协议;
- msp 包:Member Service Provider 包;
- order 包:order 服务相关的入口和框架代码;
- peer 包:peer 的入口和框架代码;
- protos 包:包括各种协议和消息的 protobuf 定义文件和生成的 go 文件。
源码相关工具
一些辅助代码包,包括:
安装部署
包括:
其它工具
其他工具,包括:
配置、脚本和文档
除了些目录外,还包括一些说明文档、安装需求说明、License 信息文件等。
Docker 相关文件
- .baseimage-release:生成 baseimage 时候的版本号。
- .dockerignore:生成 Docker 镜像时忽略一些目录,包括 .git 目录。
git 相关文件
- .gitattributes:git 代码管理时候的属性文件,带有不同类型文件中换行符的规则,默认都为 linux 格式,即
\n。 - .gitignore:git 代码管理时候忽略的文件和目录,包括 build 和 bin 等中间生成路径。
- .gitreview:使用 git review 时候的配置,带有项目的仓库地址信息。
- README.md:项目的说明文件,包括一些有用的链接等。
travis 相关文件
- .travis.yml:travis 配置文件,目前是使用 golang 1.6 编辑,运行了三种测试:unit-test、behave、node-sdk-unit-tests。
其它
- LICENSE:Apache 2 许可文件。
- docker-env.mk:被 Makefile 引用,生成 Docker 镜像时的环节变量。
- Makefile:执行测试、格式检查、安装依赖、生成镜像等操作。
- mkdocs.yml:生成 http://hyperledger-fabric.readthedocs.io 在线文档的配置文件。
- TravisCI_Readme.md
来源:https://github.com/yeasy/hyperledger_code_fabric/blob/master/overview.md
Hyperledger Fabric1.0 整体结构的更多相关文章
- Hyperledger Fabric1.0.0搭建
系统环境: 阿里云新装的Centos7.2 yum -y update yum install -y openssl openssl-devel gcc gcc-c++ zlib zlib-devel ...
- Hyperledger Fabric1.0环境搭建
一.准备CentOS系统,本文使用的是CentOS7.0 二.安装Docker 执行命令 yum -y install docker 验证是否安装成功 docker --version 三.安装Doc ...
- 安装部署hyperledger fabric1.0
安装环境 CentOS7 1.安装Docker Docker Hub在国外,安装会较慢,可用国内镜像DaoCloud.可执行以下命令安装Docker. sudo yum install -y yum- ...
- Hyperledger Fabric1.4 安装
Hyperledger Fabric 依赖的软件版本查看官方 github 地址 https://github.com/hyperledger/fabric 下文件 /docs/source/prer ...
- 006-基于hyperledger fabric1.4( 官方文档)编写第一个应用【外部nodejs调用】
一.概述 官方原文地址 Writing Your First Application如果对fabric网络的基本运行机制不熟悉的话,请看这里. 注意:本教程是对fabric应用以及如何使用智能合约的简 ...
- 在Ubuntu中部署并测试HyperLedger Fabric 0.6
最近开始研究区块链,对这个新兴的技术有了基本概念上的了解,所以打算基于一个开源项目做做实验.如果是做数字货币,那么比特币的源代码是最好的了,不过这算是区块链1.0吧,已经有很多改进的竞争币和山寨币出来 ...
- Hyperledger fablic 0.6 在centos7环境下的安装与部署
原文:http://blog.csdn.net/zhaoliang1131/article/details/54617274 Hyperledger Fabric超级账本 项目约定共同遵守的 基本原则 ...
- Hyperledger Fabric1.4的多机部署
之前的文章深入解析Hyperledger Fabric启动的全过程主要讲解了Fabric的网络搭建,以及启动的整体流程,但是都是通过单机完成的.而区块链本身就是去中心化的,所以最终还是要完成Fabri ...
- Hyperledger Fabric1.4 手动搭建过程
1.生成证书: #路径需要更改为自己的路径 cd ~/go/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network ...
随机推荐
- Elasticsearch.net项目
Elasticsearch.net项目实战 https://www.cnblogs.com/lucky_hu/p/9746736.html elasticsearch.net项目实战 @智客幸达 目录 ...
- 【spring源码学习】springMVC之映射,拦截器解析,请求数据注入解析,DispatcherServlet执行过程
[一]springMVC之url和bean映射原理和源码解析 映射基本过程 (1)springMVC配置映射,需要在xml配置文件中配置<mvc:annotation-driven > ...
- UVA11178 Morley's Theorem
题意 PDF 分析 就按题意模拟即可,注意到对称性,只需要知道如何求其中一个. 注意A.B.C按逆时针排列,利用这个性质可以避免旋转时分类讨论. 时间复杂度\(O(T)\) 代码 #include&l ...
- XML的应用 ---- 从一个范例看xml数据、xsd验证、xslt样式
从一个范例看XML的应用 引言 如果你已经看了Asp.Net Ajax的两种基本开发模式 这篇文章,你可能很快会发现这样一个问题:在那篇文章的方式2中,客户端仅仅是发送了页面上一个文本框的内容到服务端 ...
- Quartz数据库脚本
QRTZ_CALENDARS 以 Blob 类型存储 Quartz 的 Calendar 信息 QRTZ_CRON_TRIGGERS 存储 Cron Trigger,包括 Cron表达式和时区信息 ...
- Ctrl+H 浪潮Raid配置文档
说明 本手册适用于LSI芯片Raid卡 包括但不限于Inspur 2008/2108 Raid卡.LSI 9240/9260/9261/9271 等Raid卡. 不同型号的Raid卡在某些功能上的支持 ...
- yii2史上最简单式安装教程,没有之一(转)
测试说明:按照文章下载文件,虽然是tgz文件,用winrar解压,在CMD中运行init.bat文件. 既然是安装Yii,我们先去官网下载一份Yii的高级模版,什么,你说打开页面乱七八糟的英文字母你看 ...
- Spring、Spring MVC、MyBatis整合文件配置详解2
使用SSM框架做了几个小项目了,感觉还不错是时候总结一下了.先总结一下SSM整合的文件配置.其实具体的用法最好还是看官方文档. Spring:http://spring.io/docs MyBatis ...
- phpcms文档
http://www.phpcms.cn/doc/PHPCMSDocumentor/cache_module.html http://www.cnblogs.com/Braveliu/p/507493 ...
- 【转】 Pro Android学习笔记(九七):BroadcastReceiver(1):基础小例子
目录(?)[-] 基础小例子 发送Broadcast intent 运行情况 应用间的广播 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog ...