可以从响应者流中向对方的外部服务发出HTTP请求吗?
我的用例是,一方通过交换节点调用“请求令牌”流程。该交换节点发出HTTP请求(在响应者流上),以将现金从该方帐户转移到外部支付系统中的交换帐户。资金实际达到计数的事件,因此代币的发行将发生另一次流动。
如果还不行,那么完成任务的替代设计是什么?
答案 0 :(得分:1)
以这种方式发出HTTP请求并不总是一个好主意。
除非您非常仔细地考虑重播上一个检查点时会发生什么,所以重复数据删除和幂等是关键考虑因素。另外,如果目标已关闭,会发生什么情况?此外,这可能会耗尽光纤运行所在的线程池。
流在光纤上运行。 CordaServices可以产生自己的线程 线程可以阻塞I / O,光纤只能在短时间内阻塞,并且我们不保证释放资源或进行排序,除非它是DB。线程也可以注册可观察对象
真正的挑战是重新启动能力,为此,他们需要使用随机杀死功能来测试自己的代码。
您需要注意,如果发生崩溃,可以重播步骤。对于任何重新启动工作的基于服务器端工作的系统都是如此。
有效地,您应该: