sagaSagaパターン
Sagaパターンは、長いトランザクションを複数の手順に分け、失敗時には補償処理で完了済みの手順を取り消す設計パターン。
記事1本
最終言及 Sagaは、複数のサービスやリソースにまたがる長時間の処理を、それぞれ単独で完了する小さな手順の連なりとして扱う設計パターンである。各手順にはその結果を取り消す補償処理を対にしておき、途中の手順が失敗した場合は完了済みの手順の補償処理を逆順に実行して、全体を一貫した状態に戻す。
一つのデータベーストランザクションでまとめにくいマイクロサービスアーキテクチャで、データの一貫性を保つ方法として広く使われている。中央のオーケストレーターが手順を指揮する方式と、サービス同士がイベントをやり取りして進める方式がある。
この説明は、AIPOSTの記事と広く知られた事実をもとにまとめたものです。誤りがあれば訂正依頼でお知らせください。