首页 > 解决方案 > Flow 挂在 Corda 中收集交易对手签名处

问题描述

我正在尝试在两个 AWS 实例中运行 Example Cordapp。一审公证人和甲方,二审乙方和丙方。

我按照这里的步骤, Corda节点:如何将两台独立的电脑连接为两个节点?

在 conf 文件中,

  1. 公证人和甲方 - 我已编辑 P2P 地址以反映实例 1 的 PrivateIP
  2. PartyB 和 PartyC - 我已经编辑了 P2P 地址以反映实例 2 的 PrivateIP

使用上面的 conf 文件,我在实例 1 中运行 Network Bootstrapper jar,并将文件夹 PartyB 和 PartyC 复制到实例 2,并在相应的实例中分别启动 Notary 和 Party 1。

所有节点都成功启动,当我尝试执行从 PartA(在实例 1 中)到 PartyC(在 Instance2 中)的 IOU 流时,它在收集交易对手签名步骤中暂停,没有继续进行。以下是我在 PartyA 的控制台中看到的内容,

Fri Nov 30 08:39:10 UTC 2018>>> flow start ExampleFlow$Initiator iouValue: 50, otherParty: "O=PartyC,L=Paris,C=FR"
Verifying contract constraints.
Signing transaction with our private key.
Gathering the counterparty's signature.
Collecting signatures from counterparties. (hanging here and not proceeding further)

当我试图查看 NodeA 中的日志信息时,它显示如下。,

[INFO ] 2018-11-30T08:39:10,077Z [main] messaging.RPCServer.start - Starting RPC server with configuration RPCServerConfiguration(rpcThreadPoolSize=4, reapInterval=PT1S, deduplicationCacheExpiry=PT24H) {}
[INFO ] 2018-11-30T08:39:10,115Z [Thread-0 (ActiveMQ-client-global-threads)] bridging.BridgeControlListener.processControlMessage - Received bridge control message Create(nodeIdentity=DLHBP432vnpLNpCNwGQJjx3hd6RDz4LiYxmZJo757W8Hbw, bridgeInfo=BridgeEntry(queueName=internal.peers.DL9tRWQ867M3tni7KRqkXEJKPrkyW5KVj6fyRyDBHGaGA6, targets=[[2001:0:9d38:953c:3c:ce3:cbd9:3c59]:10013], legalNames=[O=PartyC, L=Paris, C=FR])) {}
[INFO ] 2018-11-30T08:39:11,072Z [nioEventLoopGroup-2-2] netty.AMQPClient.nextTarget - Retry connect to [2001:0:9d38:953c:3c:ce3:cbd9:3c59]:10013 {}
[INFO ] 2018-11-30T08:39:12,171Z [nioEventLoopGroup-2-3] netty.AMQPClient.operationComplete - Failed to connect to [2001:0:9d38:953c:3c:ce3:cbd9:3c59]:10013 {}
[INFO ] 2018-11-30T08:39:14,172Z [nioEventLoopGroup-2-4] netty.AMQPClient.nextTarget - Retry connect to [2001:0:9d38:953c:3c:ce3:cbd9:3c59]:10013 {}
[INFO ] 2018-11-30T08:39:15,175Z [nioEventLoopGroup-2-1] netty.AMQPClient.operationComplete - Failed to connect to [2001:0:9d38:953c:3c:ce3:cbd9:3c59]:10013 {}

我可以在具有私有 IP 的实例之间 ping 通,没有任何问题。有人可以帮我在哪里丢失东西。

提前致谢。

标签: corda

解决方案


此问题是由节点计算机上的防火墙导致的,该防火墙阻止节点的消息到达对方节点。

你需要打开:

  1. 节点 P2P 地址的出站端口
  2. 其他节点 P2P 地址的入站端口

在大型网络上,这可能意味着打开许多入站端口,这可能是某些公司安全策略的问题。Corda 防火墙解决了这个问题。


推荐阅读