【发布时间】:2010-12-17 17:25:31
【问题描述】:
我正在设计一个 REST 解决方案,用于与不同网络上的多个服务器进行远程通信。有些通话时间相对较短,而有些通话可能需要几分钟。调用本质上是同步的,因此如果调用是异步的,客户端(实际上是服务器)必须轮询响应。轮询不是最理想的,因为它会导致性能下降并将对最终用户的响应延迟轮询间隔的一小部分。我更喜欢使用同步调用,但如果网络连接断开,则无法获得响应。如果是异步的,远程服务器可以返回一个可以轮询的作业 id,并且可以在间歇性网络问题中幸存下来。重试和幂等性是重要的考虑因素。
我正在寻找有关采用哪种方法的一些建议。我们也有由远程服务器发起的调用。这些将通过 HA 的负载平衡器。我也对一些描述 HA 环境中企业通信最佳实践的书籍推荐感兴趣。我似乎找不到任何涵盖此主题的内容。
【问题讨论】: