5.9.3. トピックの設定
5.9.3.1. トピック管理 Bean の属性
- Name
- トピック名を定義します。
- JNDIName
- トピックがバインドされる JNDI の場所を定義します。
- DLQ
- このトピックに使用する Dead Letter Queue (DLQ) を定義して、Server Peer 設定ファイルで設定されているすべての値を無効にします。
- ExpiryQueue
- このトピックに使用する Expiry Queue を定義して、Server Peer 設定ファイルで設定されているすべての値を無効にします。
- RedeliveryDelay
- このトピックに対し再配信を試行する間の遅延期間を定義して、Server Peer 設定ファイルで設定されているすべての値を無効にします。
- MaxDeliveryAttempts
- 設定されている場合は、メッセージが DLQ に送信されるまでに試行されるメッセージの配信最大回数を定義します。デフォルト値は
-1であり、Server Peer 設定ファイルからの値を使用することを指定します。他のどの設定も Server Peer 値を無効にします。 - CreatedProgrammatically
- トピックがプログラムによって作成された場合は
trueを返します。 - MaxSize
- トピックのサブスクリプションで保留できるメッセージの最大数を指定します。過剰なメッセージはトピックから破棄されます。デフォルト値は
-1で、サイズ制限は適用しません。 - Clustered
- デスティネーションがクラスター化されている場合は、これを
trueに設定します。 - MessageCounterHistoryDayLimit
- メッセージカウンター履歴を保持する最大日数を定義し、Server Peer 設定ファイルで設定されているすべての値を無効にします。
- MessageCounters
- トピックのサブスクリプションに対するメッセージカウンターの一覧を返します。
- AllMessageCount
- トピックに属するすべてのサブスクリプションにあるメッセージの合計数を返します。
- DurableMessageCount
- このトピックに属するすべてのサブスクリプションにある 持続性のある メッセージの合計数を返します。
- NonDurableMessageCount
- このトピックに属するすべてのサブスクリプションにある 持続性のない メッセージの合計数を返します。
- DropOldMessageOnRedeploy
- 以前にデプロイした属性とは異なるクラスター属性でキューサービスをどのように処理するか指定します。
trueに設定すると、キューサービスの属性に異なるクラスター属性が含まれている場合はキューサービスが再デプロイした後に、キューに残っているすべてのメッセージは削除されます。false(デフォルト) に設定すると、すべてのメッセージは保持されます。警告
デスティネーションを再デプロイする場合は、クラスター内のすべてのノードをシャットダウンし、適切な設定変更を加え、ノードを再起動する必要があります。非クラスター化のキューからクラスター化のキューに再デプロイするには、クラスター属性をtrueに設定し、キューサービス設定を各ノードに追加する必要があります。クラスター化のキューから非クラスター化のキューに再デプロイするには、キュー設定の 1 つでクラスター属性をfalseに設定し、クラスター内のすべての他のキューを削除する必要があります。 - AllSubscriptionsCount
- このトピックに属するすべてのサブスクリプションの数を返します。
- DurableSubscriptionsCount
- このトピックに属するすべての持続性のあるサブスクリプションの数を返します。
- NonDurableSubscriptionsCount
- このトピックに属するすべての持続性のないサブスクリプションの数を返します。
5.9.3.1.1. Destination Security Configuration
<SecurityConfig> は、デスティネーションに読み取り、書き込み、作成を行うことができるロールを決定します。JBossMQ デスティネーションのセキュリティ設定と同じ構文とセマンティクスを使用します。
<SecurityConfig> 要素には 1 つの <security> 要素を含む必要があります。それには、複数の <role> 要素を含むことができます。<role> 要素は以下の属性を使用してその特定のロールに対しアクセスの種類を定義します。
- read
- ロールがコンシューマーを作成、メッセージを受信、デスティネーションの閲覧を行うことができると指定します。
- write
- ロールがプロデューサーを作成、デスティネーションにメッセージを送信できると指定します。
- create
- ロールがこのデスティネーションで持続性のあるサブスクリプションを作成できると指定します。
注記
デスティネーションのセキュリティ設定はオプションです。
SecurityConfig 要素を指定しないと、Server Peer からのデフォルトのセキュリティ設定が使用されます。
5.9.3.1.2. Destination paging parameters
以前はキューまたはサブスクリプションをサポートするアプリケーションについては、キューはメモリに完全に保存されている必要がありました。しかしこれは非常に大きなキューまたはサブスクリプションには常に可能ではありませんでした。
Pageable Channels (ページング可能なチャンネル) は、キュー単位またはトピック単位でメモリに一度に保存できるメッセージの最大数を指定することができる JBoss Messaging の新しい機能です。JBoss Messaging は、ブロック単位で透過的にメッセージをストレージ間でページングします。これにより、チャンネルサイズが大きくなると、パフォーマンスを低下させることなくキューやサブスクリプションのサイズを非常に大きくすることができます。これは、非常に基本的なハードウェアで 2 キロバイトのメッセージを 1 千万回以上キューで検証されているため、さらに多くのメッセージ数に拡大する可能性があります。
ページング可能なチャンネルに関連するパラメーターは以下のとおりです。
- FullSize
- 一度にメモリでキューまたはトピックのサブスクリプションが保持するメッセージの最大数を指定します。実際のキューはこれより多くのメッセージを保持できますが、メッセージは追加されたりコンシュームされたりするためストレージ間でページングされます。値を指定しない場合のデフォルト値は
75000です。 - PageSize
- キューまたはサブスクリプションからメッセージを読み込む場合の、動作ごとに事前に読み込んだメッセージの最大数を指定します。値を指定しない場合のデフォルト値は
2000です。 - DownCacheSize
- メッセージがストレージにフラッシュされるまでに Down Cache が保持するメッセージの最大数を指定します。デフォルト値は
2000メッセージです。メッセージがキューからストレージにページングされる場合、メッセージはストレージに書き込まれる前に Down Cache に入ります。これにより書き込みを単独の動作として発生させ、パフォーマンスを向上させます。注記
一時的なキューのページングパラメーターは適切な接続ファクトリで指定する必要があります。詳細は「接続ファクトリの設定」セクションを参照してください。