1.3 分散トランザクション・プロトコルについて

MicroTxでは、次の分散トランザクション・プロトコルがサポートされています:

XAを使用するのは、ローカル・データベース・トランザクションによって提供される一貫性のように強力な一貫性が必要な場合です。これにはトランザクションのすべてのACIDプロパティが存在します。たとえば、財務アプリケーションです。Sagaプロトコルを使用するのは、完了に時間がかかる可能性があるトランザクションの場合です。Sagaプロトコルを使用すると、ロックの問題を軽減できます。TCCプロトコルは、飛行機座席やホテル客室などの予約モデルを使用するアプリケーションに適しています。SagaTCCはどちらも長時間実行トランザクションをサポートしています。Sagaの方が一般的ですが、成功したSagaの完了と失敗したSagaの補正のために、アプリケーション固有のアクションが必要です。一方、TCCでの補正は、予約を削除してから予約されていたものを使用可能リソースのプールに返すことによって実行されます。