内容简介:区块链教程Fabric1.0源代码分析Orderer localconfig,2018年下半年,区块链行业正逐渐褪去发展之初的浮躁、回归理性,表面上看相关人才需求与身价似乎正在回落。但事实上,正是初期泡沫的渐退,让人们更多的关注点放在了区块链真正的技术之上。
区块链教程Fabric1.0源代码分析Orderer localconfig,2018年下半年,区块链行业正逐渐褪去发展之初的浮躁、回归理性,表面上看相关人才需求与身价似乎正在回落。但事实上,正是初期泡沫的渐退,让人们更多的关注点放在了区块链真正的技术之上。
Fabric 1.0源代码笔记 之 Orderer #localconfig(Orderer配置文件定义)
1、配置文件定义
General: #通用配置 LedgerType: file #账本类型,包括ram、json和file,其中ram保存在内存中,生产环境推荐使用file ListenAddress: 127.0.0.1 #服务绑定的监听地址 ListenPort: 7050 #服务绑定的监听端口 TLS: #启用TLS时的相关配置 Enabled: false #是否启用TLS PrivateKey: tls/server.key #Orderer签名私钥 Certificate: tls/server.crt #Orderer身份证书 RootCAs: #信任的根证书 - tls/ca.crt ClientAuthEnabled: false #是否对客户端也进行认证 ClientRootCAs: LogLevel: info #日志级别 LogFormat: '%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}' GenesisMethod: provisional #初始区块的提供方式,支持provisional或file,前者基于GenesisProfile指定的configtx.yaml中Profile生成,后者基于指定的初始区块文件 GenesisProfile: SampleInsecureSolo #provisional方式生成初始区块时采用的Profile GenesisFile: genesisblock #使用现成的初始区块文件时,文件的路径 LocalMSPDir: msp #本地msp文件的路径 LocalMSPID: DEFAULT #MSP的ID Profile: #是否启用go profiling Enabled: false Address: 0.0.0.0:6060 BCCSP: #密码库机制等,可以为SW(软件实现)或PKCS11(硬件安全模块) Default: SW SW: Hash: SHA2 #哈希算法类型 Security: 256 FileKeyStore: #本地私钥文件路径,默认指向<mspConfigPath>/keystore KeyStore: FileLedger: #基于文件的账本的配置 Location: /var/hyperledger/production/orderer #存放区块文件的位置,一般为/var/hyperledger/production/orderer/目录 Prefix: hyperledger-fabric-ordererledger #如果不指定Location,则在临时目录下创建账本时使用的目录名称 RAMLedger: #基于内存的账本最多保留的区块个数 HistorySize: 1000 Kafka: #Orderer使用Kafka集群作为后端时,Kafka的配置 Retry: #Kafka未就绪时Orderer的重试配置,orderer会利用sarama客户端为channel创建一个producer、一个consumer,分别向Kafka写和读数据 ShortInterval: 5s #操作失败后的快速重试阶段的间隔 ShortTotal: 10m #快速重试阶段最多重试多长时间 LongInterval: 5m #快速重试阶段仍然失败后进入慢重试阶段,慢重试阶段的时间间隔 LongTotal: 12h #慢重试阶段最多重试多长时间 NetworkTimeouts: #sarama网络超时时间 DialTimeout: 10s ReadTimeout: 10s WriteTimeout: 10s Metadata: #Kafka集群leader选举中的metadata请求参数 RetryBackoff: 250ms RetryMax: 3 Producer: #发送消息到Kafka集群的超时 RetryBackoff: 100ms RetryMax: 3 Consumer: #从Kafka集群读取消息的超时 RetryBackoff: 2s Verbose: false #是否开启Kafka客户端的调试日志 TLS: #Kafka集群的连接启用TLS时的相关配置 Enabled: false #是否启用TLS,默认不开启 PrivateKey: #Orderer证明身份用的签名私钥 Certificate: #Kafka身份证书 RootCAs: #验证Kafka证书时的CA证书 Version: #Kafka版本号 #代码在/etc/hyperledger/fabric/orderer.yaml
2、TopLevel结构体定义
type TopLevel struct { General General FileLedger FileLedger RAMLedger RAMLedger Kafka Kafka } type General struct { LedgerType string ListenAddress string ListenPort uint16 TLS TLS GenesisMethod string GenesisProfile string GenesisFile string Profile Profile LogLevel string LogFormat string LocalMSPDir string LocalMSPID string BCCSP *bccsp.FactoryOpts } type TLS struct { Enabled bool PrivateKey string Certificate string RootCAs []string ClientAuthEnabled bool ClientRootCAs []string } type Profile struct { Enabled bool Address string } type FileLedger struct { Location string Prefix string } type RAMLedger struct { HistorySize uint } type Kafka struct { Retry Retry Verbose bool Version sarama.KafkaVersion TLS TLS } type Retry struct { ShortInterval time.Duration ShortTotal time.Duration LongInterval time.Duration LongTotal time.Duration NetworkTimeouts NetworkTimeouts Metadata Metadata Producer Producer Consumer Consumer } type NetworkTimeouts struct { DialTimeout time.Duration ReadTimeout time.Duration WriteTimeout time.Duration } type Metadata struct { RetryMax int RetryBackoff time.Duration } type Producer struct { RetryMax int RetryBackoff time.Duration } type Consumer struct { RetryBackoff time.Duration } //代码在orderer/localconfig/config.go
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 区块链教程Fabric1.0源代码分析blockfile区块文件存储2
- 兄弟连区块链教程Fabric1.0源代码分析blockfile区块文件存储一
- Fabric 1.0源代码分析(2) blockfile(区块文件存储)
- 区块链教程Fabric1.0源代码分析configtx#genesis
- 区块链教程Fabric1.0源代码分析Ledger(账本)二
- 区块链教程Fabric1.0源代码分析Ledger(账本)一
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Web开发权威指南
[美] Chris Aquino,、[美] Todd Gandee / 奇舞团 / 人民邮电出版社 / 2017-9 / 99.00元
本书在知名培训机构Big Nerd Ranch 培训教材的基础上编写而成,囊括了JavaScript、HTML5、CSS3等现代前端开发人员急需的技术关键点,包括响应式UI、访问远程Web 服务、用Ember.js 构建应用,等等。此外,还会介绍如何使用前沿开发工具来调试和测试代码,并且充分利用Node.js 和各种开源的npm 模块的强大功能来进行开发。 全书分四部分,每部分独立完成一个项......一起来看看 《Web开发权威指南》 这本书的介绍吧!