この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

イベント駆動型ソフトウェアアーキテクチャ

イベント駆動型 (またはメッセージ駆動型) のソフトウェアアーキテクチャは、イベントプロデューサ、イベントコンシューマ、およびチャネルで構成されます。このアーキテクチャは、イベントプロデューサをイベントコンシューマから分離し、接続されたシステムの通信モデルを簡素化するため、大規模分散システムに適しています。
イベント
ビジネスプロセスで意味のある状態の変化。たとえば、購入注文の実行は意味のあるイベントです。注文履行センターで、注文を処理する前に通知を受け取ることが必要であるためです。
イベントメッセージ
イベントに関するデータが含まれるメッセージ。イベント通知とも呼ばれます。たとえば、注文についての情報を含む発注関連の通知をイベントメッセージにすることができます。
イベントプロデューサ
イベントメッセージの公開者。
イベントチャネル
イベントのストリームで、そのストリーム上でイベントプロデューサはイベントメッセージを送信し、イベントコンシューマはそのメッセージを読み込みます。プラットフォームイベントの場合、このチャネルは、単一プラットフォームイベント用のチャネルで、そのプラットフォームイベントのすべてのイベントメッセージをグループ化します。
イベントコンシューマ
チャネルからのメッセージを受信するチャネルの登録者。たとえば、新規注文についての通知を受け取る注文履行アプリケーションなどがあります。
イベントバス
公開/登録モデルを使用したイベントストリーミングを可能にする通信およびストレージサービス。イベントバスにより、保持期間内であればいつでも、保存されているイベントメッセージを取得できます。

要求-応答通信モデルでは、システムは Web サービスまたはデータベースに対して要求を実行し、特定の状態に関する情報を取得します。要求の送信者はサービスへの接続を確立し、サービスの可用性に依存しますん。

これと比較して、イベントベースモデルでは、システムはイベントの発生時に情報を取得し、その情報にほぼリアルタイムで対応できます。イベントプロデューサは、イベントを受信するコンシューマを認識しません。任意の数のコンシューマが同じイベントを受信してそのイベントに対応できます。プロデューサとコンシューマ間の唯一の連動関係は、メッセージコンテンツのセマンティックです。

イベントバス

プラットフォームイベントメッセージはイベントバスに公開され、そこで一時的に保存されます。CometD (ストリーミング API) クライアントを使用して、保存されたイベントメッセージをイベントバスから取得できます。各イベントメッセージに、ストリーム内のイベントを識別する ReplayId 項目が含まれており、これを使用して特定のイベント後のストリームを再生できます。詳細は、『ストリーミング API 開発者ガイド』「メッセージの永続性」を参照してください。

イベントベースのソフトウェアアーキテクチャの図