![]() |
![]() |
|
|
トランザクションとは
トランザクションとは、関連するアクションの集まりです。グローバル・トランザクションとは、複数のプログラムおよび複数のリソース・マネージャにまたがる関連アクションの集まりです。この章で使用する「トランザクション」は、グローバル・トランザクションを意味します。
トランザクションの単純な例として、銀行口座からの引き出し処理があります。この処理では、一定の金額を引き出して預金残高の状態を変更する、という一連のアクションが行われます。このトランザクションでは、次の 3 つの操作を含む手順を実行する必要があります。
トランザクションの手順 |
銀行口座の引き出し処理の手順 |
---|---|
1. 実行するアクティビティを確認します。 |
1. 引き出し処理を行うかどうかを確認します。 |
2. トランザクションの処理を実行します。 |
2. 口座から指定された金額を引き出します。 |
3. 完了した処理の永続的なレコードを作成します。 |
3. 預金残高のレコードを更新します。 |
これらの処理は、このトランザクション専用に作成されたソフトウェア・モジュールによって実行されます。このモジュールには、トランザクションを開始および終了するコードも必要です。トランザクションの開始および終了を示すコード部分が、トランザクションのソフトウェア・モジュールの主要な部分ではない場合、これらのコード部分は通常、別のモジュールにパッケージ化されます。 トランザクション・コーディネータは、トランザクションに参加するリソース間で、トランザクションを管理するロジックを実行するソフトウェア・モジュールです。 ACID 特性とは 銀行口座からの引き出し処理などのトランザクションでは、トランザクションを構成する操作がすべて成功するか、またはすべて失敗しなければなりません。たとえば、トランザクションを構成する操作のうち、1 つの操作が成功し、別の操作が失敗するとします。つまり、銀行口座から預金を引き出しても、引き出し後の金額が預金残高に反映されないとすれば、その銀行は営業を続けることができません。 トランザクションを構成する操作は、すべて成功するか、または失敗しなければならない、という特性を「原子性」と言います。BEA Tuxedo システムのすべてのトランザクションは、原子性という特性を持ち、さらに、「一貫性」、「独立性」、および「持続性」という関連する特性を備えています。BEA Tuxedo システムで実行されるトランザクションのこうした 4 つの属性を ACID 特性と呼びます。 BEA Tuxedo トランザクションの ACID 特性
トランザクションの成功と失敗 トランザクションの成功または失敗は、原子性の要件によって決まります。
![]() |
![]() |
![]() |
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|