0

複数のワーカーが処理のためにジョブのキューから STOMP メッセージを受信するプロジェクトに取り組んでおり、優先順位をサポートしたいと考えています。現在、ActiveMQ を使用していますが、組み込みの優先度サポートを適切に機能させることができず、優先度ごとに 1 つずつ、複数のキューを使用する必要がありました。これは機能しますが、各キューのバッファーには常に少なくとも 1 つの未確認のメッセージがクライアント側にあり、ACK されるのを待っています。1 つの優先度で数千のメッセージが送信された場合、優先度の低いバッファ内のメッセージは、一度に数時間または数日もそこに留まる可能性があります。

受動的に待機するのではなく、サーバーにメッセージをポーリングできればよいのですが、OpenWire を使用しない限りサポートされないようです。これはやり過ぎのようです。使用できるソリューションに関する提案はありますか?

編集:優先順位を機能させることができないと言ったとき、私が何を意味したかを言及することになりました。ActiveMQ の優先順位をテストしたところ、十分な量のバックログが発生すると優先順位が尊重されなくなるように見えました。

4

1 に答える 1

0

あなたのユースケースは、ブローカーが優先度を尊重できない場合に備えて、メッセージのプルとクライアント側の優先順位付けの両方をサポートする openwire クライアントの使用を開始するのに理想的な時期のように思えます。やり過ぎだと思う理由はよくわかりませんが、やり過ぎはあなたが必要としているものかもしれません.

于 2013-10-19T11:15:00.213 に答える