1.2 MicroTxのコンポーネント
MicroTxには、トランザクション・コーディネータとMicroTxライブラリの2つのコンポーネントが含まれます。
コンテナ化されたマイクロサービスであるMicroTxは、アプリケーション・マイクロサービスとともに実行されます。次の図は、MicroTxのコンポーネントがアプリケーション・マイクロサービスとどのように相互作用するかを示しています。

トランザクション・コーディネータ・サーバー
トランザクション・コーディネータは、参加側サービス間のトランザクションを管理します。
MicroTxは、トランザクション状態の永続性を確保するために、内部メモリー、Oracle Databaseおよびetcdをデータ・ストアとしてサポートします。
MicroTxライブラリ
アプリケーション・マイクロサービスは、ビジネス・ロジックを提供し、トランザクションの境界を定めます。これらのサービスは分散トランザクションに参加します。MicroTx APIを使用して、分散トランザクションを管理します。
アプリケーション開発者は、次の要因に応じてMicroTxクライアント・ライブラリの各部を使い分けます:
- マイクロサービスの開発フレームワーク(HelidonやNode.jsなど)。
- 選択したトランザクション・プロトコル(XA、LRA、TCCなど)。
- アプリケーションがトランザクションを開始するか、トランザクションに参加するか。
- トランザクション・イニシエータ・サービス - このようなアプリケーションは、トランザクションを開始して終了します。前の図で、マイクロサービス1はトランザクション・イニシエータ・サービスであり、トランザクションを開始するリクエストをMicroTxに送信します。
- トランザクション参加側サービス - このようなアプリケーションは、トランザクションに参加するだけです。トランザクションを開始することはありません。前の図では、マイクロサービス2およびマイクロサービス3が、トランザクションに含まれるトランザクション参加側サービスです。
親トピック: MicroTxについて