MicroTxの新機能

マイクロサービス対応トランザクション・マネージャ(MicroTx)リリース23.4.1とその先行リリースの変更点は次のとおりです。

リリース23.4.2の新機能

MicroTx Freeリリース23.4.2で強化されたパフォーマンスとリジリエンスを体験してください。

以前のリリースでの変更点

MicroTxの以前のリリースでの変更点は次のとおりです。

Enterprise Editionリリース23.4.1での変更点

MicroTx Enterprise Editionリリース23.4.1では、次の機能が導入されました。

MicroTxコンソールを使用したトランザクションの管理

MicroTxトランザクション・コーディネータのすべてのレプリカのヘルスを表示し、使いやすいグラフィカルWebコンソールを使用してトランザクションを管理します。「Webコンソールを使用したトランザクションの管理」を参照してください。

トランザクション・プロモーションの管理

MicroTxクライアント・ライブラリは、ローカル・トランザクションを管理します。トランザクションをローカルで処理すると、パフォーマンスが向上します。MicroTxコーディネータは、このようなトランザクションのデータベース・キャッシュおよびログの読取り、書込み、調整または保存を行わないため、ローカル・トランザクションによって時間が節約され、スループットが向上します。「グローバルおよびローカル・トランザクションについて」を参照してください。

Grafanaを使用したメトリックのビジュアル化

MicroTxコーディネータは、Prometheusで簡単に読み取れる形式でメトリックを公開します。Grafanaを使用して、Prometheusに収集されたメトリック・データをビジュアル化します。MicroTxダッシュボードをインポートして、Grafanaにメトリックを表示できます。これらのメトリックを使用して、MicroTxコーディネータのトランザクションおよびヘルスをモニターします。「パフォーマンスのモニター」を参照してください。

MicroTxによるリソース・マネージャとしてのOracle RACのサポート

XAトランザクション・プロトコルを使用するNode.js、JAX-RSおよびSpring RESTアプリケーションのリソース・マネージャとして、Oracle Real Application Clusters (RAC)を使用できます。「サポートされているリソース・マネージャ」を参照してください。

トランザクション・ログのキャッシュ

etcdまたはOracle Databaseに格納されているトランザクション・ログをキャッシュして、パフォーマンスを向上させ、読取りおよび書込み操作を最適化します。「キャッシュの有効化」を参照してください。

トランザクション・コーディネータの複数のレプリカの作成

マイクロサービス対応トランザクション・マネージャの複数のレプリカを一度に実行できます。本番環境に3つ以上のレプリカが推奨されます。「環境の詳細」を参照してください。

レプリカの数は、トランザクションの数に基づいてスケール・アップまたはスケール・ダウンできます。トランザクション・リクエストの数が少ない場合は、レプリカの数をスケール・ダウンしてリソースを効率的に使用します。

共通リソース・マネージャを使用するトランザクションの最適化

ビジネス要件に基づいて、複数のトランザクション参加側サービスに対して単一のリソース・マネージャを使用できます。複数の参加側サービスに共通リソース・マネージャを使用する場合、MicroTxはコミット処理を最適化できるため、XAトランザクションのスループットが向上し、レイテンシが低下します。「複数のアプリケーションの共通リソース・マネージャ」を参照してください。

Oracle Databaseまたはetcdにトランザクション詳細を格納

MicroTxは、内部メモリーに加えて、トランザクション状態の永続性を確保するためのデータ・ストアとしてetcdまたはOracle Databaseをサポートするようになりました。「トランザクション・ログでサポートされているデータ・ストア」を参照してください。

トランザクションのリカバリ

トランザクション・コーディネータ・サーバーに障害が発生した場合、MicroTxは、サーバーの再起動後に進行中のトランザクションを再開します。「トランザクション・リカバリについて」を参照してください。

トランザクション数の制限なし

Transaction Manager for Microservices Freeを使用すると、すべてのトランザクション・プロトコルおよびトランザクション・コーディネータのすべてのレプリカで、1時間当たり最大4800トランザクションを実行できます。Transaction Manager for Microservices Enterprise Editionのトランザクション数に制限はありません。

Freeリリース23.4.1での変更点

MicroTx Freeリリース23.4.1では、次の機能が導入されました。

MicroTxライブラリの機能拡張

機能拡張されたMicroTxライブラリは、次のアプリケーションの機能を提供します:

MicroTxによる@Transactional注釈の使用のサポート

@Transactional注釈を使用すると、XAトランザクション・プロトコルを使用するJavaアプリケーションを簡単に構成できます。「@Transactionalについて」を参照してください。

ログ相関を通じて機能拡張された診断およびトラブルシューティング

MicroTxコーディネータとMicroTxクライアント・ライブラリは、ログを生成します。障害が発生した場合は、ログを表示して問題を特定し、トラブルシューティングします。「ログ」を参照してください。

22.3.2での変更点

MicroTx 22.3.2では、次の新機能が導入されました。

XAトランザクションのラスト・リソース・コミット(LRC)の最適化

ロギング・ラスト・リソース(LLR)の最適化に加え、ラスト・リソース・コミット(LRC)の最適化を使用すると、1つの非XAリソースがグローバルXAトランザクションに参加できるようになりました。「非XAリソースの最適化」を参照してください。

サービスでの複数のリソース・マネージャのサポート

アプリケーションのビジネス・ロジックに基づいて、1つの参加側サービスに対して複数のリソース・マネージャを使用できます。1つの参加側サービスは、複数のXA準拠リソース・マネージャに接続できます。ただし、1つのトランザクションで非XAリソースは1つしかサポートされません。「1つのアプリケーションでの複数のリソース・マネージャの構成」を参照してください。

TCCトランザクション・プロトコルを使用したPythonアプリケーション用のMicroTxライブラリ

Python用のMicroTxライブラリは、Pythonアプリケーションが新しいTCCトランザクションを開始したり、既存のTCCトランザクションに参加したりする機能を提供します。以前は、TCCトランザクション・プロトコル用のMicroTxライブラリでは、JavaおよびNode.jsアプリケーションのみがサポートされていました。「TCCでのPythonアプリケーションの開発」を参照してください。

XAトランザクション通知の受信の登録

トランザクション・イニシエータ・サービスおよび参加側サービスを登録して、通知を受信できます。MicroTxは、イベントの発生時(準備フェーズの前およびMicroTxがトランザクションを正常にコミットまたはロールバックしたとき)に、登録したサービスについて通知します。イベントの発生時にビジネス・ロジックに基づいてサービスが追加のタスクを実行するようにする場合には、サービスの登録をお薦めします。「XAトランザクション通知の受信の登録」を参照してください。

WebLogic Server J2EEアプリケーション用のMicroTxライブラリ

MicroTxライブラリをWebLogic Server J2EEアプリケーションと統合できます。『HelidonとOracle WebLogic Serverの統合』「MicroTxを使用したWebLogic ServerとHelidon間のXAグローバル・トランザクションの統合」を参照してください。

22.3.1での変更点

MicroTxリリース22.3.1では、次の新機能が導入されました。

セッション・アフィニティのサポート

参加側サービスのレプリカが複数ある場合、リクエストは1つのトランザクションで異なるレプリカに向けられることがあります。参加側サービスのセッション・アフィニティを有効にすると、一意のトランザクションまたはセッションに対するすべてのリクエストは、最初のリクエストを処理した参加側サービスの同じエンドポイントまたはレプリカにルーティングされます。ビジネス・ユース・ケースによっては、トランザクション参加側サービスまたはトランザクション・コーディネータに対してセッション・アフィニティを有効にする必要がある場合があります。「セッション・アフィニティについて」を参照してください。