目次 前 次 PDF


分散アプリケーションでのネットワーク管理

分散アプリケーションでのネットワーク管理
このトピックには次の項が含まれます:
分散アプリケーション用のネットワークの構築
分散アプリケーション用のネットワークを構築する作業は、主に構成フェーズまたはセットアップ・フェーズで行われます。ネットワークを定義し、アプリケーションを起動すると、ネットワークは自動的に構築されます。
この章では、ネットワークを介してデータを移動する方法と、ネットワークに関する操作を制御する構成ファイルのパラメータを設定する方法について説明します。
ネットワーク・データの圧縮
Oracle Tuxedoシステムでは、アプリケーションのプロセス間で送信されるデータを圧縮できます。データ圧縮はほとんどのアプリケーションで役立ち、大規模な構成を運用する場合に重要です。データ圧縮は、同じマシン上でメッセージの送受信を行う場合(ローカル・データ圧縮)、または異なるマシン間でメッセージの送受信を行う場合(リモート・データ圧縮)に使用できます。どちらの圧縮形式にも次の利点があります。
プロセス間通信(IPC)のキューを使用してメッセージが送信されるため、ローカル・データ圧縮を行うと、IPCリソースの消費を抑えることができます。
ネットワーク経由でメッセージが送信されるため、リモート・データ圧縮を行うと、ネットワーク帯域の消費を抑えることができます。
圧縮レベルの設定
データ圧縮を使用するには、構成ファイルのMACHINESセクションのCMPLIMITパラメータを次のように設定する必要があります。
CMPLIMIT=string_value1[,string_value2]
このパラメータの文字列値には、リモート・プロセス(string_value1)およびローカル・プロセス(string_value2)で処理されるメッセージのサイズのしきい値を指定します。最初の文字列のみが必須です。どちらの文字列も、デフォルトはMAXLONGパラメータの値です。
TMCMPPRFMパラメータを設定して、圧縮とCPUのパフォーマンスとのバランスを調整することもできます。圧縮レベルを高くすると、圧縮速度は下がりますがネットワーク帯域幅を効率的に利用できます。圧縮レベルを低くすると、圧縮速度は上がり、CPU使用率を節約できます。
圧縮レベルを指定するには、次の手順に従います。
1.
UBBCONFIG構成ファイルのCMPLIMITパラメータを使用して、圧縮のしきい値を設定します。
2.
(オプション) TMCMPPRFM環境変数を設定します。TMCMPPRFMの値には、1 - 9の範囲の1桁の数値を指定します。デフォルトは1です。
圧縮レベルの最低値1を指定すると、圧縮のパフォーマンスは最も高速になります。圧縮レベルの最高値9を指定すると、圧縮のパフォーマンスは最も低速になります。数値が小さければ小さいほど、圧縮ルーチンの実行速度は速くなります。
TMCMPPRFM変数の設定方法の詳細は、『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』tuxenv(5)に関する項を参照してください。
データ圧縮のしきい値の選択
メッセージに対して圧縮のしきい値を指定できます。つまり、指定したしきい値を超えるメッセージは圧縮されます。圧縮のしきい値を指定するには、CMPLIMITパラメータを設定します。手順は、4-2ページの「圧縮レベルの設定」を参照してください。
データ圧縮のしきい値を選択する場合は、次の基準を参考にしてください。
サイトでOracle Tuxedoリリース4.2.1以降を実行している場合は、リモート・データ圧縮の使用を検討してください。設定は、ネットワークの速度によって異なります。たとえば、イーサネット(高速ネットワーク)とX.25(低速ネットワーク)には、別の設定を割り当てます。
高速ネットワークの場合は、Oracle Tuxedoシステムで生成されるファイル転送処理に対し、下限値を指定してリモート・データ圧縮を設定します。(ファイル転送については、後の注意を参照してください。)つまり、送信サイトまたは受信サイトで、ファイル転送の対象となるメッセージだけが圧縮されます。アプリケーション内の各マシンの制限値は異なる場合があります。このような場合は、各マシンに対して下限値を選択してください。
低速ネットワークの場合は、すべてのマシンに対してリモート・データ圧縮のしきい値をゼロに設定します。つまり、すべてのアプリケーションとシステム・メッセージは圧縮されます。
Oracle Tuxedoリリース4.2.1以降が稼働中のサイトでは、リリース4.2.1以前のサイトと相互運用している場合も、ローカル・データ圧縮の使用を検討してください。これにより、少ないIPCリソースで処理を実行できます。また、この設定により多くのファイル転送が不要になり、ファイル転送が必要な場合もファイルのサイズを大幅に縮小できます。詳細は、『Oracle Tuxedoシステムのインストール』メッセージ・キューとメッセージに関する項を参照してください。
ローカル・データ圧縮の場合、アプリケーション内の各マシンに対して、異なるしきい値を割り当てることができます。このような場合は、各マシンに対して常に下限値を選択します。
注意:
圧縮方法は転送されるデータの種類によって異なるため、環境に応じた最適な設定を行うことをお薦めします。
関連項目
『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』DMCONFIG(5)に関する項
『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』tuxenv(5)に関する項
『Oracle Tuxedo ATMIの紹介』データ圧縮に関する項
ネットワーク・リクエストのロード・バランシング
ロード・バランシングがオンになっている場合、つまりアプリケーション構成ファイルのRESOURCESセクションでLDBALYに設定されている場合、Oracle Tuxedoシステムは、リクエストをネットワーク全体に均衡化します。ロード情報はグローバルには更新されないため、各サイトにはリモート・サイトにおけるロードの独自のビューを持ちます。
構成ファイルのMACHINESセクションのNETLOADパラメータ、またはTMNETLOAD環境変数を使用すると、より多くのリクエストをローカル・キューに送るよう強制できます。このパラメータの値はリモート・キューのロードに追加されるため、リモート・キューに実際より多くの作業があるように見えます。そのため、ロード・バランシングがオンになっていても、ローカル・リクエストはリモート・キューよりもローカル・キューに頻繁に送られます。
たとえば、サーバーAとサーバーBがロード・ファクタ50のサービスを提供するとします。サーバーAは呼出し側クライアントと同じマシン上で稼働しており(ローカル)、サーバーBは別のマシン上で稼働しています(リモート)。NETLOADを100に設定すると、1つのリクエストがサーバーBに送られるたびに約3つのリクエストがサーバーAに送られます。
ロード・バランシングに影響するもう1つのメカニズムは、アイドル状態のローカル・サーバーのプリファレンスです。クライアントと同じマシン上にあるサーバーが必要なサービスを提供し、かつアイドル状態にある場合は、常に、このサーバーにリクエストが送信されます。ローカル・サーバーが使用可能であることは即座に認識されるため、この決定はすべてのロード・バランシングの設定に対して優先されます。
関連項目
『Oracle Tuxedo ATMIの紹介』ロード・バランシングに関する項
データ依存型ルーティングの使用
データ依存型ルーティングは、クライアントが次のものにサービスをリクエストした場合に有用です。
水平分離型データベースとは、セグメントに分割された情報リポジトリであり、各セグメントに異なるカテゴリの情報が格納されます。これは、各本棚に異なるカテゴリ(伝記、フィクションなど)の本が収納されている図書館に似ています。
ルール・ベース・サーバーとは、サービス・リクエストをサービス・ルーチンに転送する前に、サービス・リクエストが特定のアプリケーション固有の条件を満たしているかどうかを判定するサーバーです。ルール・ベース・サーバーは、ほとんど同じ複数のリクエストに対して、ビジネス上の理由で多少異なる処理を行う場合に有用です。
注意:
分散型Oracle Tuxedo CORBAアプリケーションのファクトリ・ベース・ルーティングの詳細は、『CORBAアプリケーションのスケーリング、配布およびチューニング』を参照してください。
水平分離型データベースを使ったデータ依存型ルーティングの例
銀行取引アプリケーションで2つのクライアントが口座3と口座17という2つの口座の現在の残高を照会するリクエストを発行したとします。アプリケーションでデータ依存型ルーティングが使用されている場合、Oracle Tuxedoシステムによって次の処理が実行されます。
1.
2.
3.
図4-1に、このプロセスを示します。
図4-1 水平分離型データベースでのデータ依存型ルーティング
ルール・ベース・サーバーでのデータ依存型ルーティングの例
次の規則を持つ銀行取引アプリケーションがあるとします。
2つのクライアントがそれぞれ$100と$800を引き出すリクエストを発行したとします。引出しのルールでデータ依存型ルーティングが有効になっている場合、Oracle Tuxedoによって次の処理が実行されます。
1.
2.
3.
図4-2に、このプロセスを示します。
図4-2 ルール・ベース・サーバーでのデータ依存型ルーティング
関連項目
『Oracle Tuxedo ATMIの紹介』データ依存型ルーティングに関する項
『Oracle Tuxedoアプリケーションの設定』第9章「ネットワークへのATMIアプリケーションの分散」
『Oracle Tuxedoアプリケーションの設定』第10章「分散型のATMIアプリケーション用の構成ファイルの作成」
『Oracle Tuxedoアプリケーションの設定』第11章「分散アプリケーションのネットワーク設定」
ネットワーク構成の変更
アプリケーションの稼働中に構成パラメータを変更するには、tmconfig(1)コマンドを実行します。このコマンドは、Oracle Tuxedoシステム管理情報ベース(MIB)へのシェル・レベルのインタフェースです。
tmconfigを使用すると、システムを停止せずにTUXCONFIGファイルの表示や変更を行うことができます。たとえば、アプリケーションの起動中にマシンやサーバーなどの新しいコンポーネントを追加することができます。
関連項目
『Oracle Tuxedo ATMIの紹介』コマンド行ユーティリティを使用したアプリケーションの操作に関する項
『Oracle Tuxedoコマンド・リファレンス』tmconfig、wtmconfig(1)に関する項
『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』MIB(5)に関する項
『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』TM_MIB(5)に関する項
『CORBAアプリケーションにおけるセキュリティの使用』リンク・レベルの暗号化の管理に関する項
『CORBAアプリケーションにおけるセキュリティの使用』公開鍵セキュリティの管理に関する項

Copyright ©1994, 2017,Oracle and/or its affiliates. All rights reserved