【发布时间】:2013-04-08 23:28:26
【问题描述】:
我正在开发的项目(jsf Web 应用程序)使用 2 个 Web 服务来从网络中检索一些数据。
到目前为止,请求很小,因此等待 ws 响应的超时时间很短,但现在客户希望向请求中添加更多数据,这基本上会将每个 ws 的工作时间增加 30 分钟。
我正在考虑在这种情况下使用 jms 而不是 ws
我想听听一些意见
有意义吗?
谢谢
【问题讨论】:
-
你是对的,当业务流程需要几分钟而不是(毫秒)秒时,它是异步消息传递的良好候选者,即 JMS。但是,如果实际瓶颈不是请求处理而是消息传输,请考虑压缩 Web 服务响应。一个需要 30 分钟的网络服务调用,如果我是你,我会研究设计以消除低效率
-
对不起,我想我解释的场景不够好,我的意思是远程机器中的过程可能需要 30 分钟,但 ws 调用非常快
-
异步ws呢?
-
如果是处理时间限制,那么一定要使用JMS。即发即弃语义,客户端只需发送请求并立即收到接收确认。我不会推荐异步 WS 设计,因为它没有确认空间。在 Web 应用中,视觉反馈非常重要,因此 Web 服务至少应该确认服务调用的有效性和接收