5.9.2. キューの設定

5.9.2.1. キュー MBean の属性

Name
キュー名を定義します。
JNDIName
キューをバインドする JNDI 名を定義します。
DLQ
このキューの DLQ (Dead Letter Queue) を定義して、Server Peer 設定ファイルで設定されているすべての値を無効にします。
ExpiryQueue
Expiry Queue を定義して、Server Peer 設定ファイルで設定されているすべての値を無効にします。
RedeliveryDelay
このキューに適用される再配信の遅延を定義して、Server Peer 設定ファイルで設定されているすべての値を無効にします。
MaxDeliveryAttempts
設定されている場合、メッセージが DLQ に送信されるまでに試行されるメッセージの配信最大回数を定義します。デフォルト値は -1 です。これは、Server Peer 設定ファイルからの値が使用されていることを意味します。他のどの設定も Server Peer 設定ファイルで設定されている値を無効にします。
CreatedProgrammatically
キューがプログラムによって作成された場合は true を返します。
MessageCount
キューのメッセージ合計数を返します。スケジュールされたメッセージ数に、配信されている数と配信されていない数が加わります。
ScheduledMessageCount
キューの スケジュールされたメッセージ の数を返します。これは後日に配信が予定されているメッセージの数です。
スケジュールされた配信により、特定のメッセージが配信される最も早い時刻を指定できます。例えば、今から 2 時間は配信されないように指定して、今メッセージを送ることができます。詳しくはメッセージのヘッダーで以下を設定してください。
              
long now = System.currentTimeMillis();

Message msg = sess.createMessage();  
    
msg.setLongProperty(JBossMessage.JMS_JBOSS_SCHEDULED_DELIVERY_PROP_NAME,
  now + 1000 * 60 * 60 * 2);

prod.send(msg);

MaxSize
キューで保留できるメッセージの最大数を指定します。過剰なメッセージは破棄されます。デフォルト値は -1 で、バインドされません。
Clustered
デスティネーションがクラスター化されている場合、この属性は true に設定する必要があります。
MessageCounter
各キューはメッセージカウンターを維持します。
MessageCounterStatistics
メッセージカウンターの統計です。
MessageCounterHistoryDayLimit
メッセージカウンターの履歴を保持する最長日数です。Server Peer 設定ファイルで設定されているすべての値を無効にします。
ConsumerCount
現在キューからコンシュームしているコンシューマーの数です。
DropOldMessageOnRedeploy
以前にデプロイした属性とは異なるクラスター属性でキューサービスをどのように処理するか指定します。true に設定すると、キューサービスの属性に異なるクラスター属性が含まれている場合はキューサービスが再デプロイした後に、キューに残っているすべてのメッセージは削除されます。false (デフォルト) に設定すると、すべてのメッセージは保持されます。

警告

デスティネーションを再デプロイする場合は、クラスター内のすべてのノードをシャットダウンし、適切な設定変更を加え、ノードを再起動する必要があります。
非クラスター化のキューからクラスター化のキューに再デプロイするには、クラスター属性を true に設定し、キューサービス設定を各ノードに追加する必要があります。
クラスター化のキューから非クラスター化のキューに再デプロイするには、キュー設定の 1 つでクラスター属性を false に設定し、クラスター内のすべての他のキューを削除する必要があります。
5.9.2.1.1. Destination Security Configuration
<SecurityConfig> は、デスティネーションに読み取り、書き込み、作成を行うことができるロールを決定します。JBossMQ デスティネーションのセキュリティ設定と同じ構文とセマンティクスを使用します。
<SecurityConfig>
  <security>
    <role read="true" write="true" create="true"/>
  </security>
<SecurityConfig>
<SecurityConfig> 要素には 1 つの <security> 要素を含む必要があります。それには、複数の <role> 要素を含むことができます。<role> 要素は以下の属性を使用してその特定のロールに対しアクセスの種類を定義します。
read
ロールがコンシューマーを作成、メッセージを受信、デスティネーションの閲覧を行うことができると指定します。
write
ロールがプロデューサーを作成、デスティネーションにメッセージを送信できると指定します。
create
ロールがこのデスティネーションで持続性のあるサブスクリプションを作成できると指定します。

注記

デスティネーションのセキュリティ設定はオプションです。SecurityConfig 要素を指定しないと、Server Peer からのデフォルトのセキュリティ設定が使用されます。
5.9.2.1.2. Destination paging parameters
Pageable Channels (ページング可能なチャンネル) は、キュー単位またはトピック単位でメモリに一度に保存できるメッセージの最大数を指定できる JBoss Messaging の機能です。JBoss Messaging は、ブロック単位で透過的にメッセージをストレージ間でページングします。これによって、チャンネルサイズが大きくなると、パフォーマンスを低下させることなくキューとサブスクリプションのサイズを非常に大きくすることができます。
ページング可能なチャンネルに関連するパラメーターは以下のとおりです。
FullSize
一度にメモリでキューまたはトピックのサブスクリプションが保持するメッセージの最大数を指定します。実際のキューはこれより多くのメッセージを保持できますが、メッセージは追加されたりコンシュームされたりするためストレージ間でページングされます。値を指定しない場合のデフォルト値は 75000 です。
PageSize
キューまたはサブスクリプションからメッセージを読み込む場合の、動作ごとに事前に読み込んだメッセージの最大数を指定します。値を指定しない場合のデフォルト値は 2000 です。
DownCacheSize
メッセージがストレージにフラッシュされるまでに Down Cache が保持するメッセージの最大数を指定します。デフォルト値は 2000 メッセージです。
メッセージがキューからストレージにページングされる場合、メッセージはストレージに書き込まれる前に Down Cache に入ります。これにより書き込みを単独の動作として発生させ、パフォーマンスを向上させます。

注記

一時的なキューのページングパラメーターは適切な接続ファクトリで指定する必要があります。使用可能な様々な接続ファクトリについての詳細は 「接続ファクトリの設定」 を参照してください。
5.9.2.1.3. キュー管理 Bean の動作
RemoveAllMessages
キューからすべてのメッセージを削除(および消去)します。

重要

これによりキューからすべてのメッセージが永久に消去されますので、使用する場合はご注意ください。
ListAllMessages
現在キューにあるすべてのメッセージを一覧表示します。この動作で JMS セレクターを引数として使用すると、所定の基準に一致するキュー内のメッセージのサブセットを取得することができます。
ListDurableMessages
キューにあるすべての 持続性のある メッセージを一覧表示します。この動作で JMS セレクターを引数として使用すると、所定の基準に一致するキュー内のメッセージのサブセットを取得することができます。
ListNonDurableMessages
キューにあるすべての 持続性のない メッセージを一覧表示します。この動作で JMS セレクターを引数として使用すると、所定の基準に一致するキュー内のメッセージのサブセットを取得することができます。
ResetMessageCounter
メッセージカウンターをゼロにリセットします。
ResetMessageCounterHistory
メッセージカウンター履歴をリセットします。
ListMessageCounterAsHTML
メッセージカウンターを HTML 形式で一覧表示します。
ListMessageCounterHistoryAsHTML
メッセージカウンター履歴を HTML 形式で一覧表示します。