问题:
我们有一个运行服务的服务器集群。该服务将交易从一个地址广播到许多不同的地址。现在的问题是,它们是并行工作的。这意味着,他们总是需要知道下一个有效的随机数。有时,服务会尝试使用过高的 nonce 广播交易。例如,假设地址“0xabc...”的最后一笔交易的随机数为 100。现在一个服务尝试广播一个随机数为 102 的原始交易,而不是像这样的有效 101:
web3j.ethSendRawTransaction(rawMessageWithNonce102).send();
问题:
有什么方法可以检测到问题吗?web3j 当然不会在这里出错,因为最初 tx 进入了 tx 池。但一段时间后,它从那里删除。如何在我的 java 应用程序中检测到“nonce 太高问题”?有任何想法吗?提前致谢!