2

Web アプリケーションを Oracle Weblogic Server 11 から Websphere 8.5 に移植します。私が見つけた 1 つの問題は、WLS アプリケーションが「マルチ データ ソース」と呼ばれる機能を使用していることです。この機能では、複数の JDBC 接続を単一のコンポーネントとして使用できます (したがって、データベースへのより堅牢なアクセスを提供します)。
Websphere またはそれをエミュレートするために使用できる回避策にも同等のソリューションはありますか? どうもありがとう
ルイ

4

1 に答える 1

2

WLS のドキュメントを確認しています。

マルチ データ ソースは、データ ソースのプールと考えることができます。マルチ データ ソースは、冗長データベースや Oracle Real Application Clusters (RAC) などの高可用性データベース システムのノード間のフェイルオーバーまたはロード バランシングに最適です。

私の知る限り、WAS にはそのような施設はありません。それでも、負荷分散された JDBC 接続文字列を使用して同じ結果を得ることができます。Oracle RAC の例は次のようになります ( Oracle のドキュメントを引用)。

jdbc:oracle:thin@(DESCRIPTION=
  (LOAD_BALANCE=on)
  (ADDRESS=(PROTOCOL=TCP)(HOST=racnode1) (PORT=1521))
  (ADDRESS=(PROTOCOL=TCP)(HOST=racnode2) (PORT=1521))
  (CONNECT_DATA=(SERVICE_NAME=service_name)))

実行する必要があるのは、WAS で単一の通常のデータソースを好みのスコープで定義し、負荷分散された JDBC 接続文字列を上記のように構成することです (ここのサンプルでは 2 つの RAC ノードの負荷を分散しています)。

上記のように構成された負荷分散機能は、データベース ベンダーが提供する JDBC ドライバーによって提供されるため、別のデータベースを使用している場合は、データベースのドキュメントでサポートを確認する必要があります。


編集:私の答えを修正する必要があります。私はこの機能に出くわしました。これは確かに WAS8 の新機能であり、リソース ワークロード ルーティングと呼ばれます。以下は説明です。

リソース ワークロード ルーティングには、データ ソースと接続ファクトリのフェールオーバーと、事前定義された代替リソースまたはバックアップ リソースからのその後のフェールバックが含まれます。この機能により、アプリケーションは、データベース障害などのリソースの停止から簡単に回復できます。別のリソースや構成情報を埋め込む必要はありません。リソースのフェイルオーバーとフェイルバックの柔軟な構成オプションを調整して、環境固有のニーズとアプリケーションのニーズを満たすことができます。

カスタム プロパティをデータソースに追加するだけで、この新しい機能を簡単に構成できます。この機能の主なプロパティは次のとおりです。

alternateResourceJNDIName
Values: String value containing a direct JNDI name.

Description: An alternate connection factory or data source resource
should be like the primary resource. Provide the JNDI name of the 
alternate resource to enable the fail over feature.
于 2012-09-15T16:25:33.147 に答える