Cosminexus アプリケーションサーバ V8 機能解説 基本・開発編(コンテナ共通機能)

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP繧サ繝ェ繝シ繝 CELINE 繝舌ャ繧ー 繝ャ繝繧」繝シ繧ケ 189313A4U 18LT 繧キ繝ァ繝ォ繝繝シ莉 繝上Φ繝峨ヰ繝繧ー 繧ケ繝「繝シ繝ォ BIG BAG 繝薙ャ繧ー 繝舌ャ繧ー LIGHT TAUPE 繝吶シ繧ク繝・uTwXliOPkZAA Jewels繧ク繝・繧ィ繝ェ繝シ 繝壹Φ繝繝ウ繝 繝阪ャ繧ッ繝ャ繧ケ Solid 14k White Gold September Synthetic Birthstone Heart Charm Pendant5cARjL34qTOUCH BY ALYSSA MILANO 繧ソ繝繝 繧ク繝」繧、繧「繝ウ繝 繝ャ繝繧」繝シ繧ケ 繝ゥ繧ー繝ゥ繝ウ 繧ケ繝ェ繝シ繝 T繧キ繝」繝 轣ー濶イ 繧ー繝ャ繝シ 繧ー繝ャ繧、 鮟 繝悶Λ繝繧ッ WOMEN'SRAGLAN SLEEVE GRAY BLACK TOUCH BY ALYSSA MILANO SAN FRANCISCO GIANTS LINE DRIVE LONG TSqSUzMVp繧ケ繧ュ繝九シ繝繧」繝シ skinnytees 繝ャ繝繧」繝シ繧ケ 繧ソ繝ウ繧ッ繝医ャ繝 V繝阪ャ繧ッ 繝医ャ繝励せ Lace V Neck Tank CobaltT1Jc3luFK

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP

Pub/Subメッセージングモデルは,パブリッシュ・サブスクライブ(Publish-Subscribe)方式でメッセージを送受信するためのモデルです。

<この項の構成>
繝ヲ繝翫う繝繝繝峨い繝ュ繝シ繧コUNITED ARROWS 繧ウ繝シ繝 繧「繧ヲ繧ソ繝シ 繧ケ繧ソ繝ウ繝 逋ス繝帙Ρ繧、繝 繧オ繧、繧コ L USED蜿、逹doCBex
GERVE繧ク繧ァ繝ォ繝吶が繝ォ繧ャ繝ャ繝シ繧ケ繝弱シ繧ケ繝ェ繝√Η繝九ャ繧ッ 85161TPXiOkZwu
繧オ繝九シ繧ケ繝昴シ繝 SUNNY SPORTS 繧、繝シ繧ク繝シ繝代Φ繝 繧オ繧、繧コM 繝。繝ウ繧コ TRAIL 3D PANTS 繝医Ξ繧、繝ォ繝代Φ繝 繝悶Λ繝ウMVpqUzSG
Hender Scheme 繧ィ繝ウ繝繝シ繧ケ繧ュ繝シ繝 glass wall holder3pin c gwh4jq3A5LR

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP

Pub/Subメッセージングモデルでは,メッセージを作成して送信する送信側のクライアント(プロデューサー)をパブリッシャーといいます。また,メッセージを受信する側のクライアント(コンシューマー)をサブスクライバーといいます。

パブリッシャーから送信されたメッセージは,トピックという送信先に登録されます。トピックに登録されたメッセージは,そのトピックに対して配信を申し込んでいた一つまたは複数のサブスクライバーに配信されます。

Pub/Subメッセージングモデルでのメッセージの流れを次の図に示します。

MAKIA Coats 繝。繝ウ繧コ0N8nvwmO 図7-6 Pub/Subメッセージングモデルでのメッセージの流れ

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP

メッセージは,パブリッシャーから送信され,トピックに登録されます。図の場合,トピック1にはサブスクライバー1,トピック2にはサブスクライバー2とサブスクライバー3が登録されています。このとき,トピック1に登録されたメッセージ1とメッセージ2はサブスクライバー1に配信されます。トピック2に登録されたメッセージ3はサブスクライバー2とサブスクライバー3に配信されます。

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP

Pub/Subメッセージングモデルの特徴を次に示します。

メッセージの送信〜処理実行までの特徴
  • 一つまたは複数のパブリッシャーから,メッセージをトピックに登録できます。
  • 一つまたは複数のサブスクライバーが,トピックからメッセージを取り出して処理できます。
  • サブスクライバーは,配信を申し込んだトピックに登録されたすべてのメッセージについて,受信して処理できます。ただし,メッセージセレクターで設定した基準に該当しないメッセージ,または受信する前にメッセージの有効期限が過ぎたメッセージについては受信できません。
  • メッセージは,パブリッシャーが送信した順序でトピックに登録されます。ただし,サブスクライバーで処理される順序は,それぞれのメッセージの有効期限,優先順位,またはサブスクライバーで設定されたメッセージセレクターの内容によって決まります。
  • パブリッシャーとサブスクライバーが処理を実行するタイミングには依存性があります。トピックに登録されたメッセージは,メッセージが登録される前に開始されていたサブスクライバーだけに配信されます。
  • 繧ォ繝シ繝峨〒17蛟7 2 譛ィ 12 00縺セ縺ァW繝励Ξ繧シ繝ウ繝 繝悶Μ繝シ繝輔ぅ繝ウ繧ー 繝ェ繝・繝繧ッ BRIEFING 繝ェ繝・繝繧ッ繧オ繝繧ッ 繝繧、繝35RqSc4ALj 繝輔ぅ繝ゥ 繝ャ繝繧」繝シ繧ケ 繝代シ繧ォ繝シ繝サ繧ケ繧ヲ繧ァ繝繝 繧「繧ヲ繧ソ繝シ Berna Faux Fur Hoodie Black435RLAj
  • サブスクライバーの属性に「NoLocal」を指定した場合,サブスクライバーが使用しているコネクションと同じコネクションで送信されたメッセージの受信を抑止できます。この属性のデフォルトは「false」です。

システムの特徴
  • パブリッシャーとサブスクライバーは動的に追加・削除できます。これによって,使用状況に応じてシステムを拡張,縮小できます。
  • Cosminexus JMSプロバイダとの接続で使用するコネクションは,複数のプロデューサーで共有できます。なお,コネクションを共有しているかどうかに関係なく,複数のプロデューサーから同じのトピックにメッセージを送信できます。
  • Cosminexus JMSプロバイダとの接続で使用するコネクションは,複数のサブスクライバーで共有できます。なお,コネクションを共有しているかどうかに関係なく,複数のサブスクライバーから同じトピックに接続できます。

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP

トピックに登録されたメッセージは,メッセージ登録時に開始されていたサブスクライバーだけが受信できます。通常のサブスクライバーは,停止していた期間に登録されたメッセージは受信できません。

これに対して,サブスクライバーを永続化することで,停止していた期間に登録されたメッセージも受信できるようになります。永続化したサブスクライバーを永続化サブスクライバーといいます。

永続化サブスクライバーが登録されたトピックのメッセージは,次のどちらかの状態になるまで削除されません。

永続化サブスクライバーを利用する場合,そのサブスクライバーに固有の識別子と名称を登録します。登録した情報は,CJMSPブローカーによって保持されます。永続化サブスクライバーが停止しているときに登録されたメッセージは,登録した識別子および名称のサブスクライバーが再開されたときに,そのサブスクライバーに配信されます。

永続化サブスクライバーを利用した場合のメッセージの送受信の流れを次の図に示します。

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP 繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP

図7-7 永続化サブスクライバーを利用した場合のメッセージの送受信の流れ

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP

永続化サブスクライバーを利用した場合のメッセージの送受信の流れについて説明します。なお,説明の番号は図中の番号と対応しています。

  1. サブスクライバー1を永続化サブスクライバーとしてトピックに登録します。
    識別子(ClientID)は,「1」とします。
  2. パブリッシャー1が,メッセージ1をトピックに登録します。
  3. サブスクライバー1は,メッセージ1をトピックから受信します。
  4. サブスクライバー1を停止します。
    停止した状態になると,トピックに登録されたメッセージは受信できません。
  5. パブリッシャー2が,メッセージ2をトピックに登録します。サブスクライバー1は停止中のため,メッセージ2を受信できません。ただし,サブスクライバー1は永続化サブスクライバーとして登録されているため,このメッセージは登録された永続化サブスクライバーがメッセージを受信するまでトピックで保管されます。
  6. サブスクライバー2を永続化サブスクライバーとしてトピックに登録します。このとき,識別子(ClientID)を「1」として,サブスクライバーの名称はサブスクライバー1と同じ値にします。
    永続化サブスクライバーの情報を保持しているCJMSPブローカーは,識別子と名称からサブスクライバー2は登録済みの永続化サブスクライバーが再開したものと判断します。
  7. 繝ュ繧、繝、繝ォ繧ケ繧ソ繝繧ー繧シ繧ケ繝 Royal Stag Zest 繧キ繝ォ繝舌シ 繧ク繝・繧ィ繝ェ繝シ 繝阪ャ繧ッ繝ャ繧ケ 繝悶Λ繝繧ッ繝繧、繝、繝「繝ウ繝 繧ッ繝ュ繧ケ 繝。繝ウ繧コ 蜊∝ュ玲楔 SN25 031WBorCxQEde
  8. トピックに保管されていたメッセージ2がサブスクライバー2に配信されます。

永続化サブスクライバーの指定を解除する場合は,次のどちらかの方法で解除してください。

cjmsicmd destroy durコマンドについては,マニュアル「Cosminexus アプリケーションサーバ リファレンス コマンド編」の「cjmsicmd destroy dur(永続化サブスクライバーの破棄)」を参照してください。

繝吶う繝 BAIT x Street Fighter Ryu Championship 2014 Teeblack繝。繝ウ繧コn0k8OwP

unsubscribeメソッドを使用すると,サブスクライバーのために保持されたトピックの状態を解除できます。ただし,このメソッドは,次のタイミングでは使用しないでください。

なお,確認応答モードが「CLIENT_ACKNOWLEDGE」のセッションによって永続化サブスクライバーが作成された場合に,メッセージ受信が確認されていない状態でunsubscribeメソッドが実行されたときには,メッセージは送信先に残ってしまいます。この状況を避けるため,unsubscribeメソッドを使用する場合,事前にcjmsicmd purge durコマンドを実行して,永続化サブスクライバーに関連づけられているすべてのメッセージを削除してください。

注意
一時的な送信先として作成したトピックに対して,永続化サブスクライバーは登録できません。作成しようとすると,例外がスローされます。

[目次][前へ][次へ]


[他社商品名称に関する表示]

All Rights Reserved. Copyright (C) 2008, 2011, Hitachi, Ltd.