名前空間の論理ビュー

セル全体の名前空間は、セル内のすべてのサーバー間で統合されます。 各サーバー・プロセスには、ネーム・サーバーがあります。 すべてのネーム・サーバーは、セル名前空間の同じ論理ビューを提供します。

名前空間のさまざまなサーバー・ルートとパーシスタント区画は、システム名前空間により相互に接続されます。 システム名前空間構造を使用して、 セルの名前空間内の任意のコンテキストを全探索することができます。

複数のサーバー・インストールにおける名前空間の論理ビューを、 以下の図で紹介します。

名前空間の論理ビューの表

上記の図で、バインディングは、太字の実線矢印と、グレーの破線矢印で示されています。 実線矢印は、1 次バインディング を表します。 1 次バインディングは、関連するサブコンテキストが作成されたときに作成されます。 破線矢印は、リンク・バインディング を示します。 リンク・バインディングは、既存のコンテキストが別の名前でバインディングされたときに作成されます。 リンク・バインディングは、便宜上、 つまり WebSphere® Application Server の前のバージョンと相互運用するために追加されています。

セルの名前空間は、セル内の複数のサーバーにあるコンテキストから構成されます。 セル内のネーム・サーバーのセル名前空間の論理ビューは、すべて同じです。 ネーム・サーバーは、始動時に、構成情報を読み取ることでこのビューを作成します。 各ネーム・サーバーは、名前空間のコピーをローカルのメモリー内に独自に保持しており、別の稼働中のサーバーが機能する必要はありません。 ただし、いくつか例外があります。 他のサーバーのサーバー・ルートは、すべてのサーバーで複製されるわけではありません。 サーバー・ルートに対応するそれぞれのサーバーが実行されていないと、そのサーバー・ルート・コンテキストにアクセスすることはできません。

WebSphere Application Server Network Deployment セルでは、 セル・パーシスタント領域とノード・パーシスタント領域は、デプロイメント・マネージャーとそれぞれのノード・エージェントが実行していない場合でも読み取ることができます。 しかし、デプロイメント・マネージャーが稼働していないと、セルのパーシスタント・セグメントを更新することはできません。また、ノード・エージェントが稼働していないと、それぞれのノードのパーシスタント・セグメントを更新することはできません。

名前空間の区画

セルの名前空間には、以下の 5 つの主要な区画があります。

システム名前空間区画
システム名前空間には、セルのトポロジーに基づいたコンテキストの構造が含まれています。 システム構成は、セルの名前空間のすべての部分と、外部セルとして構成されているその他のセルのセル・ルートに対する全探索をサポートしています。 この構造のルートは、セル・ルートです。 セル・ルートのほかに、システム構成にはセル内の各ノードのノード・ルートが含まれています。 ノードに固有の、その他の当該コンテキストは、ノード・ルート (ノードのパーシスタント・ルートおよびそのノード内で構成されるサーバーのサーバー・ルートなど) からアクセスすることができます。

システム名前空間内のコンテキストは、すべて読み取り専用です。 バインディングを追加、更新、または除去することはできません。

サーバー・ルート区画
セル内の各サーバーには、サーバー・ルート・コンテキストがあります。 サーバー・ルートは、特定のサーバーに固有のものです。 セル内のすべてのサーバーのサーバー・ルートは、そのセルの名前空間の一時的な読み取り/書き込み区画内にあるものとして表示することができます。 システム成果物 (サーバー・アプリケーションおよびリソースのエンタープライズ Bean (EJB) ホームなど) は、 関連付けられたサーバーのサーバー・ルート・コンテキストの下にバインドされています。 サーバー・アプリケーションは、そのサーバー・ルートの下にバインディングを追加することもできます。 これらのバインディングは、一時的です。 したがって、サーバー・アプリケーションは、アプリケーションの稼働中には必ずバインディングが存在するように、アプリケーション始動時にすべての必要なバインディングを作成します。

サーバー・クラスターは、論理的に同等な多くのサーバーで構成されます。 クラスターの各メンバーは、独自のサーバー・ルートを持っています。 これらのサーバー・ルートは、クラスター間で複製されることはありません。 つまり、あるメンバーのサーバー・ルートにバインディングを追加しても、 ほかのクラスター・メンバーのサーバー・ルートには伝搬されません。 クラスター間で表示を同じにするためには、バインディングが各クラスター・メンバーのサーバー・ルートの下に表示されるように、アプリケーションの始動時に、サーバー・ルートの下のすべてのユーザー・バインディングをサーバー・アプリケーションによって作成する必要があります。 ワークロード管理 (WLM) の振る舞いが原因で、クラスターの外側の JNDI クライアントは、どのクラスター・メンバーのサーバー・ルート・コンテキストが JNDI 操作のターゲットになるかを制御できません。 したがって、クラスター・メンバーのサーバー・ルートへのバインド操作は、そのクラスター・メンバー・プロセス内からのみ実行する必要があります。

サーバーを有効範囲とする構成済み名前バインディングは、サーバーのサーバー・ルートに相対しています。

クラスター・メンバーの名前は、セル内で固有でなければならず、 また、セル名とは異なっている必要があります。

セル・パーシスタント区画
セル・パーシスタント区画のルート・コンテキストは、セル・パーシスタント・ルートです。 セル・パーシスタント・ルートの下に作成されたバインディングは、 セル構成の一部として保存され、明示的に除去されるまで存在し続けます。 一般的にセルと関連付けられているオブジェクトの追加のパーシスタント・バインディングの作成が必要なアプリケーションは、 セル・パーシスタント・ルートの下のこれらのオブジェクトをバインドすることができます。

セルのパーシスタント領域は、高速で変化する一時的なバインディング用には設計されていないことに注意する必要があります。 バインディングは、アプリケーション・セットアップまたは構成の一部のように、本来は、より静的なもので、ランタイムには作成されません。

セルのパーシスタント領域は、 デプロイメント・マネージャーが稼働していない場合でも読み取ることができます。 しかし、デプロイメント・マネージャーが稼働していないと、 セルのパーシスタント・セグメントを更新することはできません。 すべてのサーバーには、それぞれ独自のセル・パーシスタント区画のコピーが含まれているため、 どのサーバーも、セル・パーシスタント区画にバインド済みのオブジェクトをローカルで検索することができます。

セルを有効範囲とする構成済み名前バインディングは、セルのセル・パーシスタント・ルートに相対しています。

ノード・パーシスタント区画
ノード・パーシスタント区画は、各ノードには独自のノードのパーシスタント・ルートがあるという点を除き、 セル区画に類似しています。 ノードのパーシスタント・ルートの下に作成されたバインディングは、ノード構成の一部として保存され、明示的に除去されるまで存在し続けます。

特定のノードと関連付けられたオブジェクトの追加のパーシスタント・バインディングを作成することが必要なアプリケーションは、 その特定のノードのノードのパーシスタント・ルートの下でそれらのオブジェクトをバインドすることができます。 セルのパーシスタント領域の場合のように、ノードのパーシスタント領域は、高速で変化する一時的なバインディング用には設計されていないことに注意する必要があります。 これらのバインディングは、アプリケーション・セットアップまたは構成の一部のように、本来は、より静的なもので、ランタイムには作成されません。

ノードのノードのパーシスタント領域は、 それぞれのノード・エージェントが稼働していない場合でも、 ノード内の任意のサーバーから読み取ることができます。 しかし、ノード・エージェントが稼働していないと、 ノードのパーシスタント領域を更新することはできません。 また、ノード外の任意のサーバーの場合、 そのノード・パーシスタント区画から読み取るはできません。 ノード内のすべてのサーバーには、独自にそのノードのノード・パーシスタント区画のコピーが含まれているため、 そのノード内のどのサーバーも、そのノード・パーシスタント区画にバインド済みのオブジェクトをローカルで検索することができます。

ノードを有効範囲とする構成済み名前バインディングは、ノードのノード・パーシスタント・ルートに相対しています。

アプリケーション区画
Java EE 6 仕様で、モジュール名前空間、アプリケーション名前空間、およびグローバル名前空間 が導入されました。これらの名前空間には、それぞれ、接頭部 java:modulejava:app、 および java:global が付いた Java URL JNDI 名でアクセスできます。 状況によって、これらの名前空間はローカルでのみアクセス可能であったり、 リモートでアクセス可能であったりします。

アプリケーション区画 には、リモートでアクセス可能な名前空間が含まれます。 java:global 名前空間のルートは、アプリケーション・ルート・コンテキスト です。他の名前空間のルートは、com.ibm.ws.AppNameSpaces サブコンテキストの 下にあります。例えば、アプリケーション MyApp の java:app ルート・コンテキスト は、com.ibm.ws.AppNameSpaces に対して相対的な、名前 MyApp/root で バインドされます。モジュール名前空間およびコンポーネント名前空間は、モジュールが server-deployed モードまたは federated モードのクライアント・モジュールである場合、リモートでのみアクセス可能です。 例えば、アプリケーション MyApp 内の server-deployed である クライアント・モジュール MyClientModule の java:module ルート・コンテキストは、 com.ibm.ws.AppNameSpaces に対して相対的な、名前 MyApp/MyClientModule/root で バインドされます。comp/env バインディングを含む、同じ モジュールのコンポーネント名前空間は、com.ibm.ws.AppNameSpaces に対して相対的な、MyApp/MyClientModule/ClientComponent/root の 下にバインドされます。

java:global 名を持つアプリケーション・リソース (EJB 参照、 リソース EJB 参照、環境エントリーなど) は、定義するアプリケーションがインストールされるときに、 java:global 名前空間内にバインドされます。そのアプリケーションが実行していなくても、 それらの名前バインディングは他のアプリケーションで使用可能です。

java:global 名でアプリケーション内に 定義されているリソースは、セル内のすべてのサーバー用の アプリケーション区画内に、それぞれのノードにデータが配布されるときにバインドされます。アプリケーションは、それらのオブジェクトをセル内のどのサーバーからでも 検索することができます。EJB ホーム も java:global 名前空間内に、 java:global/appName/moduleName/beanName という形式の 名前でバインドされますが、これはエンタープライズ Bean を実行するサーバー内でのみ行われます。ただし、任意の EJB の java:global 検索 を、セル内の任意のサーバーから解決できます。


トピックのタイプを示すアイコン 概念トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cnam_name_space_partitions
ファイル名:cnam_name_space_partitions.html