整体结构

优质
小牛编辑
132浏览
2023-12-01

Hyperledger Fabric 在 1.0 中,架构已经解耦为三部分:

  • fabric-https://yeasy.gitbooks.io/hyperledger_code_fabric/content/peer:主要起到 https://yeasy.gitbooks.io/hyperledger_code_fabric/content/peer 作用,包括 endorser、committer 两种角色;
  • fabric-ca:即原先的 membersrvc,独立成一个新的项目。
  • fabric-https://yeasy.gitbooks.io/hyperledger_code_fabric/content/order:起到 https://yeasy.gitbooks.io/hyperledger_code_fabric/content/order 作用。

其中,fabric-https://yeasy.gitbooks.io/hyperledger_code_fabric/content/peer 和 fabric-https://yeasy.gitbooks.io/hyperledger_code_fabric/content/order 代码暂时都在 fabric 项目中,未来可能进一步拆分。

核心代码

fabric 核心源代码目前约为 117K 行,主要包括代码、工具、脚本等部分。

$ find fabric -name "*.go" -not -path "fabric/https://yeasy.gitbooks.io/hyperledger_code_fabric/content/vendor/*" | xargs cat | wc -l116826

源代码

实现 fabric 功能的核心代码,包括:

源码相关工具

一些辅助代码包,包括:

安装部署

包括:

其它工具

其他工具,包括:

配置、脚本和文档

除了些目录外,还包括一些说明文档、安装需求说明、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。

其它