ニュース
マイクロサービスにおけるSagaパターンの仕組み:Sagaパターンの使用例、実装の違い
Sagaパターンは、ある操作をサポートするために複数のマイクロサービスで一連のステップを実行しなければならない場合に最適なパターンだ。
Sagaパターンは、ソフトウェアアーキテクチャのスタイルの一つであり、ステップごとに実行される分散タスクを、フェイルセーフな方法で管理することを目的としている。Sagaパターンは、マイクロサービス指向アーキテクチャ(MOA)に適している。
MOAで構成される各サービスは、自己完結型で独立しており、それぞれが独自のロジックとデータを保持する。
マイクロサービスは通常、メッセージングフレームワークを通じてデータが共有される。Sagaパターンでは、各ステップが特定のマイクロサービスに対応する。Sagaパターンの主なメリットは、各ステップを順に追っていき、問題が発生した場合には、決められた方法で対処する「補償トランザクション」にある。あるステップで何らかの問題が発生した場合、ワークフローを最後の適切な状態に戻すよう補償トランザクションが実行される。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 開発者が注意すべき「マイクロサービスの問題点」、そのトップ10を解説
TechTagetは、「マイクロサービスの問題点」に関する記事を公開した。多くのメリットが得られるマイクロサービスだが、管理やコスト、デバッグの難易度などアプリケーション開発者が注意すべき点も多いという。 - マイクロサービスの原則をプラットフォームエンジニアリングにもたらす「Dapr」とは?
マイクロサービスが主流となる中、マイクロサービス向けに開発された「Dapr」が、プラットフォームエンジニアにとって魅力的なものとなっている。 - 「マイクロサービスに出遅れた」ところは、先人から何を学べるか
これまでマイクロサービスアーキテクチャに取り組んだ組織の多くは、試行錯誤を重ねて、自らの組織における最適解を見いだしている。いま、マイクロサービスを考える人たちは、先人から何を学べばいいのだろうか。