アウト プロダクトでは、特定のプロパティ値を保持するキュー内のメッセージの数を時折カウントする必要があります。簡単な方法は、キュー ブラウザーとセレクターを使用することです。しかし:
- 関連するすべてのメッセージを参照せずにこの統計を取得する方法はありますか? データは必要ありません。カウントだけが必要です。
- キュー ブラウザ アプローチを使用する場合、一部のコンシューマによって消費されたが、まだ確認されていないメッセージもブラウズしますか?
アウト プロダクトでは、特定のプロパティ値を保持するキュー内のメッセージの数を時折カウントする必要があります。簡単な方法は、キュー ブラウザーとセレクターを使用することです。しかし:
セレクターに基づいてキュー内のメッセージをカウントする方法は保証されていません。これにはいくつかの理由があります。そのうちの 1 つは、JMS 仕様では、QueueBrowser が Queue のすべてのメッセージを返すことさえ要求していないためです。ActiveMQ は、メモリに収まる数を超えるメッセージを返さないため、キューが深い場合、正確なカウントは得られません。データベースになることは実際には ActiveMQ の仕事ではないため、どの管理ツールもこれを行いません。
メッセージングの冒険に備えるために読むべき、メッセージングのアンチパターンに関するいくつかの記事を次に示します。