ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド

10.3.1 durable Subscription機能

durable Subscriptionとは

本機能は受信対象種別がJMSの場合に有効な機能です。
Message-driven Beanが起動していない状態でDestinationに送信されたメッセージをJMSが保持し、Message-driven Beanが起動した後にメッセージを受信できる機能をdurable Subscription機能と呼びます。
この機能は、複数のメッセージ受信者に対して配信するPublish/Subscribeモデルで使用します。

本機能を使用する場合は、deployment descriptorのsubscription-durability(サブスクライバの永続性)に“NonDurable”または“Durable”を設定してください。deployment descriptorへの設定、および変更は、Interstage Studioで行います。EJB2.0以前のEJBアプリケーションの場合は、Interstage管理コンソールの[ワークユニット] > [IJServer名] > [EJBアプリケーション] > [アプリケーション環境定義] > [Message-driven Bean拡張情報]の[サブスクライバの永続性]でも設定することができます。

NonDurable

Message-driven Beanの停止中にDestinationへ送信されたメッセージはMessage-driven Beanを再起動しても配信されません。

Durable

Message-driven Beanがメッセージを受信するまでメッセージが保持されます。Message-driven Beanの停止中にDestinationへ送信されたメッセージも、Message-driven Bean再起動時にメッセージが配信されます。

durable Subscriber定義の登録と削除

“サブスクライバの永続性”に“Durable”を指定した場合、“サブスクライバの識別名”を設定してください。IJServerはMessage-driven Beanの初回起動時に“サブスクライバの識別名”に設定された名前でdurable Subscriberを登録します。
“サブスクライバの識別名”はInterstage管理コンソールで設定します。設定方法の詳細は、Interstage管理コンソールのヘルプを参照してください。
1度登録されたdurable SubscriberはMessage-driven Beanが停止しても存在し、メッセージを保持します。保持されたメッセージは再度Message-driven Beanが起動されたときに配信されます。

durable Subscriberが必要なくなった場合は、以下のコマンドにより削除してください。コマンドの詳細については、“リファレンスマニュアル(コマンド編)”の“JMS運用コマンド”を参照してください。

サブスクライバの識別名が“dsub”、クライアント識別子が“client1”というdurable Subscriberを削除する場合

jmsrmds -n dsub -i client1