hyperledger-fabric - Hyperledger Fabric GOSSIP_BOOTSTRAP & GOSSIP_EXTERNALENDPOINTS

标签 hyperledger-fabric blockchain hyperledger

我正在调查 docker配置文件,在peer环境中找到两个参数如下图:

environment:
      - CORE_PEER_ID=peer0.org1.example.com
      - CORE_PEER_ADDRESS=peer0.org1.example.com:7051
      - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.org1.example.com:7051
      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051
      - CORE_PEER_LOCALMSPID=Org1MSP 

谁能解释一下有两个变量 CORE_PEER_GOSSIP_BOOTSTRAP & CORE_PEER_GOSSIP_EXTERNALENDPOINT 作品。在奇数对等点的情况下如何配置它们。

详细的解释将不胜感激。

最佳答案

Gossip 可以只在同一组织的对等点之间使用,也可以在不同组织的对等点之间使用。它始终适用于特定 channel 。

1) 单个组织中的同行之间的通信

  • 一个节点可能是领导者并连接到排序服务并将 block 交付给它自己组织中的其他节点
  • 一个对等点可以连接到其组织中的其他对等点以获取丢失的 block

  • 2)不同组织的同行之间的交流
  • 在 v1.2 中使用私有(private)数据功能时,gossip 用于在背书时将私有(private)数据分发给组织中的其他对等方
  • 对等方可以从其他组织中的对等方处获取已提交的缺失 block
  • 对等方可以在提交时从其他组织中的对等方获取丢失的私有(private)数据

  • 为了让 gossip 真正发挥作用,它需要能够获取自己组织中的对等点以及其他组织中的对等点的端点信息。

    CORE_PEER_GOSSIP_BOOTSTRAP 用于引导组织内的八卦。如果您使用 gossip,您通常会将组织中的所有对等点配置为指向初始对等点集以进行引导(您可以指定以空格分隔的对等点列表)。当然,对等点也可以从不同的对等点引导,但在这种情况下,您只需要确保所有对等点都有引导路径。组织内的对等点通常会在其内部端点上进行通信(这意味着您不必公开组织中的所有对等点)。当 peer 联系 bootstrap peer 时,它会传递它的端点信息,然后使用 gossip 在组织中的 peer 之间分发有关组织中所有 peer 的信息。

    为了使对等点能够跨组织进行通信,再次需要某种类型的引导信息。初始跨组织引导信息是通过 channel 配置中的“ anchor 对等点”设置提供的。这允许加入 channel 的对等点也可以发现 channel 上的其他对等点。但很明显,最初组织中的对等点只会知道那里组织的 anchor 对等点。如果您想让您组织中的其他对等节点为其他组织所知,则需要设置 CORE_PEER_GOSSIP_EXTERNALENDPOINT 属性(property)。如果没有设置,那么关于对等点的端点信息将不会被广播给其他组织中的对等点,事实上 - 该对等点只会被它自己的组织知道。

    关于hyperledger-fabric - Hyperledger Fabric GOSSIP_BOOTSTRAP & GOSSIP_EXTERNALENDPOINTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51377474/

    相关文章:

    raspberry-pi - 是否可以在 Raspberry Pi 3 中运行 HyperLedger Fabric 2.0?

    json - 如何在 Invoke json 响应中返回值

    hyperledger-fabric - MVCC_READ_CONFLICT 并发提交多个事务时

    hyperledger-fabric - Hyperledger Fabric 与 Kafka 的每秒交易量是多少

    node.js - Hyperledger Fabric Node.js SDK : Issue with offline transaction signatures

    java - 访问被拒绝 : hyperledger fabric channel. 初始化()

    linux - 未收到来自 REGISTER 请求 hypereldger 的响应

    fork - 当多个 block 同时添加到区 block 链时会发生什么?

    blockchain - Hyperledger Fabric 和 Sawtooth 有什么区别?

    hyperledger-fabric - Hyperledger Composer Incompatible versions 错误且版本相同