Pullモデルは、コンシューマがイベントデータの送信要求待ちの状態にあるサプライヤにイベントデータの“引き出し”(pull)を要求します。要求した結果、送信するイベントデータがサプライヤにあれば、そのイベントデータをコンシューマに送信する通信モデルです。
1台のサプライヤに対し、複数のコンシューマがデータを取得する場合に有効です。
Pullモデルの概要を以下に示します。なお、イベントデータの送信要求と送受信は、イベントチャネルのpullメソッドを使用します。
サプライヤは、コンシューマからのイベントデータの送信要求を受け付けるため、イベントチャネルに接続します。ここで、サプライヤは、イベントデータの受信要求待ちの状態になります。
コンシューマは、イベントチャネルにイベントデータの送信要求を出します。
イベントチャネルは、接続しているサプライヤに送信要求を出します。
送信要求を受け取ったサプライヤは、イベントデータがあれば、イベントチャネルに送信し、次の送信要求を待ち合わせます。
コンシューマは、サプライヤからのイベントデータをイベントチャネルから受信します。
Pullモデルのコンシューマがイベントデータの“引き出し”をサプライヤへ要求する(2)には、2つの形態があります。
注意
Pullモデルでは、サプライヤ側のアプリケーションは、サーバアプリケーションである必要があります。