既存のシナリオ:2つのアプリがキューを使用して通信しています。それらの1つは常にプロデューサーであり、もう1つは常にコンシューマーです。
「プロデューサー」は、データを生成して独自のストレージに保存します。次に、キューを使用してコンシューマーに送信します。
(Springを使用した)JMSコンシューマー(およびリスナー)の実装について詳しく読むと、メッセージングをポーリングWebサービス呼び出しに簡単に置き換えることができるようです。
これは、JMSリスナーが行うのは、スレッドを開いたままにして、キューをリッスンすることだけだからです。したがって、JMSリスナーConnectionFactoryが10の接続を持つように設定されている場合、10のブロッキングスレッドがあります。
したがって、10個のスレッドを開いたままにする代わりに、1個のスレッドを使用して30秒ごとにポーリングしないのはなぜですか。その1つのポーリングは、応答で100個(またはそれ以上)のデータ項目をWebサービスに送信するようにWebサービスに指示できます。