この記事はこちらの投稿の続きの内容です。
前回の記事では、システム統合に必要なコンポーネントの中から、ビジネス・オペレーションの作成について解説しました。
今回の記事では、確認した2つのビジネス・オペレーションを順番を守って呼び出しを行うビジネス・プロセスの作成について解説します。
- プロダクション
- メッセージ
- コンポーネント
- ビジネス・サービス
- ビジネス・プロセス
- ビジネス・オペレーション(前回の記事)
ビジネス・プロセスは処理の調整役(司令塔)として働きます。
サンプルの中で行いたい処理の調整は、以下の内容です。
手順① 外部の Web API に都市名を渡し気象情報を問い合わせる
手順② ①の問合せ結果(気象情報)と、処理開始時に受信した購入商品名をDBへ登録する
サンプルのビジネス・プロセスでは、手順① の回答を待って手順② を動かすように調整します。
回答を待つ処理(=同期を取る処理)ですが、例えば、手順① が数日返ってこない場合、どうなるでしょうか?
数日回答を待ち続けている間にビジネス・プロセスへ次々に新メッセージが渡された場合、メッセージは一旦キューに格納されるため消失しませんが、新メッセージの処理をビジネス・プロセスが実行できず処理に遅延が発生します。
メモ: ビジネス・プロセスとビジネス・オペレーションにはキューがあります。