2017-10-04 55 views

回答

0

好了,让我们考虑,我们不知道什么是后面那个漫长的过程。只有我们知道我们发送请求并等待回复。当我们暂停服务呼叫时,服务器的工作方式并不能保证:也许它会存储下一个幂等通话的回复,也许它只是丢弃一切并忘记。或者回复可能在线上丢失,同时我们正在计时...

这就是为什么我们完全不考虑reply作为独立实体,而是像整个请求 - 回复操作的一部分。

因此,如果我们在超时期间失败,除非再次重试请求并尝试再次等待答复,否则没有任何其他方式。这已经是服务器的责任,对相同的请求作出正确的反应。

让我知道你是否对这件事有任何宝贵的想法!

+0

我同意责任的问题,但有时候这个“长期过程”超出了我的集成应用程序的前沿。 所以我们决定申请一个超时时间并设置一个在这种情况下抛出的异常。此外,如果发生这种情况,请在最终失败之前进一步尝试。 –