17 Oracle Managed File Transferのチューニング

Managed File Transfer (MFT)をチューニングし、管理対象ファイル・ゲートウェイとして、そのパフォーマンスを最適化できます。

Managed File Transferについて

Oracle Managed File Transfer (MFT)は、エンド・ツー・エンドで高いパフォーマンスで動作する標準ベースの管理対象ファイル・ゲートウェイです。

ファイルの暗号化、スケジューリング、埋込みFTPサーバーと埋込みsFTPサーバーなどの機能を備えた軽量なWebベースのデザインタイム・コンソールで、ファイル転送の設計、デプロイメントおよび監視を実行できます。

Managed File Transferの詳細は、『Oracle Managed File Transferの使用』Oracle Managed File Transferの理解に関する項を参照してください。

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

MFTパラメータをチューニングし、パフォーマンスを最適化できます。

表17-1に、MFTパフォーマンスの向上のためにチューニングが必要になる可能性があるパラメータを示します。MFTの問題のある領域を診断するには、『Oracle Managed File Transferの使用』Oracle Managed File Transferのモニタリングに関する項およびOracle Managed File Transferの管理に関する項を参照してください。

表17-1 重要なMFTチューニング

パラメータ 問題点 チューニングに関する推奨事項 トレードオフ

プロセッサ数

デフォルト: 各タイプのプロセッサごとに2個

JMSメッセージがメッセージ処理キューに蓄積されています。

メッセージが蓄積されているキューのプロセッサ数を増やします。

最適な値はメタデータおよび受信ペイロードによって異なります。DMSメトリックを使用して最適なプロセッサ数を計算できます。

DMSメトリックを有効にするには、MBeanプロパティのenablePerformanceMetricを追加します。後でメトリックを無効にするには、値をFalseに設定します。

プロセッサ数が増えると、同時処理に必要なシステム・リソースが増えます。

埋込みFTP/SFTPサーバーの最大同時リクエストおよび最大ログイン数の設定

デフォルト: 10

  • 複数の接続リクエストが待機状態です

  • 埋込みサーバー・ログ・ファイルに「ログイン・ユーザー数が多すぎるため、ユーザーは切断されます」というメッセージが表示されます

同時リクエストの最大数および埋込みFTP/SFTPサーバーの最大ログイン数を大きくします。

パフォーマンスが直線的に拡張を続けるかぎり、数を増加できます。

埋込みサーバー・サービス(FTP/SFTP)が使用されていない場合は、この設定を無効にします。

数が増えると、同時処理に必要なシステム・リソースが増えます。

LDAPの最大プール

デフォルト: 10

LDAPへの同時接続数が常に上限に達しています。

数を大きくします。

LDAPは、WebLogicサーバーにデプロイされているすべてのアプリケーションの共有リソースであるため、LDAP接続をモニターしてこの値を適切に調節する必要があります。

数が増えると、必要なシステム・リソースが増えます。

MFTDataSourceへの最大接続数

デフォルト: 50

データ・ソースへの同時接続の数が、常に上限に達しています

パフォーマンスが直線的に拡張を続けるかぎり、接続数を増やします。

最適な値は、プロセッサ数、リスニング・ソース・スレッド・モデル、および埋込みサーバーの最大同時リクエスト設定に基づいて決定できます。

数が増えると、必要なシステム・リソースが増えます。

チェックサムの生成設定

デフォルト: Enabled

全体的なMFTメッセージ処理が遅くなっています

MFTから配信されたペイロードのチェックサム検証が不要な場合は、このパラメータを無効にします。

チェックサムの生成は時間がかかる操作です。

定期的なパージ

デフォルト: Disabled

  • ディスク領域が上限に近づいています

  • MFTの表によって使用されている表領域が、割り当てられた表領域の上限に達しています

パージを実行してディスク領域または表領域を解放します。

履歴情報またはデータは破棄されます。

表17-2 に、通常はチューニングする必要がないチューニング・プロパティを示します。これらのパラメータを調べて値が変更されたかどうかを確認できるように、デフォルト値を保持することをお薦めします。

表17-2 重要度が低いまたは中間のMFTパラメータ

パラメータ 問題点 チューニングに関する推奨事項 トレードオフ

ブロードキャスト・ユースケースの処理関数またはコールアウト使用の推奨事項

デフォルト: ターゲット・レベル

関連付けられた処理関数またはコールアウトがターゲットごとに実行されますが、これはパフォーマンスを低下させます。

ブロードキャスト・ユースケースの場合、処理関数またはコールアウトを可能なかぎりターゲット・レベルではなくソース・レベルで関連付けます。

なし。

サブフォルダ数のMBean設定

デフォルト: 256

ファイルを格納するための多数のサブフォルダにおけるMFT切替えによって、ディスク・パフォーマンスの低下が発生しています。

サブフォルダ数を少なくします。

サブフォルダの数を減らすと、各サブフォルダに格納されるファイルの数が増加します。着信ファイルのボリュームが大きい場合、1つのサブフォルダ内のファイル数が多いとパフォーマンスが低下します。

インライン・ペイロードのストア設定

デフォルト: ファイル・システム

ディスクからWebサービス・ソースのインライン・ペイロードへのアクセスの時間がかかりすぎているため、パフォーマンスが低下しています。

インライン・ペイロードを、ファイル・システムではなくデータベースに格納します。

インライン・ペイロードはデータベースに格納されるため、MFTによって使用される表のサイズが大きくなります。

ターゲット・レベルでの「変更したファイルを常に保存」設定

デフォルト: False

監査目的でこの設定をTrueに変更すると、ディスク領域の使用量が増加します。

デフォルト値のFalseでは、ディスク領域使用量が減少します。

監査情報が使用できなくなります。

ターゲットに関連付けられた前処理がある場合、ターゲット・レベルの再送信は機能しないことに注意してください。

minFileSizeForProgressMonitor

デフォルト: 10 MB

バイト転送に関する更新が頻繁です。

最小ファイル・サイズを指定して、大きいファイルに対してのみ転送の進行状況画面が表示されるようにします。

指定した最小よりも小さいファイルの場合は、ファイル転送進行状況が表示されません。

progressMonitorTimeToCommit MBean

デフォルト: 4

バイト転送に関する更新が頻繁です。

最小ファイル・サイズを指定して、大きいファイルに対してのみ転送の進行状況画面が表示されるようにします。

進行中のファイル転送に対して転送されたバイトに関するデータベース更新が遅くなります。

MaxMdsSessionCacheCount

デフォルト: 100

MDSキャッシュ・メモリー・フットプリントによってメモリー不足例外が発生しました。

この値を小さくします。

キャッシュからのデータ・アクセスの方が早いため、これを小さくすると、全体的なMFTメッセージ処理のパフォーマンスが低下します。

リモートFTP / SFTP/ FILEタイプのソースのチューニング

ポーリング間隔が過ぎた後でもMFTでファイルを選択できない場合、リモートFTP/SFTP/FILEタイプのソースをチューニングする必要があります。MFTは、これらのすべてのソース・タイプの下でJCAアダプタを使用します。テクノロジ・アダプタの理解Oracle JCAアダプタ・フレームワークのパフォーマンスとチューニングに関する項に示されているSOAアダプタに関する推奨事項を参照してください。

表17-3にプロパティを示します。

表17-3 リモートFTP/SFTP/FILEタイプのソースのチューニング

パラメータ 問題点 チューニングに関する推奨事項 トレードオフ

ThreadCount

デフォルト: -1

グローバル・プール内のスレッド数が不足しているため、優先度が高いエンドポイントのファイル・ダウンロードが遅くなっています。

0よりも大きい値を指定します。これによって、ファイルをダウンロードするために指定したエンド・ポイントに専用のスレッド・プールが作成されます。

値が大きすぎる場合、1つのエンド・ポイントに多数のスレッドが割り当てられ、全体的なパフォーマンスが低下することがあります。

SingleThreaded

デフォルト: False

まれに、グローバル・スレッドを使用したくない場合や、優先度が低いエンド・ポイントに別のスレッド・プールを割り当てたくない場合があります。

値をTrueに設定します。

trueに設定すると、新しいファイルのポーリングおよびダウンロード用のスレッドが単一になるため、エンド・ポイントからのファイルのダウンロードが遅延する場合があります。

MDSラベルの最小化

アーティファクトのデプロイメントによって、新しいMDSラベルが作成されます。MDSラベルが増えると、メモリー・フットプリントおよびメタデータを取得するための時間が増えます。

通常、ユーザーはデプロイメントに関して次のベスト・プラクティスに従う必要があります。

  • 頻繁なデプロイメントおよびメタデータ作成を最小化します。

  • 一括デプロイメントのWLSTコマンドを使用します。

  • メタデータへのすべての変更を行い、それらを一度にデプロイします。

マテリアライズド・ビューのリフレッシュ間隔の調整

マテリアライズド・ビューは1分ごとにリフレッシュされます。データベース・サーバーの負荷が高い場合、リフレッシュ頻度を1分よりも大きくします。

MFTコンソールのマテリアライズド・ビューからデータを表示できます。データベース・サーバーで高い負荷が検出される場合、次のコマンドを使用してこのリフレッシュ頻度を調整できます。

ALTER MATERIALIZED VIEW <<MV_NAME>> REFRESH NEXT <<REFRESH_INTERVAL>>;

MFTで使用されるマテリアライズド・ビューは次のとおりです。

  • MV_MFT_PAYLOAD_INFO

  • MV_MFT_SOURCE_INFO

  • MV_MFT_SOURCE_MESSAGE

  • MV_MFT_TARGET_INFO

  • MV_MFT_TRANSFER

  • MV_MFT_TRANSFER_COUNT_INFO