ページの先頭行へ戻る
Interstage Application Server アプリケーション作成ガイド(イベントサービス編)

1.3.3 Mixedモデルの概要

  Mixedモデルは、サプライヤ側をPushモデル、コンシューマ側をPullモデルとした通信モデルです。サプライヤもコンシューマも待ち合わせることなく、その中間にあるイベントチャネルが一時的にイベントデータを蓄積し、受け渡します。
  本モデルは、サプライヤとコンシューマが互いの動作状態に関係なく、イベント通信を行う場合に使用され、本モデルのイベント通信により非同期のアプリケーション間通信を実現できます。
  また、Pushモデルと同様に、同時に複数のコンシューマに対してメッセージを送信したり、1台のコンシューマが複数のサプライヤからメッセージを受信したりする場合に有効です。一定時間ごとにコンシューマがイベントチャネルに蓄積されているデータを受け取る場合にも有効です。

  Mixedモデルの概要を以下に示します。
  サプライヤからの送信には、pushメソッドを使用します。コンシューマからの取り出しは、pullメソッドまたはtry_pullメソッドを使用します。



  1. コンシューマは、イベントデータを受け取るため、イベントチャネルに対して接続します。

  2. サプライヤは、イベントデータをイベントチャネルに送信します。

  3. イベントチャネルでは、イベントデータを一時的に蓄積します。

  4. イベントチャネルに接続しているコンシューマは、イベントチャネルに蓄積されているイベントデータを取り出す要求を出します。

  5. イベントチャネルは、蓄積されているイベントデータを取り出して送信し、コンシューマが受信します。


  コンシューマは、イベントチャネルとの接続後、サプライヤから送信されたデータを取得できます。


ポイント

  コンシューマ、サプライヤ側のマシン環境でサーバアプリケーションを運用できない場合は、Mixedモデルを使用します。