2017-04-20 76 views
0

所有,採用同步請求響應JMS溝通,如何從JMS隊列超時

我們已經制定了同步JMS通信,我們將請求發送到一個隊列,等待corelated響應後襬脫響應消息超時時間爲400毫秒。如果響應不會在400秒內回來,那麼我們的線程超時和消息將保留在隊列中,並且永遠不會讀取。

我們的目標系統花費了大量的時間來處理消息,響應在400毫秒後回來,導致我們的線程超時並且響應隊列很快滿了。

我該如何擺脫響應隊列中響應來遲的孤兒響應消息?

+0

這就是通常使用的「生存時間」。 –

回答

0

理論上,在JMS協議中,可以設置JMS頭部屬性即JMSExpiration。如果您使用標準的java-jms,則JmsSender類具有您可以使用的「setTimeToLive」方法。

https://jms-spec.java.net/2.0/apidocs/