CORDA RPC断开连接/超时

时间:2018-07-20 00:12:24

标签: corda

我们整夜运行CORDA节点,并且正在测试财务消息的连续流。

12小时后,我们发现正在侦听Vault更改的RPC客户端不再捕获其断开连接的消息。

  • 我们如何在客户得到的时间内获取事件 断开连接后,快照仅提供所有事件。
  • 我们有一些吗 配置以防止客户端超时。请让我们知道 最佳实践,因为我们的方案需要高度的可靠性。
  • 您能否提供一些有关正确的架构模式以从CORDA节点捕获事件的见解
  • 我们使用的是基于以下示例的模式
  

updates.toBlocking()。subscribe {update->               update.produced.forEach {                   logState(it)               }

这是日志中的一些错误

enter image description here

1 个答案:

答案 0 :(得分:0)

在Corda 4.3中,我们介绍了RPC重新连接的功能。您只需将以下代码添加到您的spring客户端,即可正常工作。

val gracefulReconnect = GracefulReconnect(onDisconnect={/*insert disconnect handling*/}, onReconnect{/*insert reconnect handling*/}, maxAttempts = 3)
val cordaClient = CordaRPCClient(nodeRpcAddress)
val cordaRpcOps = cordaClient.start(rpcUserName, rpcUserPassword, gracefulReconnect = gracefulReconnect).proxy

此外,如果您需要有关重新连接的更多信息,请参考博客:https://www.corda.net/blog/corda-rpc-reconnecting-client/