6.4.3. キュー管理操作


管理 API を使用してキューを管理できます。

コア管理 API はキューを処理します。QueueControlクラスは、キューの管理操作を定義します (ObjectName,org.apache.activemq.artemis:broker="<broker-name>",component=addresses,address="<bound-address>",subcomponent=queues,routing-type="<routing-type>",queue="<queue-name>" またはリソース名queue.<queue-name>を使用)。

キューの管理操作のほとんどは、単一のメッセージ ID(例: 単一のメッセージを削除)またはフィルター(特定のプロパティーですべてのメッセージを期限切れにするなど)を取ります。

期限切れで、デッドレターアドレスに送信され、メッセージの移動

expireMessages()メソッドを使用して、キューのメッセージを失効させます。期限切れアドレスが定義されている場合、メッセージはこのアドレスに送信されます。一致しない場合、メッセージは破棄されます。broker.xml 設定ファイルの address-settings 要素で、アドレスまたはアドレス の セット (つまり、これらのアドレスにバインドされるキュー) の期限切れアドレスを定義できます。たとえば、デフォルトのブローカー設定について の「Default message address settings」セクションを 参照してください。

sendMessagesToDeadLetterAddress()メソッドを使って、デッドレターアドレスにメッセージを送信します。このメソッドは、デッドレターアドレスに送信されたメッセージの数を返します。デッドレターアドレスが定義されている場合、メッセージはこのアドレスに送信されます。一致しない場合はキューから削除され、破棄されます。broker.xml 設定ファイルの address-settings 要素で、アドレスまたはアドレス の セット (つまり、これらのアドレスにバインドされるキュー) のデッドレターアドレスを定義できます。たとえば、デフォルトのブローカー設定について の「Default message address settings」セクションを 参照してください。

moveMessages()メソッドを使用して、あるキューから別のキューにメッセージを移動します。

メッセージの一覧表示と削除

listMessages()メソッドを使用して、あるキューからメッセージを一覧表示します。Map の配列 (各メッセージに対して1つのMap) を返します。

removeMessages() メソッドを使用してキューからメッセージを削除します。これは、単一のメッセージ ID バリアントの boolean、またはフィルターバリアントの削除されたメッセージの数を返します。このメソッドは、filter 引数を取り、フィルターされたメッセージのみを削除します。フィルターを空の文字列に設定すると、すべてのメッセージが削除されます。

メッセージのカウント
キューに入っているメッセージの数は、getMessageCount()メソッドで返されます。または、countMessages() は指定のフィルターに一致するキュー内のメッセージの数を返します。
メッセージの優先度の変更
メッセージの優先度は、単一のメッセージIDバリアントのbooleanまたはフィルターバリアントの更新されたメッセージの数を返すchangeMessagesPriority()メソッドを使用して変更できます。
メッセージカウンター
メッセージカウンタは、listMessageCounter()およびlistMessageCounterHistory()メソッドを使用して、キューに対して一覧表示することができます(「メッセージカウンターの使用」を参照)。メッセージカウンターは、resetMessageCounter()メソッドを使って、1つのキューに対してリセットすることもできます。
キュー属性の取得
QueueControl は、属性を使用してキュー設定を公開します(たとえば、キューのフィルターが作成されている場合はこれを取得するためにgetFilter()を使用、キューが永続的かどうかを知るためにはisDurable()を使用など)。
キューの一時停止および再開
QueueControlは、基礎となるキューを一時停止したり、再開したりすることができます。キューが一時停止されると、メッセージを受信しますが、配信されません。再開すると、キューに格納されたメッセージの配信を開始します(ある場合)。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.