15.1 PSS(Publish and Subscribe System)
【PSSとは】
- PSSとはPublish and Subscribe Systemの略で、日本語では出版-購読型モデルと呼ばれます。
- メッセージの送信者(出版者)は特定の受信者(購読者)を想定せずにメッセージを送ります。
- 受信者(購読者)は、興味のあるトピックを購読することで必要なメッセージのみ受け取ります。
- 出版者と購読者は互いに相手を意識せず、結合度が低いためスケーラビリティがよいのが特徴。
【xpiにおけるPSS】
- PSSを使用すると、あるフローでイベントを発行することによって、トピックを購読している他の複数のフローを起動することができます。
- イベントを発行するフロー(出版者)や、トピックを購読するフロー(購読者)が増えた場合でも、既存のフローを修正する必要はありません。
【関連コンポーネント】
PSSパブリッシュ・・・PSSイベントを発行します。
PSSサブスクライブ・・・フローにPSSトピックを購読させます。
PSS削除・・・フローが購読しているPSSトピックを取り消します。
【PSSパブリッシュ】イベントを発行する
【PSSサブスクライブ】 フローにトピックを購読させる
【PSS削除】 フローのトピック購読を取り消す
【使用の手順】
トピックを登録する・・・PSSトピックリポジトリでPSSトピックを登録します。
トピックを購読する・・・フローのプロパティ「サブスクライブ名」に購読するPSSトピックを設定します。
トピックを購読させる・・・PSSサブスクライブ コンポーネントを使用し、フローにPSSトピックを購読させます。
または 取り消す・・・PSS削除コンポーネントを使用し、フローが購読しているトピックを取り消します。
イベントを発行する・・・フロー内にPSSパブリッシュコンポーネントを配置し、発行するPSSトピックを設定します。
【PSSトピックの登録】
- PSSトピックリポジトリにてPSSトピックを登録します。
【フロー特性で購読】
- フロー特性「サブスクライブ名」にPSSトピックを設定することで、そのPSSトピックのイベントが発行されたときに、そのフローを起動することができます。
【PSSサブスクライブコンポーネント】
- フローにPSSトピックを購読させます。
PSS名 | 購読させるPSSトピック名を設定する。 |
フローID | PSSイベントを購読させるフローを設定する。 |
一度 | Yesの場合、1度イベントが購読されると購読要求が削除される。 |
【PSS削除コンポーネント】
- フローが購読しているPSSトピックを取り消します。
PSS名 | 取り消すPSSトピック名を設定する。 |
フローID | 購読を取り消すフローを設定する。 |
【PSSパブリッシュコンポーネント】
- PSSイベントを発行します。
PSS名 | 発行するPSSトピック名を設定する。 |
メッセージ | ここで設定した内容が呼び出されるフローのC.UserStringに受け渡される。 |
BLOB | ここで設定した内容が呼び出されるフローのC.UserBlobに受け渡される。 |
コード | ここで設定した内容が呼び出されるフローのC.UserCodeに受け渡される。 |