真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

HyperLegerFabricSDK開(kāi)發(fā)(二)——FabricSDK配置

HyperLeger Fabric SDK開(kāi)發(fā)(二)——Fabric SDK配置

一、Fabric SDK配置

Fabric區(qū)塊鏈網(wǎng)絡(luò)應(yīng)用程序需要大量的參數(shù),用于連接Fabric區(qū)塊鏈網(wǎng)絡(luò)。通常將Fabric區(qū)塊鏈網(wǎng)絡(luò)應(yīng)用程序所需的參數(shù)放到一個(gè)配置文件進(jìn)行管理,配置文件定義Fabric SDK Go的配置和用戶自定義參數(shù),指定了連接Fabric區(qū)塊鏈網(wǎng)絡(luò)所需的全部信息,例如Fabric區(qū)塊鏈網(wǎng)絡(luò)組件的主機(jī)名和端口等。Fabric SDK GO為應(yīng)用程序提供的配置文件通常使用yaml文件格式編寫(xiě),并命名為config.yaml,配置文件會(huì)在應(yīng)用程序代碼中被讀取。
Fabric SDK Go版本提供了config.yaml模板,開(kāi)發(fā)者可以參考
fabric-sdk-go/pkg/core/config/testdata/template/config.yaml,也可以根據(jù)fabric-sdk-go/test/fixtures/config/config_e2e.yaml實(shí)例進(jìn)行改寫(xiě)。

為渠縣等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及渠縣網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、渠縣網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

二、version定義

version用于定義config.yaml文件內(nèi)容的版本,F(xiàn)abric SDK Go會(huì)使用version匹配相應(yīng)的解析規(guī)則。
version: 1.0.0

三、channels定義

channels部分描述已經(jīng)存在的通道信息,每個(gè)通道包含哪些orderer、peer?。
peer部分可以定義peer節(jié)點(diǎn)的角色屬性,角色如下:
endorsingPeer:可選。peer節(jié)點(diǎn)節(jié)點(diǎn)必須安裝鏈碼。peer節(jié)點(diǎn)是否會(huì)被發(fā)送交易提案進(jìn)行背書(shū)。應(yīng)用程序也可以使用本屬性來(lái)決定發(fā)送鏈碼安裝請(qǐng)求到哪個(gè)peer節(jié)點(diǎn)。默認(rèn)值:true。
chaincodeQuery:可選。peer節(jié)點(diǎn)必須安裝鏈碼。peer節(jié)點(diǎn)是否會(huì)被發(fā)送交易提案只進(jìn)行查詢。應(yīng)用程序還可以使用本屬性來(lái)決定發(fā)送鏈碼安裝的請(qǐng)求到哪個(gè)peer節(jié)點(diǎn)。默認(rèn)值:true。
ledgerQuery:可選。是否可以向peer節(jié)點(diǎn)發(fā)送不會(huì)進(jìn)行鏈碼查詢的提案,如queryBlock(),queryTransaction()等。默認(rèn)值:true。
eventSource:可選。peer節(jié)點(diǎn)是否為SDK事件監(jiān)聽(tīng)器注冊(cè)的目標(biāo),所有的peer節(jié)點(diǎn)都可以生產(chǎn)事件,但通常只需要連接一個(gè)對(duì)事件進(jìn)行監(jiān)聽(tīng)。默認(rèn)值:true。

# 如果應(yīng)用程序創(chuàng)建了通道,不需要本部分
channels:
  # 如果沒(méi)有定義channel配置或是定義的channel沒(méi)有信息,使用默認(rèn)channel
  # 如果channel沒(méi)有定義peers,使用默認(rèn)channel的peers
  # 如果channel沒(méi)有定義orderes,使用默認(rèn)channel的orderes
  # 如果channel沒(méi)有定義背書(shū)策略,使用默認(rèn)channel的背書(shū)策略
  # 如果channel定義了背書(shū)策略,但某些背書(shū)策略缺失,缺失的背書(shū)策略會(huì)被默認(rèn)channel填充
  _default:
    # 可選,參與組織的peers列表
    peers:
      peer1.org1.example.com:
        endorsingPeer: true
        chaincodeQuery: true
        ledgerQuery: true
        eventSource: true

    # 可選,應(yīng)用程序使用下列選項(xiàng)執(zhí)行通道操作,如獲取通道配置
    policies:
      #可選,獲取通道配置區(qū)塊
      queryChannelConfig:
        #可選,成功響應(yīng)節(jié)點(diǎn)的最小數(shù)量
        minResponses: 1
        # 可選
        maxTargets: 1
        # 可選,查詢配置區(qū)塊的重試選項(xiàng)
        retryOpts:
          # 可選,重試次數(shù)
          attempts: 5
          # 可選, 第一次重試的后退間隔
          initialBackoff: 500ms
          # 可選, 重試的最大后退間隔
          maxBackoff: 5s
          backoffFactor: 2.0
      # 可選,獲取發(fā)現(xiàn)信息選項(xiàng)
      discovery:
        maxTargets: 2
        # 重試選項(xiàng)
        retryOpts:
          # 可選,重試次數(shù)
          attempts: 4
          initialBackoff: 500ms
          maxBackoff: 5s
          backoffFactor: 2.0

      # 可選,事件服務(wù)選項(xiàng)
      eventService:
        # 可選 resolverStrategy指定連接到peer節(jié)點(diǎn)時(shí)選擇peer節(jié)點(diǎn)的決策策略
        # 可選值:PreferOrg(默認(rèn)), MinBlockHeight, Balanced
        # PreferOrg:
        #   基于區(qū)塊高度滯后閥值決定哪些peer節(jié)點(diǎn)是合適的, 雖然會(huì)在當(dāng)前組織中優(yōu)先選擇peer節(jié)點(diǎn)
        #   如果當(dāng)前組織中沒(méi)有合適的peer節(jié)點(diǎn),會(huì)從其它組織中選取
        # MinBlockHeight:
        #   根據(jù)區(qū)塊高度滯后閥值選擇最好的peer節(jié)點(diǎn),
        #   所有peer節(jié)點(diǎn)的最大區(qū)塊高度是確定的,區(qū)塊高度小于最大區(qū)塊高度但在滯后閥值范圍內(nèi)的peer節(jié)點(diǎn)會(huì)被加載,
        #   其它peer節(jié)點(diǎn)不會(huì)被考慮。
        # Balanced:
        #   使用配置的balancer選擇peer節(jié)點(diǎn)
        resolverStrategy: PreferOrg

        # 可選 balancer是選擇連接到peer節(jié)點(diǎn)的負(fù)載均衡器
        # 可選值: Random (default), RoundRobin
        balancer: Random

        # 可選,blockHeightLagThreshold設(shè)置區(qū)塊高度滯后閥值,用于選擇連接到的peer節(jié)點(diǎn)
        # 如果一個(gè)peer節(jié)點(diǎn)滯后于最新的peer節(jié)點(diǎn)給定的區(qū)塊數(shù),會(huì)被排除在選擇之外
        # 注意:當(dāng)minBlockHeightResolverMode設(shè)置為ResolveByThreshold時(shí),本參數(shù)才可用
        # 默認(rèn): 5
        blockHeightLagThreshold: 5

        # 可選,reconnectBlockHeightLagThreshold - 如果peer節(jié)點(diǎn)的區(qū)塊高度落后于指定的區(qū)塊數(shù)量,
        # 事件客戶端會(huì)從peer節(jié)點(diǎn)斷開(kāi),重新連接到一個(gè)性能更好的peer節(jié)點(diǎn)
        # 如果peerMonitor設(shè)置為啟用(默認(rèn)),本參數(shù)才可用
        # 默認(rèn)值: 10
        # 注意:設(shè)置值太低會(huì)導(dǎo)致事件客戶端頻繁斷開(kāi)或重連,影響性能
        reconnectBlockHeightLagThreshold: 8

        # 可選, peerMonitorPeriod是事件客戶端從連接節(jié)點(diǎn)斷開(kāi)重新連接到另外一個(gè)節(jié)點(diǎn)的時(shí)間
        # 默認(rèn): 對(duì)于Balanced resolverStrategy禁用,為0; 對(duì)于PreferOrg和MinBlockHeight為5s
        peerMonitorPeriod: 6s

  #如果_default沒(méi)有定義,必選;如果_default已經(jīng)定義,可選。
  # 通道名稱
  assetchannel:
    # 如果_default peers沒(méi)有定義,必選;如果_default peers已經(jīng)定義,可選。
    # 參與組織的peer節(jié)點(diǎn)列表
    peers:
      peer0.org1.example.com:
        # 可選。peer節(jié)點(diǎn)是否會(huì)被發(fā)送交易提議只進(jìn)行查詢。peer節(jié)點(diǎn)必須安裝鏈碼。
        # 應(yīng)用程序還可以使用本屬性來(lái)決定發(fā)送鏈碼安裝的請(qǐng)求到哪個(gè)peer節(jié)點(diǎn)。默認(rèn)值:true
        endorsingPeer: true

        # 可選。peer節(jié)點(diǎn)必須安裝鏈碼。peer節(jié)點(diǎn)是否會(huì)被發(fā)送交易提案只進(jìn)行查詢。
        # 應(yīng)用程序還可以使用本屬性來(lái)決定發(fā)送鏈碼安裝的請(qǐng)求到哪個(gè)peer節(jié)點(diǎn)。默認(rèn)值:true
        chaincodeQuery: true

        # 可選。是否可以向peer節(jié)點(diǎn)發(fā)送不會(huì)進(jìn)行鏈碼查詢的提案,如queryBlock(),
        # queryTransaction()等。默認(rèn)值:true。
        ledgerQuery: true

        # 可選。peer節(jié)點(diǎn)是否為SDK事件監(jiān)聽(tīng)器注冊(cè)的目標(biāo),所有的peer節(jié)點(diǎn)都可以生產(chǎn)事件,
        # 但通常只需要連接一個(gè)對(duì)事件進(jìn)行監(jiān)聽(tīng)。默認(rèn)值:true。
        eventSource: true

四、organizations定義

organizations描述peer節(jié)點(diǎn)所屬的組織(org),證書(shū)頒發(fā)機(jī)構(gòu),以及組織的MSP ID。

# Fabric區(qū)塊鏈網(wǎng)絡(luò)中參與的組織列表
organizations:
  org1:
    mspid: Org1MSP
    # 組織的MSP存儲(chǔ)位置,絕對(duì)路徑或相對(duì)cryptoconfig的路徑
    cryptoPath:  peerOrganizations/org1.example.com/users/{username}@org1.example.com/msp
    peers:
      - peer0.org1.example.com
      - peer1.org1.example.com
    # 可選,證書(shū)頒發(fā)機(jī)構(gòu)簽發(fā)×××明,F(xiàn)abric-CA是一個(gè)特殊的證書(shū)管理機(jī)構(gòu),提供REST API支持動(dòng)態(tài)證書(shū)管理,如登記、撤銷、重新登記
    # 下列部分只為Fabric-CA服務(wù)器設(shè)置
    certificateAuthorities:
      - ca.org1.example.com

  org2:
    mspid: Org2MSP

    # 組織的MSP存儲(chǔ)位置,相對(duì)于cryptoconfig的相對(duì)位置或絕對(duì)路徑
    cryptoPath:  peerOrganizations/org2.example.com/users/{username}@org2.example.com/msp
    peers:
      - peer0.org2.example.com
    certificateAuthorities:
      - ca.org2.example.com

  # Orderer組織名稱
  ordererorg:
      # 組織的MSPID
      mspID: OrdererMSP
      # 加載用戶需要的密鑰和證書(shū),絕對(duì)路徑或相對(duì)路徑
      cryptoPath: ordererOrganizations/example.com/users/{username}@example.com/msp

五、orderers定義

orderers必須指定要連接的Hyperledger Fabric區(qū)塊鏈網(wǎng)絡(luò)中所有orderder節(jié)點(diǎn)的主機(jī)名和端口。orderers對(duì)象可以包含多個(gè)orderder節(jié)點(diǎn)。

# 發(fā)送交易請(qǐng)求或通道創(chuàng)建、更新請(qǐng)求到的orderers列表
# 如果定義了超過(guò)一個(gè)orderer,SDK使用哪一個(gè)orderer由代碼實(shí)現(xiàn)時(shí)指定
orderers:
  # orderer節(jié)點(diǎn),可以定義多個(gè)
  orderer.example.com:
    url: orderer.example.com:7050
    # 以下屬性由gRPC庫(kù)定義,會(huì)被傳遞給gRPC客戶端構(gòu)造函數(shù)
    grpcOptions:
      ssl-target-name-override: orderer.example.com
      # 下列參數(shù)用于設(shè)置服務(wù)器上的keepalive策略,不兼容的設(shè)置會(huì)導(dǎo)致連接關(guān)閉
      # 當(dāng)keep-alive-time被設(shè)置為0或小于激活客戶端的參數(shù),下列參數(shù)失效
      keep-alive-time: 0s
      keep-alive-timeout: 20s
      keep-alive-permit: false
      fail-fast: false
      allow-insecure: false

    tlsCACerts:
      # 證書(shū)的絕對(duì)路徑
      path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem

六、peers定義

peers必須指定Hyperledger Fabric區(qū)塊鏈網(wǎng)絡(luò)中所有peer節(jié)點(diǎn)的主機(jī)名和端口,可能會(huì)在其它地方引用,如channels,organizations等部分。

# peers節(jié)點(diǎn)列表
peers:
  # peer節(jié)點(diǎn)定義,可以定義多個(gè)
  peer0.org1.example.com:
    # URL用于發(fā)送背書(shū)和查詢請(qǐng)求
    url: peer0.org1.example.com:7051

    grpcOptions:
      ssl-target-name-override: peer0.org1.example.com
      keep-alive-time: 0s
      keep-alive-timeout: 20s
      keep-alive-permit: false
      fail-fast: false
      allow-insecure: false

    tlsCACerts:
      # 證書(shū)的絕對(duì)路徑
      path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem

七、certificateAuthorities定義

certificateAuthorities必須在Hyperledger Fabric區(qū)塊鏈網(wǎng)絡(luò)中指定證書(shū)頒發(fā)機(jī)構(gòu)(CA)的主機(jī)名和端口,以便用于注冊(cè)現(xiàn)有用戶和注冊(cè)新用戶。

# Fabric-CA是Hyperledger Fabric提供了特殊的證書(shū)頒發(fā)機(jī)構(gòu),可以通過(guò)REST API管理證書(shū)。
# 應(yīng)用程序可以選擇使用一個(gè)標(biāo)準(zhǔn)的證書(shū)頒發(fā)機(jī)構(gòu)代替Fabric-CA,此時(shí)本部分不需要指定
certificateAuthorities:
  # CA機(jī)構(gòu),可以定義多個(gè)
  ca.org1.example.com:
    url: https://ca.org1.example.com:7054
    tlsCACerts:
      # Comma-Separated list of paths
      path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem
      # 客戶端和Fabric CA進(jìn)行SSL握手的密鑰和證書(shū)
      client:
        key:
          path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/tls.example.com/users/User1@tls.example.com/tls/client.key
        cert:
          path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/tls.example.com/users/User1@tls.example.com/tls/client.crt

    # Fabric-CA支持通過(guò)REST API進(jìn)行動(dòng)態(tài)用戶注冊(cè)
    registrar:
      enrollId: admin
      enrollSecret: adminpw
    # 可選,CA機(jī)構(gòu)名稱
    caName: ca.org1.example.com

八、client

client部分必需定義,客戶端應(yīng)用程序代表誰(shuí)來(lái)和Fabric區(qū)塊鏈網(wǎng)絡(luò)來(lái)交互,可以定義超時(shí)選項(xiàng)。

#客戶端定義
client:
  # 客戶端所屬的組織,必須是organizations定義的組織
  organization: org1
  #定義日志服務(wù)
  logging:
    level: debug #debug級(jí)別

  # peer、事件服務(wù)、orderer超時(shí)的全局配置
  # 本部分如果忽略,使用下列的值作為默認(rèn)值
  peer:
    timeout:
      connection: 10s
      response: 180s
      discovery:
        greylistExpiry: 10s
  eventService:
    timeout:
      registrationResponse: 15s
  orderer:
    timeout:
      connection: 15s
      response: 15s
  global:
    timeout:
      query: 180s
      execute: 180s
      resmgmt: 180s
    cache:
      connectionIdle: 30s
      eventServiceIdle: 2m
      channelConfig: 30m
      channelMembership: 30s
      discovery: 10s
      selection: 10m

  # MSP根目錄
  cryptoconfig:
    path: ${GOPATH}/src/github.com/hyperledger/fabric/AssetExchange/deploy/crypto-config

  # 某些SDK支持插件化的KV數(shù)據(jù)庫(kù), 通過(guò)指定credentialStore屬性實(shí)現(xiàn)
  credentialStore:
    # 可選,用于用戶證書(shū)材料存儲(chǔ),如果所有的證書(shū)材料被嵌入到配置文件,則不需要
    path: "/tmp/state-store"

    # 可選,指定Go SDK實(shí)現(xiàn)的CryptoSuite實(shí)現(xiàn)
    cryptoStore:
      # 指定用于加密密鑰存儲(chǔ)的底層KV數(shù)據(jù)庫(kù)
      path: /tmp/msp

   # 客戶端的BCCSP模塊配置
  BCCSP:
    security:
     enabled: true
     default:
      provider: "SW"
     hashAlgorithm: "SHA2"
     softVerify: true
     level: 256

  tlsCerts:
    # 可選,當(dāng)連接到peers,orderes時(shí)使用系統(tǒng)證書(shū)池,默認(rèn)為false
    systemCertPool: true

    # 可選,客戶端和peers與orderes進(jìn)行TLS握手的密鑰和證書(shū)
    client:
      key:
        path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/tls.example.com/users/User1@tls.example.com/tls/client.key
      cert:
        path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/tls.example.com/users/User1@tls.example.com/tls/client.crt

九、config.yaml示例

資產(chǎn)交易平臺(tái)應(yīng)用的配置文件如下:

# Copyright SecureKey Technologies Inc. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
#
# The network connection profile provides client applications the information about the target
# blockchain network that are necessary for the applications to interact with it. These are all
# knowledge that must be acquired from out-of-band sources. This file provides such a source.

name: "assetchannel"

#
# Describe what the target network is/does.
#
description: "asset exchange network"

#指定版本
version: 1.0.0

#客戶端定義
client:
  # 客戶端所屬的組織,必須是organizations定義的組織
  organization: org1
  #定義日志服務(wù)
  logging:
    level: debug #debug級(jí)別

  # MSP根目錄
  cryptoconfig:
    path: ${GOPATH}/src/github.com/hyperledger/fabric/AssetExchange/deploy/crypto-config

  # 某些SDK支持插件化的KV數(shù)據(jù)庫(kù), 通過(guò)指定credentialStore屬性實(shí)現(xiàn)
  credentialStore:
    # 可選,用于用戶證書(shū)材料存儲(chǔ),如果所有的證書(shū)材料被嵌入到配置文件,則不需要
    path: "/tmp/state-store"

    # 可選,指定Go SDK實(shí)現(xiàn)的CryptoSuite實(shí)現(xiàn)
    cryptoStore:
      # 指定用于加密密鑰存儲(chǔ)的底層KV數(shù)據(jù)庫(kù)
      path: /tmp/msp

   # 客戶端的BCCSP模塊配置
  BCCSP:
    security:
     enabled: true
     default:
      provider: "SW"
     hashAlgorithm: "SHA2"
     softVerify: true
     level: 256

  tlsCerts:
    # 可選,當(dāng)連接到peers,orderes時(shí)使用系統(tǒng)證書(shū)池,默認(rèn)為false
    systemCertPool: true

    # 可選,客戶端和peers與orderes進(jìn)行TLS握手的密鑰和證書(shū)
    client:
      key:
        # path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/tls.example.com/users/User1@tls.example.com/tls/client.key
      cert:
        #path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/tls.example.com/users/User1@tls.example.com/tls/client.crt

# 如果應(yīng)用程序創(chuàng)建了通道,不需要本部分
channels:
  # 如果沒(méi)有定義channel配置或是定義的channel沒(méi)有信息,使用默認(rèn)channel
  # 如果channel沒(méi)有定義peers,使用默認(rèn)channel的peers
  # 如果channel沒(méi)有定義orderes,使用默認(rèn)channel的orderes
  # 如果channel沒(méi)有定義背書(shū)策略,使用默認(rèn)channel的背書(shū)策略
  # 如果channel定義了背書(shū)策略,但某些背書(shū)策略缺失,缺失的背書(shū)策略會(huì)被默認(rèn)channel填充

  #如果_default沒(méi)有定義,必選;如果_default已經(jīng)定義,可選。
  # 通道名稱
  assetchannel:
    # 如果_default peers沒(méi)有定義,必選;如果_default peers已經(jīng)定義,可選。
    # 參與組織的peer節(jié)點(diǎn)列表
    peers:
      peer0.org1.example.com:
        # 可選。peer節(jié)點(diǎn)是否會(huì)被發(fā)送交易提議只進(jìn)行查詢。peer節(jié)點(diǎn)必須安裝鏈碼。
        # 應(yīng)用程序還可以使用本屬性來(lái)決定發(fā)送鏈碼安裝的請(qǐng)求到哪個(gè)peer節(jié)點(diǎn)。默認(rèn)值:true
        endorsingPeer: true

        # 可選。peer節(jié)點(diǎn)必須安裝鏈碼。peer節(jié)點(diǎn)是否會(huì)被發(fā)送交易提案只進(jìn)行查詢。
        # 應(yīng)用程序還可以使用本屬性來(lái)決定發(fā)送鏈碼安裝的請(qǐng)求到哪個(gè)peer節(jié)點(diǎn)。默認(rèn)值:true
        chaincodeQuery: true

        # 可選。是否可以向peer節(jié)點(diǎn)發(fā)送不會(huì)進(jìn)行鏈碼查詢的提案,如queryBlock(),
        # queryTransaction()等。默認(rèn)值:true。
        ledgerQuery: true

        # 可選。peer節(jié)點(diǎn)是否為SDK事件監(jiān)聽(tīng)器注冊(cè)的目標(biāo),所有的peer節(jié)點(diǎn)都可以生產(chǎn)事件,
        # 但通常只需要連接一個(gè)對(duì)事件進(jìn)行監(jiān)聽(tīng)。默認(rèn)值:true。
        eventSource: true
        # 可選,應(yīng)用程序使用下列選項(xiàng)執(zhí)行通道操作,如獲取通道配置
    policies:
      #可選,獲取通道配置區(qū)塊
      queryChannelConfig:
        #可選,成功響應(yīng)節(jié)點(diǎn)的最小數(shù)量
        minResponses: 1
        # 可選
        maxTargets: 1
        # 可選,查詢配置區(qū)塊的重試選項(xiàng)
        retryOpts:
          # 可選,重試次數(shù)
          attempts: 5
          # 可選, 第一次重試的后退間隔
          initialBackoff: 500ms
          # 可選, 重試的最大后退間隔
          maxBackoff: 5s
          backoffFactor: 2.0

# Fabric區(qū)塊鏈網(wǎng)絡(luò)中參與的組織列表
organizations:
  org1:
    mspid: Org1MSP
    # 組織的MSP存儲(chǔ)位置,絕對(duì)路徑或相對(duì)cryptoconfig的路徑
    cryptoPath:  peerOrganizations/org1.example.com/users/{username}@org1.example.com/msp
    peers:
      - peer0.org1.example.com
      - peer1.org1.example.com
    # 可選,證書(shū)頒發(fā)機(jī)構(gòu)簽發(fā)×××明,F(xiàn)abric-CA是一個(gè)特殊的證書(shū)管理機(jī)構(gòu),提供REST API支持動(dòng)態(tài)證書(shū)管理,如登記、撤銷、重新登記
    # 下列部分只為Fabric-CA服務(wù)器設(shè)置
    certificateAuthorities:
      #- ca.org1.example.com

  # Orderer組織名稱
  ordererorg:
      # 組織的MSPID
      mspID: OrdererMSP
      # 加載用戶需要的密鑰和證書(shū),絕對(duì)路徑或相對(duì)路徑
      cryptoPath: ordererOrganizations/example.com/users/{username}@example.com/msp

# 發(fā)送交易請(qǐng)求或通道創(chuàng)建、更新請(qǐng)求到的orderers列表
# 如果定義了超過(guò)一個(gè)orderer,SDK使用哪一個(gè)orderer由代碼實(shí)現(xiàn)時(shí)指定
orderers:
  # orderer節(jié)點(diǎn),可以定義多個(gè)
  orderer.example.com:
    url: orderer.example.com:7050
    # 以下屬性由gRPC庫(kù)定義,會(huì)被傳遞給gRPC客戶端構(gòu)造函數(shù)
    grpcOptions:
      ssl-target-name-override: orderer.example.com
      # 下列參數(shù)用于設(shè)置服務(wù)器上的keepalive策略,不兼容的設(shè)置會(huì)導(dǎo)致連接關(guān)閉
      # 當(dāng)keep-alive-time被設(shè)置為0或小于激活客戶端的參數(shù),下列參數(shù)失效
      keep-alive-time: 0s
      keep-alive-timeout: 20s
      keep-alive-permit: false
      fail-fast: false
      allow-insecure: false

    tlsCACerts:
      # 證書(shū)的絕對(duì)路徑
      # path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem

# peers節(jié)點(diǎn)列表
peers:
  # peer節(jié)點(diǎn)定義,可以定義多個(gè)
  peer0.org1.example.com:
    # URL用于發(fā)送背書(shū)和查詢請(qǐng)求
    url: peer0.org1.example.com:7051

    grpcOptions:
      ssl-target-name-override: peer0.org1.example.com
      keep-alive-time: 0s
      keep-alive-timeout: 20s
      keep-alive-permit: false
      fail-fast: false
      allow-insecure: false

    tlsCACerts:
      # 證書(shū)的絕對(duì)路徑
      #path: ${GOPATH}/src/github.com/hyperledger/fabric-sdk-go/${CRYPTOCONFIG_FIXTURES_PATH}/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem

網(wǎng)頁(yè)標(biāo)題:HyperLegerFabricSDK開(kāi)發(fā)(二)——FabricSDK配置
網(wǎng)頁(yè)鏈接:http://weahome.cn/article/jjgesd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部