博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
区块链教程Fabric1.0源代码分析Orderer localconfig
阅读量:6985 次
发布时间:2019-06-27

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

  兄弟连区块链教程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: #本地私钥文件路径,默认指向
/keystore KeyStore:FileLedger: #基于文件的账本的配置 Location: /var/hyperledger/production/orderer #存放区块文件的位置,一般为/var/hyperledger/production/orderer/目录 Prefix: hyperledger-fabric-ordererledger #如果不指定Location,则在临时目录下创建账本时使用的目录名称RAMLedger: #基于内存的账本最多保留的区块个数 HistorySize: 1000Kafka: #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

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

你可能感兴趣的文章
高德地图POI查找
查看>>
磁盘格式化
查看>>
Fedora 11 安装指南-12
查看>>
eclipse的安卓开发插件『ADT』在线安装不成功的解决方案
查看>>
刷屏的海底捞超级APP究竟是怎样与阿里云合作的
查看>>
k8s学习笔记之三:k8s快速入门
查看>>
SpringBoot慕课学习-SpringBoot开发常用技术整合
查看>>
C10K问题
查看>>
慕课网3-13编程练习:采用flex弹性布局制作页面主导航
查看>>
线程中死锁的demo
查看>>
canvas-7globleCompositeOperation.html
查看>>
英语发音规则---H字母
查看>>
UESTC 2014 Summer Training #11 Div.2
查看>>
1035. 插入与归并(25)
查看>>
Android组件化和插件化开发
查看>>
【java】 虹软ArcFace 2.0 人脸信息识别(年龄、性别)
查看>>
Java集合--Map总结
查看>>
【转】Netty系列之Netty 服务端创建
查看>>
alpha冲刺9
查看>>
spring学习之spring 插件 for eclipse
查看>>