5 WebLogic RMIでのT3プロトコルの使い方

この章では、WebLogic RMIでのT3プロトコルの使用方法について説明します。

この章には次の項が含まれます:

WebLogic ServerにおけるRMI通信

WebLogic ServerのRMI通信では、WebLogic Serverと他のJavaプログラム(クライアントおよび他のWebLogic Serverインスタンスを含む)との間のデータを、T3プロトコルを使用してトランスポートします。サーバー・インスタンスは、接続された個々のJava仮想マシン(JVM)を追跡して、JVMに対するすべてのトラフィックを実行できる単一のT3接続を作成します。Oracle WebLogic Server管理コンソール・オンライン・ヘルプT3プロトコルの構成を参照してください。

たとえば、JavaクライアントがWebLogic Server上のエンタープライズBeanおよびJDBC接続プールにアクセスすると、1つのネットワーク接続がWebLogic ServerのJVMとクライアントのJVMとの間に確立されます。T3プロトコルは1つの接続上のパケットを見えない形で多重化するため、EJBおよびJDBCのサービスでは、専用のネットワーク接続を単独で使用しているかのように記述することができます。

接続の可用性の判断

有効なT3接続を備える任意の2つのJavaプログラム(2つのサーバー・インスタンス、またはサーバー・インスタンスとJavaクライアントなど)では、定期的なポイントツーポイントの「ハートビート」を使って、継続的な可用性の通知と判断を行います。各エンド・ポイントは、定期的にピアへのハートビートを発行し、また同様に、ピアから継続的にハートビートが受信されていることに基づき、ピアがまだ使用可能であることを判断します。

  • サーバー・インスタンスがハートビートを発行する頻度は、ハートビート間隔によって決定されます。これはデフォルトでは60秒です。

  • ピアが使用できなくなっていると判断するまでにサーバー・インスタンスが待機する、ピアから届かなかったハートビートの数は、ハートビート周期によって決定されます。これはデフォルトでは4です。したがって、各サーバー・インスタンスは、ピアがアクセス不能であると判断する前に、240秒間すなわち4分間まで、メッセージ(ハートビート、またはその他の通信)のない状態で待機します。

  • タイムアウトのデフォルトを変更することは推奨しません。

WebLogic T3/T3sクライアント・プロキシの使い方

WebLogic T3/T3sクライアント・プロキシを使用すると、アウトバウンド・クライアント・リクエストをプロキシWebLogic T3サーバーにルーティングできます。この場合、各クライアントはすべてのアウトバウンド・リクエストをプロキシ・サーバーにルーティングします。次に、プロキシ・サーバーが、リクエストを処理するWebLogic Serverインスタンスにリクエストを転送します。クライアント側とサーバー側の両方で、T3接続をクライアントとして使用するすべてのアプリケーションにこの構成が影響します。たとえば、アプリケーションがT3接続を作成してWebLogic T3サーバーにアクセスする場合(WebLogic RMIを使用するリモート・オブジェクトでのメソッドの呼出しなど)、プロキシ構成が接続ロジックに適用されます。

クライアント・プロキシを有効にするには、以下のプロパティを設定します。

T3:

-Dhttp.proxyHost=<proxy hostname>
-Dhttp.proxyPort=<proxy port>
-Dhttp.nonProxyHosts=<hostnames> 

T3s:

-Dhttps.proxyHost=<proxy hostname>
-Dhttps.proxyPort=<proxy port>
-Dhttps.nonProxyHosts=<hostnames> 

説明:

  • proxy hostnameはユーザーのプロキシ・サーバーのネットワーク・アドレス。

  • proxy portはポート番号。明示的に設定しない場合、ポート番号の値は80に設定されます。

  • hostnamesは、WebLogic Serverがプロキシ構成から除外する1つ以上のホスト名を「|」で区切ったリスト。照合のためにワイルドカード文字「*」を使用できます。たとえば、「-Dhttp.nonProxyHosts="*.oracle.com|localhost"」と指定します。