16 Oracle Mediatorのチューニング

Oracle Mediatorをチューニングし、サービスおよびイベントの各種プロバイダとコンシューマを仲介するためのフレームワークとして、そのパフォーマンスを最適化できます。

Oracle Mediatorについて

Mediatorは、Oracle SOA Suiteのコンポーネントであり、選択的ルーティング、トランスフォーメーション、検証などの仲介機能を備え、同期、非同期、イベントのパブリッシュ、イベントのサブスクリプションといった様々なメッセージ交換パターンに対応しています。

Oracle Mediatorは、サービスおよびイベントの各種プロバイダとコンシューマを仲介するフレームワークを提供します。メディエータ・サービス・エンジンは、SOAサービス・インフラストラクチャのJava EEアプリケーションと連携して動作します。

ノート:

SOA Suiteの詳細は、Oracle SOA SuiteでのSOAアプリケーションの開発を参照してください。

Oracle Mediatorの詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』Oracle Mediatorのサービス・コンポーネントとエンジンの管理を参照してください。

Mediatorのパラメータのチューニング

必要な場合には、Oracle Mediatorのプロパティをチューニングしてパフォーマンス向上を図ることができます。

ほとんどのビジネス環境では、顧客データは、取引先、レガシー・アプリケーション、エンタープライズ・アプリケーション、データベース、カスタム・アプリケーションなど、様々なソースに点在しています。こうしたデータを効率的に統合するという課題は、Oracle Mediatorを使用することで解決できます。Oracle Mediatorは、同じデータの更新やその他の処理を共通して行うすべてのアプリケーションに対して、リアルタイムのデータ・アクセスを実現します。

ノート:

Oracle Mediatorプロパティのチューニングを始める前に、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』Oracle Mediatorのサービス・コンポーネントとエンジンの管理にあるOracle Mediatorに関する項を必ず読み、内容を理解しておいてください。

表16-1に、パフォーマンスのためにチューニングできるパラメータ値を示します。パフォーマンスを改善するためにMediatorをチューニングする必要があることはあまりないことに注意してください。

表16-1 重要なMediatorチューニング・ノブ

パラメータ チューニングに関する推奨事項

DeferredMaxRowsRetrieved

デフォルト: 20行

1回の反復でDBから遅延メッセージ処理をより多く取得する場合は、デフォルト値を大きくします。

Mediatorではこのパラメータは必ずパラレル・ルーティング・ルールとともに使用されることに注意してください。

DeferredLockerThreadSleep

デフォルト: 2秒

遅延メッセージが合計メッセージのなかで占めている割合が小さい場合、デフォルト値を大きくして、遅延メッセージを取得するためのDBへのトリップ実行を少なくします。

一部のユースケース・シナリオでは、3600秒(60分)のアイドル時間を利用できます。

metricsLevel

デフォルト: enabled

DMSメトリック・データを収集する必要がない場合、このパラメータを無効にするとパフォーマンスを改善できます。

各パラメータの詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』Oracle Mediatorのサービス・コンポーネントとエンジンの構成を参照してください。

メッセージに対するリシーケンサの使用

リシーケンサは、関連性はあるが順序が正しくないメッセージのストリームを再配置して順序どおりに戻すために使用します。

ランダムな順序で届く着信メッセージを順序付けし、ターゲット・サービスに正しい順序で送信します。

表16-2に、Mediatorのリシーケンサに対するチューニング可能なパラメータを示します。『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』Oracle Mediatorサービス・エンジン・プロパティの構成に関する項で説明されているいずれかの方法を使用して、「メディエータ・サービス・エンジン・プロパティ」ページまたはシステムMBeanブラウザにアクセスすることによって、次のパラメータをチューニングできます。

表16-2 Mediatorのリシーケンサに対する重要なチューニング・ノブ

パラメータ チューニングに関する推奨事項

ResequencerMaxGroupsLocked

デフォルト: 4行

1回の反復でデータベースからロックするリシーケンサ・グループを増やす場合は、デフォルト値を大きくします。

ResequencerLockerThreadSleep

デフォルト: 10秒

リシーケンサ・グループが合計グループおよびメッセージの中で占めている割合が小さい場合、デフォルト値を大きくして、リシーケンサ・グループをロックするためのデータベースへのトリップ実行を少なくします。

DeleteMessageAfterComplete

デフォルト: True

値をTrueに設定して、メッセージを正常実行後に削除します。負荷が高いユースケースの場合、このようにすると多くのデータベース領域が必要になります。

デフォルト値をFalseに変更すると、リシーケンスされたメッセージはリシーケンサ・データベースに保持されます。これによってリシーケンサ・データベース問合せが遅くなり、パフォーマンスが低下します。

『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』リシーケンスされたメッセージの構成に関する項を参照してください。