分散アプリケーションとは、Oracle Tuxedoシステムがインストールされた複数のコンピュータ上で動作するアプリケーションのことです。コンピュータどうしは接続されており、ハードウェアやソフトウェア、アクセス方式、および通信プロトコルにより、ネットワーク経由で通信できます。Oracle Tuxedoシステムは、メッセージのエンコード、ルーティング、およびデコードを行い、処理されたメッセージをネットワーク経由でマシンに送信します。これらのタスクは自動的に実行されます。
分散アプリケーションのサポートに必要なネットワーク機能を構成するには、表12-1の構成ファイルに次のエントリを指定します。
分散アプリケーションでは、データはネットワーク上で次のように送信されます。
分散アプリケーションでは、ネットワーク上でのデータの送受信にパラレル・データ回線を使用すると、次のような利点を活用できます。
BRIDGE
を頻繁に使用できます。BRIDGE
でより高いスループットを実現できます。NETGRPNO
)が最も大きい回線に流れるように、システム側でスケジューリングされます。この回線がビジー状態の場合、トラフィックは次の回線、つまりネットワーク・グループ番号が2番目に大きい回線に自動的にスケジューリングされます。すべての回線がビジー状態の場合は、回線が使用可能になるまでデータはキューに入れられます。ただし、パラレル・データ回線を使用するかどうかを決定する前に、メッセージを順番に処理する必要があるかどうかを判断してください。システムでは、1つの特定のデータ回線に会話接続をバインドすることにより、会話型メッセージの正しいシーケンスが確保されます。
すべてのメッセージが順番に送信される必要がある場合、非会話型メッセージのシーケンスも追跡されるようにアプリケーションをプログラミングします。この方法を使用する場合、パラレル・データ回線は構成しない方がよいでしょう。
図12-1は、あるマシンから別のマシンへのデータの流れを示します。この図は、マシンAとマシンBで構成される例に基づいています。まず、BRIDGE
は、両方のマシンに共通のネットワーク・グループであるMAGENTA_GROUP
、GREEN_GROUP
およびDEFAULTNET
を識別します。
優先度が同じネットワーク・グループ(NETPRIO
パラメータの値が同じグループ)には、データは並列に流れます。優先度が異なるネットワーク・グループは、フェイルオーバー用です。
#次は2サイトを含む構成ファイルの
# Networkセクションの例
*NETWORK
SITE1 NADDR="//mach1:51669”
NLSADDR="//mach1:31669"
#
SITE2 NADDR="//mach386:51669"
NLSADDR="//mach386:31669"
データは使用可能な回線のうち、優先度が最も高い回線を流れます。すべてのネットワーク・グループに同じ優先度が与えられている場合、データはすべてのネットワークに同時に送信されます。現在優先されているすべての回線で障害が発生すると、データは次に優先度が高い回線に送信されます。このプロセスを「フェイルオーバー」と呼びます。フェイルオーバーが発生すると、失敗した接続は定期的に再試行されます。
優先度の高いネットワーク接続が再確立されると、「フェイルバック」が発生し、優先度の低い接続にはデータがスケジューリングされなくなります。優先度が低い接続は、規則的な方法で切断されます。
すべてのネットワーク・アドレスへの接続の再試行が失敗すると、次にマシン間でのアプリケーション・データやシステム・データの送信が必要になったときに接続が再試行されます。
First State Bankという架空の銀行で、5台のマシン(A-E)が構成されるネットワークを想定してください。これらのマシンは4つのネットワーク・グループに構成され、それぞれのマシンが2つから3つのネットワーク・グループで使用されています。
注: | 複数のネットワーク・グループ(NETGROUPS )を含む構成では、ハードウェアおよびソフトウェアに対する要件があります。ただし、このマニュアルでは説明していません。たとえば、マシンが、複数の物理ネットワークに参加しなければならない場合があります。各マシンのTCP/IPシンボリック・アドレスは、/etc/hosts ファイルまたはDNS(ドメイン・ネーム・サービス)で識別する必要があります。 |
注: | 次の例の//A_CORPORATE:5345 という形式のアドレスの文字列A_CORPORATE は、/etc/hosts ファイルまたはDNS(ドメイン・ネーム・サービス)で指定されていることを想定しています。 |
First State Bankには、次の4つのネットワーク・グループがあります。
すべてのマシンは、DEFAULTNET
(企業WAN)に属します。さらに、各マシンはMAGENTA_GROUP
またはBLUE_GROUP
に関連付けられます。MAGENTA_GROUP
の一部のマシンはGREEN_GROUP
にも属しています。図12-2は、ネットワークにおけるグループの割当てを示しています。
この例では、マシンAとBは以下のグループに対するアドレスを持ちます。
ローカル・エリア・ネットワークは場所間でルーティングされないため、マシンD (BLUE_GROUP
LAN内)は、共通の単一アドレス、つまり企業WANネットワーク・アドレスのみを使用してマシンA (GREEN_GROUP
LAN内)と通信します。
前の項で説明した構成を設定するため、First State Bankの管理者は、以下に示すように、UBBCONFIG
ファイルのNETGROUPS
およびNETWORK
セクションで各グループを定義します。
*NETGROUPS
DEFAULTNET NETGRPNO = 0 NETPRIO = 100 #default
BLUE_GROUP NETGRPNO = 9 NETPRIO = 200
MAGENTA_GROUP NETGRPNO = 125 NETPRIO = 200
GREEN_GROUP NETGRPNO = 13 NETPRIO = 300
*NETWORK
A NETGROUP=DEFAULTNET NADDR="//A_CORPORATE:5723”
A NETGROUP=MAGENTA_GROUP NADDR="//A_MAGENTA:5724"
A NETGROUP=GREEN_GROUP NADDR="//A_GREEN:5725"
B NETGROUP=DEFAULTNET NADDR="//B_CORPORATE:5723"
B NETGROUP=MAGENTA_GROUP NADDR="//B_MAGENTA:5724"
B NETGROUP=GREEN_GROUP NADDR="//B_GREEN:5725"
C NETGROUP=DEFAULTNET NADDR="//C_CORPORATE:5723"
C NETGROUP=MAGENTA_GROUP NADDR="//C_MAGENTA:5724"
D NETGROUP=DEFAULTNET NADDR="//D_CORPORATE:5723"
D NETGROUP=BLUE_GROUP NADDR="//D_BLUE:5726"
E NETGROUP=DEFAULTNET NADDR="//E_CORPORATE:5723"
E NETGROUP=BLUE_GROUP NADDR="//E_BLUE:5726"
ネットワークのBRIDGE
プロセスの機能を最大限に生かすには、各ネットワーク・グループを表すNETGROUP
に適切に優先度を割り当てます。NETGROUP
の優先度を割り当てる場合は、以下の点を念頭に置いてください。
図12-3は、First State Bankの管理者が使用可能なネットワーク・グループに優先度を割り当てる方法を示しています。
最も優先度の低いネットワーク・グループは、デフォルトのネットワーク・グループとして予約されます。つまり、他のネットワーク・グループがすべて使用不可能にならない限り、このグループは使用されません。したがって、分単位で課金される衛星回線など、特定のネットワークの使用を制限する場合は、そのネットワークをデフォルトのネットワーク・グループとして指定します。
デフォルトのネットワーク・グループに優先度を割り当てるには、他のグループと同じように、DEFAULTNET
のNETPRIO
バラメータを設定します。DEFAULTNET
の優先度を指定しないと、以下の例に示すようにデフォルト値の100が使用されます。
*NETGROUP
DEFAULTNET NETGRPNO = 0 NETPRIO = 100
DEFAULTNET
では、ネットワーク・グループ番号(NETGRPNO
)の値を0に指定しなければなりません。これ以外の値は無効です。NETGRPNO
の値は、エントリごとにユニークでなければなりません。
一方、複数のネットワーク・グループに対して、同じNETPRIO
の値を割り当てることもできます。たとえば、First State Bankの構成ファイルで、MAGENTA_GROUP
とGREEN_GROUP
に同じネットワーク優先度(NETPRIO=200
)を割り当てることができます。
各ネットワーク・アドレス(NETWORK)は、デフォルトでDEFAULTNET
ネットワーク・グループに関連付けられます。このパラメータは、エントリ間の統一性を保ちたい場合、または定義されるネットワーク・アドレスを2つ目のネットワーク・グループに関連付けたい場合に、明示的に指定することができます。
*NETWORK
D NETGROUP=BLUE_GROUP NADDR="//D_BLUE:5726"