私はスタンドアロンのMQJMSアプリケーションを扱っています。このアプリは、クライアントがキューに入れられたメッセージプロデューサーをすでに消費していることを「認識する」必要があります。クライアントアプリは私たちの責任ではないからです。したがって、「msg.acknowledge();」のようなものを彼らに書かせることはできません。彼らの側にあるもの(msg.acknowledge()は私の状態では正しいアプローチではありません)。stackoverflowで履歴の回答を検索します。以下を見つけることは私が望むものとまったく同じです:
https://stackoverflow.com/questions/6521117/how-to-guarantee-delivery-of-the-message-in-jms
JMS仕様またはさまざまな実装は、メッセージの配信確認をサポートしていますか?
私の質問は、これをMQAPIまたはJMSAPIにアーカイブする他の方法はありますか?msgプロデュース側でのみコーディングを行う必要があります。キューまたはトピックにすることができます。
もう1つの質問は、JMSの確認モードCLIENT_ACKNOWLEDGEですが、これは無関係ですか?このモードでは、クライアントがメッセージを消費してmsg.acknowledge()を呼び出すまで、send()メソッドを呼び出すとアプリケーションがブロックされる可能性があると常に信じていますが、そうではないようです。プロデュースはメッセージが配信された後にアプリを終了し、クライアントがacknowledge()を呼び出すまでメッセージはキューに保存されます。メッセージがクライアントによって確認されるまで、プロデューサーアプリをそこにハングアップさせることは可能ですか?
私のコンセプトが正しくない場合は、私を訂正してください、ありがとう。