(57)【特許請求の範囲】
【請求項１】
アプリケーションサーバと、前記アプリケーションサーバを管理する管理装置とを備え、
前記管理装置は、
所定の前記アプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部と、
前記仮想サーバインスタンス部、および、該仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を対応付けて記憶したサービスリポジトリと、
前記仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出するとともに、抽出した設定項目、前記差異のある設定値、および前記サービスリポジトリにおいて前記差異のある設定値を保持する仮想サーバインスタンス部に対応付けられたアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異抽出部と、
を有し、
前記アプリケーションサーバは、
前記管理装置から受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、自装置によって生成されているオブジェクトの中から特定する設定情報管理部と、
前記設定情報管理部によって特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記管理装置から受信した前記差異のある設定値を保持させる複製オブジェクト生成部と、
前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記管理装置から受信したアプリケーション情報とを対応付けて記憶するオブジェクトリポジトリと、
前記仮想サーバインスタンス部から中継される前記処理要求に応じて自装置において実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入部と、
を有するアプリケーションサーバ管理システム。
【請求項２】
前記アプリケーションサーバの前記設定情報管理部は、前記管理装置から受信した設定項目について、前記差異のある設定値を設定する設定処理を仮に実行し、仮実行中の設定処理をトレースすることにより、前記設定値保持オブジェクトを特定することを特徴とする請求項１に記載のアプリケーションサーバ管理システム。
【請求項３】
前記サービスリポジトリは、前記アプリケーション情報として、前記クライアントからの処理要求を表すリクエストＵＲＬ（Uniform Resource Locator）に含まれる情報を記憶し、
前記オブジェクト呼び出し介入部は、前記検出したオブジェクト呼び出しが、前記仮想サーバインスタンス部から中継される前記処理要求を表すリクエストＵＲＬに含まれる情報に対応付けられたクラスのオブジェクト呼び出しである場合に、前記オブジェクト参照情報を、前記呼び出し元のオブジェクトに渡すことを特徴とする請求項１または請求項２に記載のアプリケーションサーバ管理システム。
【請求項４】
所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出する差異抽出ステップと、
前記差異抽出ステップで抽出された設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、前記アプリケーションサーバによって生成されているオブジェクトの中から特定する設定値保持オブジェクト特定ステップと、
前記設定値保持オブジェクト特定ステップで特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記差異のある設定値を保持させる複製オブジェクト生成ステップと、
前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報とを対応付けてオブジェクトリポジトリに登録する複製オブジェクト登録ステップと、
前記仮想サーバインスタンス部から中継される前記処理要求に応じて前記アプリケーションサーバにおいて実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入ステップと、
を備えたアプリケーションサーバ管理方法。
【請求項５】
前記設定値保持オブジェクト特定ステップは、前記差異抽出ステップで抽出された設定項目について、前記アプリケーションサーバにおいて前記差異のある設定値を設定する設定処理を仮に実行し、仮実行中の設定処理をトレースすることにより、前記設定値保持オブジェクトを特定することを特徴とする請求項４に記載のアプリケーションサーバ管理方法。
【請求項６】
１つ以上のアプリケーションサーバを管理する管理装置であって、
所定の前記アプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに処理要求するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部と、
前記仮想サーバインスタンス部、および、該仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を対応付けて記憶したサービスリポジトリと、
前記仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出するとともに、抽出した設定項目、前記差異のある設定値、および前記サービスリポジトリにおいて前記差異のある設定値を保持する仮想サーバインスタンス部に対応付けられたアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異抽出部と、
を備えた管理装置。
【請求項７】
所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部を有する管理装置によって管理されるアプリケーションサーバであって、
前記管理装置から、自装置のアプリケーションサーバ識別情報を保持する他の仮想サーバインスタンス部に対して差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報、前記差異のある設定値、および、その設定項目を受信し、受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、自装置によって生成されているオブジェクトの中から特定する設定情報管理部と、
前記設定情報管理部によって特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記管理装置から受信した前記差異のある設定値を保持させる複製オブジェクト生成部と、
前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記管理装置から受信したアプリケーション情報とを対応付けて記憶するオブジェクトリポジトリと、
前記仮想サーバインスタンス部から中継される前記処理要求に応じて自装置において実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入部と、
を備えたアプリケーションサーバ。
【請求項８】
前記設定情報管理部は、前記管理装置から受信した設定項目について、前記差異のある設定値を設定する設定処理を仮に実行し、仮実行中の設定処理をトレースすることにより、前記設定値保持オブジェクトを特定することを特徴とする請求項７に記載のアプリケーションサーバ。
【請求項９】
所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部において、前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出する差異抽出ステップと、
前記設定項目抽出ステップで抽出された設定項目、前記差異のある設定値、および前記差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異送信ステップと、
をコンピュータ装置に実行させるコンピュータ・プログラム。
【請求項１０】
所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部を有する管理装置から、同一のアプリケーションサーバ識別情報を保持する他の仮想サーバインスタンス部に対して差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報、前記差異のある設定値、および、その設定項目を受信する差異受信ステップと、
前記差異受信ステップで受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、前記アプリケーションサーバによって生成されているオブジェクトの中から特定する設定値保持オブジェクト特定ステップと、
前記設定値保持オブジェクト特定ステップで特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記差異受信ステップで受信した前記差異のある設定値を保持させる複製オブジェクト生成ステップと、
前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記差異受信ステップで受信したアプリケーション情報とを対応付けてオブジェクトリポジトリに登録する複製オブジェクト登録ステップと、
前記仮想サーバインスタンス部から中継される前記処理要求に応じて前記アプリケーションサーバにおいて実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入ステップと、
をコンピュータ装置に実行させるコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションサーバを管理するアプリケーションサーバ管理システムに関し、特に、仮想化環境におけるアプリケーションサーバを管理するアプリケーションサーバ管理システムに関する。
【背景技術】
【０００２】
近年、新しいビジネスモデルとしてクラウドコンピューティングが提唱されている。多くのＩＴ（Information Technology）サービス企業は、クラウドコンピューティングに基づくＳａａｓ（Software as a Service）などの従量課金形態システムへ移行することにより、システム管理コスト削減や、業務内容変更に対する柔軟性の高いシステムの実現を目指している。
【０００３】
このようなクラウドコンピューティングを実現するための技術として、仮想化技術が注目されている。仮想化技術は、クラウドコンピューティングで必要とされるスケールアウト／スケールインを柔軟に行うことに適しており、クラウドコンピューティングの思想との親和性が高い。このようなクラウドコンピューティングおよび仮想化の流れは、アプリケーションサーバ領域においても迫っている。
【０００４】
アプリケーションサーバは、配備された１つ以上のアプリケーションソフトウェアを実行可能なサーバ装置である。このようなアプリケーションサーバは、クライアントから処理要求を受け付け、受け付けた処理要求に基づくアプリケーションソフトウェアを実行し、処理結果をクライアントに提供する。
【０００５】
また、このようなアプリケーションサーバは、データセンター等に大量に備えられる。そして、データセンターで運用される大量のアプリケーションサーバ群を、個々のシステムを隠蔽しつつ、サービスごとの仮想的システムとして管理する技術が望まれている。
【０００６】
現在そのような要望を実現する技術としては、分散するアプリケーションサーバ群をサービスごとにグルーピングし、グルーピングしたアプリケーションサーバ群を一元管理する関連技術が知られている。この関連技術においては、管理専用サーバが、各アプリケーションサーバの実プロセスを仮想的に表す仮想サーバインスタンスを生成する。この仮想サーバインスタンスは、アプリケーションサーバに配備されたアプリケーションソフトウェアよって提供されるサービスにマッピングされる。この管理専用サーバは、１つのアプリケーションサーバに対して複数の仮想サーバインスタンスを生成することも可能である。そして、管理専用サーバは、その仮想サーバインスタンスをグルーピングして管理している。これにより、データセンターでアプリケーションサーバ群を管理するサーバ管理者は、管理専用サーバにおいて仮想サーバインスタンスを操作することにより、同一グループ内のアプリケーションサーバの整合性をとりつつ、一括してアプリケーションサーバ群を管理することができる。このように、この関連技術は、分散するアプリケーションサーバ群の運用コストを低減することを可能としている。
【０００７】
また、特許文献１には、同一グループ内のサーバに同一の動作設定を行う技術が記載されている。この特許文献１に記載された技術は、サーバに対する動作設定を行うエージェントを複数のサーバにそれぞれ導入し、これらのエージェントをグルーピングする。そして、グループに新しく登録されたエージェントは、同じグループ内の他のエージェントの動作設定を取得して、自身が導入されているサーバに対して適用する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−２５１８９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、グルーピングしたアプリケーションサーバ群を一元管理する関連技術では、同一のアプリケーションサーバを表す複数の仮想サーバインスタンスを複数の運用グループに所属させたい場合に問題が生じる。具体的には、大規模な仮想化システムでは、同一のアプリケーションサーバ上で提供される複数のサービスをそれぞれ異なる運用グループに所属させたいという要望があがる。しかし、運用グループが異なれば、アプリケーションサーバの運用ポリシーも異なることが予想される。ここで、アプリケーションサーバの運用ポリシーとは、例えば、ウェブコンテナのアクセスログの採取設定に関するポリシー等である。そして、このようなアプリケーションサーバの運用ポリシーは、アプリケーションサーバ毎に設定可能な設定値によって実現される。
【００１０】
ところが、同一のアプリケーションサーバを表す複数の仮想サーバインスタンスは、同一の実プロセスにマッピングされているため、互いに異なる設定値を持つことができない。したがって、同一のアプリケーションサーバを表す複数の仮想サーバインスタンスを異なる運用グループに所属させようとする場合、アプリケーションサーバの設定値に衝突が生じることが容易に予想できる。このように、この関連技術では、同一のアプリケーションサーバを表す複数の仮想サーバインスタンスを、互いに異なる設定値で動作させることが困難であるという課題があった。
【００１１】
また、特許文献１に記載された技術では、同一グループ内に所属するエージェントがそれぞれ導入された各サーバに同一の動作設定を適用することは容易となる。しかしながら、特許文献１には、１つのサーバに異なるエージェントを導入してそれぞれ異なる動作設定を行わせることに関しては記載されていない。
【００１２】
本発明は、上述の課題を解決するためになされたもので、同一のアプリケーションサーバを表す複数の仮想サーバインスタンスを、互いに異なる設定値で動作させることができるアプリケーションサーバ管理システムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明のアプリケーションサーバ管理システムは、アプリケーションサーバと、前記アプリケーションサーバを管理する管理装置とを備え、前記管理装置は、所定の前記アプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部と、前記仮想サーバインスタンス部、および、該仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を対応付けて記憶したサービスリポジトリと、前記仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出するとともに、抽出した設定項目、前記差異のある設定値、および前記サービスリポジトリにおいて前記差異のある設定値を保持する仮想サーバインスタンス部に対応付けられたアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異抽出部と、を有し、前記アプリケーションサーバは、前記管理装置から受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、自装置によって生成されているオブジェクトの中から特定する設定情報管理部と、前記設定情報管理部によって特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記管理装置から受信した前記差異のある設定値を保持させる複製オブジェクト生成部と、前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記管理装置から受信したアプリケーション情報とを対応付けて記憶するオブジェクトリポジトリと、前記仮想サーバインスタンス部から中継される前記処理要求に応じて自装置において実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入部と、を有する。
【００１４】
また、本発明のアプリケーションサーバ管理方法は、所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出する差異抽出ステップと、前記差異抽出ステップで抽出された設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、前記アプリケーションサーバによって生成されているオブジェクトの中から特定する設定値保持オブジェクト特定ステップと、前記設定値保持オブジェクト特定ステップで特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記差異のある設定値を保持させる複製オブジェクト生成ステップと、前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報とを対応付けてオブジェクトリポジトリに登録する複製オブジェクト登録ステップと、前記仮想サーバインスタンス部から中継される前記処理要求に応じて前記アプリケーションサーバにおいて実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入ステップと、を備える。
【００１５】
また、本発明の管理装置は、１つ以上のアプリケーションサーバを管理する管理装置であって、所定の前記アプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに処理要求するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部と、前記仮想サーバインスタンス部、および、該仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を対応付けて記憶したサービスリポジトリと、前記仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出するとともに、抽出した設定項目、前記差異のある設定値、および前記サービスリポジトリにおいて前記差異のある設定値を保持する仮想サーバインスタンス部に対応付けられたアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異抽出部と、を備える。
【００１６】
また、本発明のアプリケーションサーバは、所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部を有する管理装置によって管理されるアプリケーションサーバであって、前記管理装置から、自装置のアプリケーションサーバ識別情報を保持する他の仮想サーバインスタンス部に対して差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報、前記差異のある設定値、および、その設定項目を受信し、受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、自装置によって生成されているオブジェクトの中から特定する設定情報管理部と、前記設定情報管理部によって特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記管理装置から受信した前記差異のある設定値を保持させる複製オブジェクト生成部と、前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記管理装置から受信したアプリケーション情報とを対応付けて記憶するオブジェクトリポジトリと、前記仮想サーバインスタンス部から中継される前記処理要求に応じて自装置において実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入部と、を備える。
【００１７】
また、本発明のコンピュータ・プログラムは、所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部において、前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出する差異抽出ステップと、前記設定項目抽出ステップで抽出された設定項目、前記差異のある設定値、および前記差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異送信ステップと、をコンピュータ装置に実行させる。
【００１８】
また、本発明のコンピュータ・プログラムは、所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部を有する管理装置から、同一のアプリケーションサーバ識別情報を保持する他の仮想サーバインスタンス部に対して差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報、前記差異のある設定値、および、その設定項目を受信する差異受信ステップと、前記差異受信ステップで受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、前記アプリケーションサーバによって生成されているオブジェクトの中から特定する設定値保持オブジェクト特定ステップと、前記設定値保持オブジェクト特定ステップで特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記差異受信ステップで受信した前記差異のある設定値を保持させる複製オブジェクト生成ステップと、前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記差異受信ステップで受信したアプリケーション情報とを対応付けてオブジェクトリポジトリに登録する複製オブジェクト登録ステップと、前記仮想サーバインスタンス部から中継される前記処理要求に応じて前記アプリケーションサーバにおいて実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入ステップと、をコンピュータ装置に実行させる。
【発明の効果】
【００１９】
本発明は、同一のアプリケーションサーバを表す複数の仮想サーバインスタンスを、互いに異なる設定値で動作させることができるアプリケーションサーバ管理システムを提供することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施の形態としてのアプリケーションサーバ管理システムの構成を示すブロック図である。
【図２】本発明の実施の形態としてのアプリケーションサーバ管理システムを構成する各装置のハードウェア構成図である。
【図３】本発明の実施の形態としてのアプリケーションサーバ管理システムを構成する各装置の機能ブロック図である。
【図４】本発明の実施の形態における仮想サーバインスタンス部とアプリケーションサーバとの関係を説明する図である。
【図５】本発明の実施の形態におけるサービスリポジトリの一例を説明する図である。
【図６】本発明の実施の形態におけるオブジェクトリポジトリの一例を説明する図である。
【図７】本発明の実施の形態としてのアプリケーションサーバ管理システムの差異抽出登録動作を説明するフローチャートである。
【図８】本発明の実施の形態としてのアプリケーションサーバ管理システムのオブジェクト呼び出し介入動作を説明するフローチャートである。
【図９】本発明の実施の形態におけるオブジェクトリポジトリの他の一例を説明する図である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００２２】
まず、本発明の実施の形態としてのアプリケーションサーバ管理システム１の構成を図１に示す。図１において、アプリケーションサーバ管理システム１は、アプリケーションサーバ２と、管理装置３とを備えている。また、管理装置３は、インターネット、ＬＡＮ（Local Area Network）、公衆回線網、無線通信網またはこれらの組合せ等によって構成されるネットワークを介してクライアント端末９に接続されている。なお、図１には、３つのアプリケーションサーバ２を示しているが、本発明のアプリケーションサーバ管理システムが備えるアプリケーションサーバの数を限定するものではない。
【００２３】
ここで、アプリケーションサーバ２は、配備された１つ以上のアプリケーションソフトウェアを実行可能なサーバ装置である。また、アプリケーションサーバ２は、オブジェクト指向プログラミング言語によって記述されたコンピュータ・プログラムによって表されるアプリケーションサーバプログラムを実行するコンピュータ装置によって構成される。例えば、アプリケーションサーバ２は、アプリケーションサーバプログラムを表すＪａｖａ（登録商標）プログラムのバイトコードを実行するＪａｖａ（登録商法）仮想マシン（Ｊａｖａ  ＶＭ：Java Virtual Machine）を搭載したコンピュータ装置によって構成されていてもよい。
【００２４】
なお、各アプリケーションサーバ２は、上述のアプリケーションサーバプログラムがそれぞれインストールされた異なるコンピュータ装置によって構成されていてもよい。あるいは、各アプリケーションサーバ２は、同一のコンピュータ装置上で上述のアプリケーションサーバプログラムが異なるプロセスとしてそれぞれ実行されることにより実現されていてもよい。いずれの場合も、アプリケーションサーバ２には、プロセス単位で一意に識別されるアプリケーションサーバ識別情報が付与されているものとする。
【００２５】
また、アプリケーションサーバ２は、アプリケーションサーバ２の動作をカスタマイズするための各種設定項目に関する設定値を保持している。詳細には、アプリケーションサーバ２は、上述のアプリケーションサーバプログラムが実行されることによりメモリ上に展開されるオブジェクトの中に、各設定項目についてその設定値を保持する設定値保持オブジェクトを含んでいる。すなわち、アプリケーションサーバ２は、設定値保持オブジェクトに保持された設定値に従って動作する。
【００２６】
また、アプリケーションサーバ２は、クライアント端末９から管理装置３を介して受け付けた処理要求に応じて、処理要求対象のアプリケーションソフトウェアを実行する。そして、アプリケーションサーバ２は、その処理結果を、管理装置３を介してクライアント端末９に提供する。
【００２７】
管理装置３は、１つ以上のアプリケーションサーバ２を管理する装置である。また、管理装置３は、クライアント端末９からのアプリケーションサーバ２に対する処理要求を代理受付するプロキシの機能も有している。
【００２８】
次に、アプリケーションサーバ２を構成する各装置のハードウェア構成を図２に示す。
【００２９】
図２において、アプリケーションサーバ２は、ＣＰＵ２０１と、ＲＡＭ２０２と、ＲＯＭ２０３と、記憶装置２０４と、通信モジュール２０５とを備えたコンピュータ装置によって構成されている。
【００３０】
記憶装置２０４には、アプリケーションサーバプログラムに相当するコンピュータ・プログラム、および、アプリケーションサーバ２に配備された各種アプリケーションソフトウェアに相当するコンピュータ・プログラムが記憶されている。ＣＰＵ２０１は、記憶装置２０４に記憶されたアプリケーションサーバ２をＲＡＭ２０２に読み込んで実行する。さらに、ＣＰＵ２０１は、記憶装置２０４に記憶されたアプリケーションソフトウェアをＲＡＭ２０２に読み込んで実行する。通信モジュール２０５は、管理装置３が接続されるＬＡＮ（Local Area Network）等にアプリケーションサーバ２を接続する。
【００３１】
管理装置３は、ＣＰＵ３０１と、ＲＡＭ３０２と、ＲＯＭ３０３と、記憶装置３０４と、第１の通信モジュール３０５と、第２の通信モジュール３０６とを備えたコンピュータ装置によって構成されている。
【００３２】
第１の通信モジュール３０５は、アプリケーションサーバ２が接続されるＬＡＮ等に管理装置３を接続する。第２の通信モジュール３０６は、クライアント端末９が接続されるインターネット等のネットワークに管理装置３を接続する。
【００３３】
記憶装置３０４には、後述する仮想サーバインスタンス部３１を表すコンピュータ・プログラムが記憶されている。ＣＰＵ３０１は、記憶装置３０４に記憶された仮想サーバインスタンス部３１を表すコンピュータ・プログラムをＲＡＭ３０２に読み込んで実行する。
【００３４】
次に、アプリケーションサーバ管理システム１を構成する各装置の機能ブロックについて図３を参照して説明する。
【００３５】
管理装置３は、１つ以上の仮想サーバインスタンス部３１と、サービスリポジトリ３２と、差異抽出部３３とを有している。なお、図３には、３つの仮想サーバインスタンス部３１を示しているが、本発明の管理装置が備える仮想サーバインスタンス部の数を限定するものではない。
【００３６】
ここで、仮想サーバインスタンス部３１は、前述のように、ＲＯＭ３０３または記憶装置３０４に記憶された仮想サーバインスタンス部３１を表すコンピュータ・プログラムをＲＡＭ３０２に読み込んで実行するＣＰＵ３０１によって構成される。また、サービスリポジトリ３２は、記憶装置３０４によって構成される。また、差異抽出部３３は、ＲＯＭ３０３または記憶装置３０４に記憶されたコンピュータ・プログラムモジュールをＲＡＭ３０２に読み込んで実行するＣＰＵ３０１によって構成される。なお、管理装置３を構成する各機能ブロックのハードウェア構成は上述の構成に限定されない。
【００３７】
仮想サーバインスタンス部３１は、所定のアプリケーションサーバ２を識別するアプリケーションサーバ識別情報を保持している。そして、仮想サーバインスタンス部３１は、保持したアプリケーションサーバ識別情報が表すアプリケーションサーバ２に配備された所定のアプリケーションソフトウェアに対するクライアント端末９からの処理要求を、アプリケーションサーバ２の代理で受け付ける。また、仮想サーバインスタンス部３１は、代理受付した処理要求を、該当するアプリケーションサーバ２に中継する。
【００３８】
また、仮想サーバインスタンス部３１は、保持したアプリケーションサーバ識別情報が表すアプリケーションサーバ２の動作をカスタマイズするための各設定項目に対する設定値を保持している。例えば、設定項目とは、「ウェブコンテナのアクセスログの採取設定」であってもよい。また、その場合、その設定値とは、例えば、ログの出力先を表すファイルパスやログファイルのサイズ、アクセスログのフォーマット等である。また、設定項目は、「ログレベル」であってもよい。また、その場合、その設定値は、アプリケーションサーバの動作履歴としてのログメッセージをどのレベルまで出力するかを制限する情報である。その他、設定項目は、その設定値の変更を、アプリケーションサーバ２の実行中に動的に反映可能な項目であることが望ましい。そして、仮想サーバインスタンス部３１は、これらの設定値を、外部からの入力情報に基づいて更新する。
【００３９】
このように、仮想サーバインスタンス部３１は、所定のアプリケーションサーバ２にマッピングされていると言える。例えば、図４に示すように、仮想サーバインスタンス部３１（仮想サーバインスタンス部Ａ）は、他の仮想サーバインスタンス部３１（仮想サーバインスタンス部Ｂ）と同一のアプリケーションサーバ識別情報を保持することにより、同一のアプリケーションサーバ２にマッピングされることが可能となっている。
【００４０】
なお、仮想サーバインスタンス部３１は、アプリケーションサーバ２に配備される各アプリケーションソフトウェアを、異なる運用グループに対してそれぞれサービスとして提供したい場合には、運用グループに対応付けられて生成されることが望ましい。
【００４１】
サービスリポジトリ３２は、仮想サーバインスタンス部３１と、該仮想サーバインスタンス部３１が代理受付する所定のアプリケーションソフトウェアを表すアプリケーション情報とを対応付けて記憶している。
【００４２】
ここで、アプリケーション情報とは、例えば、処理要求を表すリクエストＵＲＬ（Uniform Resource Locator）に含まれる情報であってもよい。例えば、アプリケーション情報は、リクエストＵＲＬ「http://aaa.com/App1」からホスト情報「http://aaa.com」を除いたコンテキストルートパス「/App1」であってもよい。
【００４３】
このようなサービスリポジトリ３２に記憶される情報の一例を図５に示す。図５において、例えば、「Ｉｎｓｔａｎｃｅ１」は、仮想サーバインスタンス部３１を識別可能な情報を表している。また、この仮想サーバインスタンス部３１を識別可能な情報に対応付けられた「／Ａｐｐ１」は、アプリケーション情報としてのリクエストＵＲＬに含まれるコンテキストルートパスを表している。
【００４４】
なお、以下の説明において例示する仮想サーバインスタンス部３１「Ｉｎｓｔａｎｃｅ１」と仮想サーバインスタンス部３１「Ｉｎｓｔａｎｃｅ２」とは、同一のアプリケーションサーバ識別情報を保持しているものとする。
【００４５】
また、アプリケーション情報は、リクエストＵＲＬに含まれる情報でなくてもよい。例えば、アプリケーション情報は、あらかじめアプリケーションに付与された識別情報であってもよい。
【００４６】
例えば、サービスリポジトリ３２は、管理ユーザが入力部３０７（図２）を操作することによってあらかじめ登録される。詳細には、管理ユーザは、仮想サーバインスタンス部３１と、該仮想サーバインスタンス部３１によってサービス提供可能なアプリケーション情報とのマッピング情報を、サービスリポジトリ３２にあらかじめ登録する。
【００４７】
例えば、アプリケーションサーバ２に配備された各種アプリケーションソフトウェアを異なる運用グループに対してそれぞれサービスとして提供したい場合を想定する。この場合、サービスリポジトリ３２は、運用グループ毎に、仮想サーバインスタンス部３１と、アプリケーションソフトウェアのアプリケーション情報とを対応付けて保持する。このとき、１つの運用グループに対して複数のアプリケーションをサービスとして提供したい場合、サービスリポジトリ３２は、１つの仮想サーバインスタンス部３１に対して複数のアプリケーション情報を対応付けて記憶してもよい。
【００４８】
差異抽出部３３は、仮想サーバインスタンス部３１において設定項目の設定値が更新されたとき、設定値が更新された仮想サーバインスタンス部３１と同一のアプリケーションサーバ識別情報を保持する他の仮想サーバインスタンス部３１を検索する。そして、差異抽出部３３は、設定値が更新された仮想サーバインスタンス部３１に保持される設定項目のうち、検索した他の仮想サーバインスタンス部３１に保持される設定値と差異のある設定値が設定された設定項目を抽出する。
【００４９】
また、差異抽出部３３は、抽出した設定項目と、差異のある設定値と、その差異のある設定値を保持する仮想サーバインスタンス部３１に対応付けられたアプリケーション情報を、アプリケーションサーバ２に送信する。このとき、差異抽出部３３は、サービスリポジトリ３２を参照することにより、その差異のある設定値を保持する仮想サーバインスタンス部３１に対応付けられたアプリケーション情報を取得する。また、差異抽出部３３がこれらの情報を送信する送信先は、その差異のある設定値を保持する仮想サーバインスタンス部３１が保持しているアプリケーションサーバ識別情報が表すアプリケーションサーバ２である。
【００５０】
次に、アプリケーションサーバ２の機能ブロック構成について図３を参照して説明する。図３において、アプリケーションサーバ２は、設定情報管理部２１と、複製オブジェクト生成部２２と、オブジェクトリポジトリ２３と、オブジェクト呼び出し介入部２４とを備えている。
【００５１】
ここで、設定情報管理部２１と、複製オブジェクト生成部２２と、オブジェクト呼び出し介入部２４とは、ＲＯＭ２０３または記憶装置２０４に記憶されたコンピュータ・プログラムモジュールをＲＡＭ２０２に読み込んで実行するＣＰＵ２０１によって構成される。また、オブジェクトリポジトリ２３は、記憶装置２０４によって構成される。なお、アプリケーションサーバ２の各機能ブロックを構成するハードウェア構成は上述の構成に限定されない。
【００５２】
設定情報管理部２１は、管理装置３から受信した設定項目に関する設定値を保持する設定値保持オブジェクトを、自装置が生成してＲＡＭ２０２上に展開しているオブジェクトの中から特定する。例えば、設定情報管理部２１は、各設定項目と設定値保持オブジェクトの種類を表すクラスとの対応関係をあらかじめ記憶しておくことにより、設定値保持オブジェクトを特定してもよい。あるいは、設定情報管理部２１は、管理装置３から受信した設定項目について、受信した差異のある設定値を設定する設定動作を仮に実行し、仮実行中の設定動作をトレースすることにより、設定値保持オブジェクトを特定してもよい。例えば、設定情報管理部２１は、設定動作を１ステップずつ実行し、設定値として渡した変数の値を保持する処理をトラップし、その処理を実行するオブジェクトを、設定を保持するオブジェクトとして特定する。各設定項目が、アプリケーションサーバ２の実行中にその設定値の変更を反映可能な項目であれば、設定動作中に設定値を保持する処理を実行するオブジェクトは、設定を保持するオブジェクトであるといえる。このような設定処理のトレースにより設定値保持オブジェクトを特定する場合、設定情報管理部２１は、設定項目と設定値保持オブジェクトのクラスとの対応関係をあらかじめ記憶しておく必要がないという利点がある。なお、仮設定処理のトレースにより設定値保持オブジェクトを特定する場合、設定情報管理部２１は、特定した設定値保持オブジェクトに現時点で保持される設定値を変更しないようにする。
【００５３】
複製オブジェクト生成部２２は、設定情報管理部２１によって特定された設定値保持オブジェクトの複製オブジェクトを生成する。そして、複製オブジェクト生成部２２は、生成した複製オブジェクトに、管理装置３から受信した差異のある設定値を保持させる。
【００５４】
オブジェクトリポジトリ２３は、複製オブジェクトの参照先を表す複製オブジェクト参照情報と、設定値保持オブジェクトのクラスを表すクラス情報と、管理装置３から受信したアプリケーション情報とを対応付けて記憶する。ここで、オブジェクトリポジトリ２３に記憶される情報の一例を図６に示す。
【００５５】
図６では、アプリケーション情報「／Ａｐｐ１」にクラス情報「Ｃｌａｓｓ１」および複製オブジェクト参照情報「Ｏｂｊｅｃｔ１」が対応付けられている。図５のサービスリポジトリ３２の例によれば、アプリケーション情報「／Ａｐｐ１」をサービスとして提供する仮想サーバインスタンス部３１は「Ｉｎｓｔａｎｃｅ１」である。したがって、図６の例は、仮想サーバインスタンス部３１の「Ｉｎｓｔａｎｃｅ１」において、「ウェブコンテナのアクセスログの採取設定」に関して、「Ｉｎｓｔａｎｃｅ１」と同一のアプリケーションサーバ２にマッピングされた「Ｉｎｓｔａｎｃｅ２」と異なる設定値が保持されていることを表している。この例では、アプリケーションサーバ２において、「ウェブコンテナのアクセスログの採取設定」の現在の設定値を保持する設定値保持オブジェクトのクラスは、「Ｃｌａｓｓ１」である。また、この設定値保持オブジェクトを複製した複製オブジェクトの参照先は「Ｏｂｊｅｃｔ１」である。そして、この「Ｏｂｊｅｃｔ１」によって参照される複製オブジェクトは、管理装置３の仮想サーバインスタンス部３１「Ｉｎｓｔａｎｃｅ１」における「ウェブコンテナのアクセスログの採取設定」の設定値を保持している。
【００５６】
なお、この場合、仮想サーバインスタンス部３１「Ｉｎｓｔａｎｃｅ２」は、設定項目「ウェブコンテナのアクセスログの採取設定」に関して、アプリケーションサーバ２の設定値保持オブジェクトが保持するデフォルトの設定値を保持しているものとする。
【００５７】
また、オブジェクトリポジトリ２３が記憶する情報は、例えば、設定情報管理部２１によって登録されてもよい。
【００５８】
オブジェクト呼び出し介入部２４は、クライアント端末９からの処理要求を仮想サーバインスタンス部３１から中継されると、処理要求に応じてアプリケーションサーバ２において実行される処理におけるオブジェクト呼び出しに介入する。
【００５９】
具体的には、オブジェクト呼び出し介入部２４は、仮想サーバインスタンス部３１から中継される処理要求に応じて自装置において実行される処理におけるオブジェクト呼び出しを検出する。そして、オブジェクト呼び出し介入部２４は、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しであるか否かを判断する。そして、オブジェクト呼び出し介入部２４は、該当するクラスのオブジェクト呼び出しであると判断した場合に、該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、検出したオブジェクト呼び出しの呼び出し元のオブジェクトに渡す。
【００６０】
これにより、オブジェクト呼び出し介入部２４は、同一のアプリケーションサーバ２にマッピングされた各仮想サーバインスタンス部３１から中継される処理要求において、設定項目の設定値に関わるオブジェクトの呼び出し先を、仮想サーバインスタンス部３１毎に振り分けることができることになる。
【００６１】
以上のように構成されたアプリケーションサーバ管理システム１の動作について、図面を参照して説明する。
【００６２】
まず、アプリケーションサーバ管理システム１が設定項目の差異を抽出して複製オブジェクトを登録する差異抽出登録動作について、図７を参照して説明する。なお、図７において、左図は管理装置３の動作を表し、右図はアプリケーションサーバ２の動作を表すものとする。また、左右を結ぶ破線の矢印はデータの流れを表すものとする。また、アプリケーションサーバ管理システム１は、管理装置３の仮想サーバインスタンス部３１において設定値が更新されたタイミングで図７の差異抽出登録動作を開始するものとする。
【００６３】
まず、管理装置３の差異抽出部３３は、設定が更新された仮想サーバインスタンス部３１において保持されている設定項目のうち、該当する仮想サーバインスタンス部３１と同一のアプリケーションサーバ識別情報を有する他の仮想サーバインスタンス部３１に保持される設定値とは異なる設定値が設定された設定項目を抽出する（ステップＳ１）。
【００６４】
次に、差異抽出部３３は、ステップＳ１で抽出した差異のある設定値を保持する仮想サーバインスタンス部３１に対応付けられたアプリケーション情報を、サービスリポジトリ３２から取得する（ステップＳ２）。
【００６５】
次に、差異抽出部３３は、ステップＳ１で抽出した設定項目、その差異のある設定値、および、ステップＳ２で取得したアプリケーション情報を、アプリケーションサーバ２に送信する（ステップＳ３）。
【００６６】
このとき、差異抽出部３３は、差異のある設定値を保持する仮想サーバインスタンス部３１に保持されるアプリケーションサーバ識別情報が表すアプリケーションサーバ２を送信先とする。
【００６７】
次に、設定項目、設定値、およびアプリケーション情報を受信したアプリケーションサーバ２の設定情報管理部２１は、受信した設定項目に関する現時点の設定値を保持する設定値保持オブジェクトを特定する（ステップＳ４）。
【００６８】
このとき、設定情報管理部２１は、アプリケーションサーバ２によってメモリ上に展開されているオブジェクトの中から、該当する設定項目に関する現在の設定値を保持する設定値保持オブジェクトを検索することにより特定を行う。例えば、前述のように、設定情報管理部２１は、設定項目と、その設定項目に関する設定値保持オブジェクトのクラスを対応付けた情報をあらかじめ記憶しておくことにより、設定保持オブジェクトを特定してもよい。あるいは、設定情報管理部２１は、アプリケーションサーバ２に、受信した設定項目について、受信した設定値を設定する処理を仮実行させ、仮実行中の設定処理をトレースすることにより設定値保持オブジェクトを特定してもよい。
【００６９】
次に、複製オブジェクト生成部２２は、ステップＳ４で特定された設定値保持オブジェクトの複製オブジェクトを生成する。そして、複製オブジェクト生成部２２は、生成した複製オブジェクトに、ステップＳ４で受信された差異のある設定値を保持させる（ステップＳ５）。
【００７０】
次に、設定情報管理部２１は、ステップＳ４で受信したアプリケーション情報、ステップＳ４で特定した設定値保持オブジェクトのクラス情報、および、ステップＳ５で生成した複製オブジェクトの参照情報を対応付けて、オブジェクトリポジトリ２３に登録する（ステップＳ６）。
【００７１】
以上で、アプリケーションサーバ管理システム１は差異抽出登録動作を終了する。
【００７２】
次に、アプリケーションサーバ管理システム１が、仮想サーバインスタンス部３１毎に、設定値に基づく動作を振り分けるためのオブジェクト呼び出し介入動作について、図８を参照して説明する。なお、アプリケーションサーバ管理システム１は、仮想サーバインスタンス部３１から中継される処理要求を受信した時点で図８の動作を開始するものとする。
【００７３】
まず、オブジェクト呼び出し介入部２４は、オブジェクトリポジトリ２３において、受信した処理要求の中継元の仮想サーバインスタンス部３１用のクラス情報を検索する。具体的には、オブジェクト呼び出し介入部２４は、処理要求を表すリクエストＵＲＬから、ホスト情報を除いたコンテキストルートパスで表されるアプリケーション情報を取得する。そして、オブジェクト呼び出し介入部２４は、取得したアプリケーション情報に対応付けられたクラス情報の一覧を、オブジェクトリポジトリ２３から検索する（ステップＳ１１）。
【００７４】
ここで、図５において説明したように、１つの仮想サーバインスタンス部３１に対して、１つ以上のアプリケーション情報があらかじめマッピングされている。このため、オブジェクト呼び出し介入部２４は、処理要求に含まれるアプリケーション情報に対応付けられたクラス情報を取得することにより、中継元の仮想サーバインスタンス部３１用に登録されたクラス情報を検索できることになる。
【００７５】
次に、オブジェクト呼び出し介入部２４は、処理要求に応じてアプリケーションサーバ２によって実行される処理におけるオブジェクト呼び出しを検出する（ステップＳ１２）。
【００７６】
次に、オブジェクト呼び出し介入部２４は、検出したオブジェクト呼び出しが、ステップＳ１１で取得したいずれかのクラス情報のオブジェクトの呼び出しであるか否かを判断する（ステップＳ１３）。
【００７７】
ここで、該当するクラス情報のオブジェクトの呼び出しではないと判断した場合、アプリケーションサーバ管理システム１の動作はステップＳ１５に進む。
【００７８】
一方、該当するクラス情報のオブジェクトの呼び出しであると判断した場合、オブジェクト呼び出し介入部２４は、オブジェクトリポジトリ２３において、該当するアプリケーション情報および該当するクラス情報に対応付けられた複製オブジェクト参照情報を取得する。そして、オブジェクト呼び出し介入部２４は、複製オブジェクト参照情報を、ステップＳ１２で検出されたオブジェクト呼び出し元のオブジェクトに渡す（ステップＳ１４）。
【００７９】
次に、オブジェクト呼び出し介入部２４は、仮想サーバインスタンス部３１から中継された処理要求に応じた処理が終了したか否かを判断する（ステップＳ１５）。
【００８０】
ここで、処理要求に応じた処理が終了していないと判断した場合、アプリケーションサーバ管理システム１の動作はステップＳ１２に戻る。
【００８１】
一方、処理要求に応じた処理が終了したと判断した場合、アプリケーションサーバ管理システム１は、オブジェクト呼び出し介入動作を終了する。
【００８２】
次に、本発明の実施の形態の効果について述べる。
【００８３】
本発明の実施の形態としてのアプリケーションサーバ管理システムは、同一のアプリケーションサーバを表す複数の仮想サーバインスタンスを異なる設定値で動作させることができる。
【００８４】
その理由は、管理装置に備えられた差異抽出部が、同一のアプリケーションサーバを表す複数の仮想サーバインスタンス間で設定値に差異のある設定項目を抽出し、アプリケーションサーバの設定情報管理部が、差異のある設定項目の現在の設定値を保持する設定値保持オブジェクトを特定し、複製オブジェクト生成部が、設定値保持オブジェクトの複製オブジェクトを生成して差異のある設定値を保持させ、オブジェクトリポジトリが、設定値保持オブジェクトのクラスと、複製オブジェクトと、アプリケーション情報とを対応付けて保持しておくからである。そして、アプリケーションサーバは、仮想サーバインスタンスを介してユーザからの処理要求を受信すると、その処理要求対象のアプリケーション情報に対応付けられたクラスの呼び出しを検出し、検出したクラスおよび該当するアプリケーション情報に対応付けられた複製オブジェクトの参照情報を、呼び出し元のオブジェクトに渡すからである。
【００８５】
すなわち、本発明の実施の形態としてのアプリケーションサーバ管理システムは、同一のアプリケーションサーバを表す複数の仮想サーバインスタンス部間で差異のある設定項目をそれぞれ保持する複製オブジェクトを生成する。そして、本発明の実施の形態としてのアプリケーションサーバ管理システムは、仮想サーバインスタンス部を介してユーザからの処理要求を受信すると、その処理要求における設定値保持オブジェクトへのアクセスを、その処理要求に含まれるアプリケーション情報に基づいて、中継元の仮想サーバインスタンス毎に生成された複製オブジェクトに振り分けることができるからである。
【００８６】
したがって、本発明の実施の形態としてのアプリケーションサーバ管理システムは、同一のアプリケーションサーバに配備された各アプリケーションを異なる運用グループに所属させたい場合に、運用グループ間で設定値を衝突させないようにすることができる。すなわち、本発明の実施の形態としてのアプリケーションサーバ管理システムは、運用グループ毎に仮想サーバインスタンスを生成して提供可能なアプリケーション情報にマッピングしておくことにより、同一のアプリケーションサーバを表す各仮想サーバインスタンスを、異なる運用グループに所属させて異なる運用ポリシーに従った異なる設定値で動作させることが可能となる。
【００８７】
なお、本発明の実施の形態において、アプリケーションサーバ２の設定情報管理部２１が、管理装置３から受信した設定項目について、差異のある設定値を仮設定する設定処理をトレースすることにより、設定値保持オブジェクトを特定する例について説明したが、設定情報管理部２１は、その他の情報に基づいて設定値保持オブジェクトを特定してもよい。例えば、設定情報管理部２１は、あらかじめ設定項目と設定値保持オブジェクトの対応関係を記憶しておくことにより、設定値保持オブジェクトを特定してもよい。なお、仮設定処理をトレースして設定値保持オブジェクトを特定することにより、設定情報管理部２１は、あらかじめ何らかの情報を記憶しておくことなく、設定値保持オブジェクトを特定することができる。
【００８８】
また、本発明の実施の形態において、管理装置３のサービスリポジトリ３２およびアプリケーションサーバ２のオブジェクトリポジトリ２３に記憶されるアプリケーション情報は、クライアントからの処理要求を表すリクエストＵＲＬに含まれる情報である例について説明したが、アプリケーション情報は、アプリケーションを表すその他の情報であってもよい。例えば、アプリケーション情報は、該当するアプリケーションに対する処理要求を受け付ける仮想サーバインスタンス部３１に付与された仮想サーバインスタンス識別情報であってもよい。この場合、オブジェクトリポジトリ２３は、例えば、図９に示すような情報を格納する。そして、この場合、オブジェクト呼び出し介入部２４は、処理要求の中継元の仮想サーバインスタンス部３１の識別情報に対応付けられたクラスのオブジェクト呼び出しを検出するようにすればよい。なお、アプリケーション情報としてリクエストＵＲＬに含まれる情報を用いることにより、本発明の実施の形態としてのアプリケーションサーバ管理システム１は、アプリケーションソフトウェアに対する処理要求を代理受付する仮想サーバインスタンス部３１が変更される場合にも、アプリケーションというサービス提供単位ごとに、そのサービスを利用する運用グループごとに異なる設定値を適用することを可能とする。
【００８９】
また、本発明の実施の形態において、管理装置３およびアプリケーションサーバ２は異なるコンピュータ装置によって構成されるものとして説明したが、本発明の管理装置およびアプリケーションサーバは、同一のコンピュータ装置によって構成されていてもよい。
【００９０】
また、上述した本発明の実施の形態において、各フローチャートを参照して説明した管理装置およびアプリケーションサーバの動作を、本発明のコンピュータ・プログラムとして各装置の記憶装置（記憶媒体）に格納しておき、係るコンピュータ・プログラムを当該ＣＰＵが読み出して実行するようにしてもよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムのコード或いは記憶媒体によって構成される。
【００９１】
また、本発明は、上述した実施の形態に限定されず、様々な態様で実施されることが可能である。
【００９２】
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００９３】
（付記１）
アプリケーションサーバと、前記アプリケーションサーバを管理する管理装置とを備え、
前記管理装置は、
所定の前記アプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部と、
前記仮想サーバインスタンス部、および、該仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を対応付けて記憶したサービスリポジトリと、
前記仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出するとともに、抽出した設定項目、前記差異のある設定値、および前記サービスリポジトリにおいて前記差異のある設定値を保持する仮想サーバインスタンス部に対応付けられたアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異抽出部と、
を有し、
前記アプリケーションサーバは、
前記管理装置から受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、自装置によって生成されているオブジェクトの中から特定する設定情報管理部と、
前記設定情報管理部によって特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記管理装置から受信した前記差異のある設定値を保持させる複製オブジェクト生成部と、
前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記管理装置から受信したアプリケーション情報とを対応付けて記憶するオブジェクトリポジトリと、
前記仮想サーバインスタンス部から中継される前記処理要求に応じて自装置において実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入部と、
を有するアプリケーションサーバ管理システム。
【００９４】
（付記２）
前記アプリケーションサーバの前記設定情報管理部は、前記管理装置から受信した設定項目について、前記差異のある設定値を設定する設定処理を仮に実行し、仮実行中の設定処理をトレースすることにより、前記設定値保持オブジェクトを特定することを特徴とする付記１に記載のアプリケーションサーバ管理システム。
【００９５】
（付記３）
前記サービスリポジトリは、前記アプリケーション情報として、前記クライアントからの処理要求を表すリクエストＵＲＬ（Uniform Resource Locator）に含まれる情報を記憶し、
前記オブジェクト呼び出し介入部は、前記検出したオブジェクト呼び出しが、前記仮想サーバインスタンス部から中継される前記処理要求を表すリクエストＵＲＬに含まれる情報に対応付けられたクラスのオブジェクト呼び出しである場合に、前記オブジェクト参照情報を、前記呼び出し元のオブジェクトに渡すことを特徴とする付記１または付記２に記載のアプリケーションサーバ管理システム。
【００９６】
（付記４）
所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出する差異抽出ステップと、
前記差異抽出ステップで抽出された設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、前記アプリケーションサーバによって生成されているオブジェクトの中から特定する設定値保持オブジェクト特定ステップと、
前記設定値保持オブジェクト特定ステップで特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記差異のある設定値を保持させる複製オブジェクト生成ステップと、
前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報とを対応付けてオブジェクトリポジトリに登録する複製オブジェクト登録ステップと、
前記仮想サーバインスタンス部から中継される前記処理要求に応じて前記アプリケーションサーバにおいて実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入ステップと、
を備えたアプリケーションサーバ管理方法。
【００９７】
（付記５）
前記設定値保持オブジェクト特定ステップは、前記差異抽出ステップで抽出された設定項目について、前記アプリケーションサーバにおいて前記差異のある設定値を設定する設定処理を仮に実行し、仮実行中の設定処理をトレースすることにより、前記設定値保持オブジェクトを特定することを特徴とする付記４に記載のアプリケーションサーバ管理方法。
【００９８】
（付記６）
１つ以上のアプリケーションサーバを管理する管理装置であって、
所定の前記アプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに処理要求するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部と、
前記仮想サーバインスタンス部、および、該仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を対応付けて記憶したサービスリポジトリと、
前記仮想サーバインスタンス部において前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出するとともに、抽出した設定項目、前記差異のある設定値、および前記サービスリポジトリにおいて前記差異のある設定値を保持する仮想サーバインスタンス部に対応付けられたアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異抽出部と、
を備えた管理装置。
【００９９】
（付記７）
前記サービスリポジトリは、前記アプリケーション情報として、前記クライアントからの処理要求を表すリクエストＵＲＬに含まれる情報を記憶することを特徴とする付記６に記載の管理装置。
【０１００】
（付記８）
所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部を有する管理装置によって管理されるアプリケーションサーバであって、
前記管理装置から、自装置のアプリケーションサーバ識別情報を保持する他の仮想サーバインスタンス部に対して差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報、前記差異のある設定値、および、その設定項目を受信し、受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、自装置によって生成されているオブジェクトの中から特定する設定情報管理部と、
前記設定情報管理部によって特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記管理装置から受信した前記差異のある設定値を保持させる複製オブジェクト生成部と、
前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記管理装置から受信したアプリケーション情報とを対応付けて記憶するオブジェクトリポジトリと、
前記仮想サーバインスタンス部から中継される前記処理要求に応じて自装置において実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入部と、
を備えたアプリケーションサーバ。
【０１０１】
（付記９）
前記設定情報管理部は、前記管理装置から受信した設定項目について、前記差異のある設定値を設定する設定処理を仮に実行し、仮実行中の設定処理をトレースすることにより、前記設定値保持オブジェクトを特定することを特徴とする付記８に記載のアプリケーションサーバ。
【０１０２】
（付記１０）
所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部において、前記設定値が更新されたとき、前記各設定項目のうち、該仮想サーバインスタンス部と同一のアプリケーションサーバ識別情報を保持する他の前記仮想サーバインスタンス部に保持される設定値と差異のある設定値が設定された設定項目を抽出する差異抽出ステップと、
前記設定項目抽出ステップで抽出された設定項目、前記差異のある設定値、および前記差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報を、該仮想サーバインスタンス部が保持する前記アプリケーションサーバ識別情報が表すアプリケーションサーバに送信する差異送信ステップと、
をコンピュータ装置に実行させるコンピュータ・プログラム。
【０１０３】
（付記１１）
所定のアプリケーションサーバを識別するアプリケーションサーバ識別情報を保持し、保持したアプリケーションサーバ識別情報が表す前記アプリケーションサーバに配備された所定のアプリケーションソフトウェアに対するクライアントからの処理要求を代理受付して該アプリケーションサーバに中継するとともに、該アプリケーションサーバの動作をカスタマイズするための各設定項目に対する設定値を、外部からの入力情報に基づいて更新可能に保持する１つ以上の仮想サーバインスタンス部を有する管理装置から、同一のアプリケーションサーバ識別情報を保持する他の仮想サーバインスタンス部に対して差異のある設定値を保持する仮想サーバインスタンス部が代理受付する前記所定のアプリケーションソフトウェアを表すアプリケーション情報、前記差異のある設定値、および、その設定項目を受信する差異受信ステップと、
前記差異受信ステップで受信した設定項目に関する現在の設定値を保持する設定値保持オブジェクトを、前記アプリケーションサーバによって生成されているオブジェクトの中から特定する設定値保持オブジェクト特定ステップと、
前記設定値保持オブジェクト特定ステップで特定された設定値保持オブジェクトの複製オブジェクトを生成するとともに、生成した複製オブジェクトに、前記差異受信ステップで受信した前記差異のある設定値を保持させる複製オブジェクト生成ステップと、
前記複製オブジェクトの参照先を表す複製オブジェクト参照情報と、前記設定値保持オブジェクトのクラスを表すクラス情報と、前記差異受信ステップで受信したアプリケーション情報とを対応付けてオブジェクトリポジトリに登録する複製オブジェクト登録ステップと、
前記仮想サーバインスタンス部から中継される前記処理要求に応じて前記アプリケーションサーバにおいて実行される処理におけるオブジェクト呼び出しを検出し、検出したオブジェクト呼び出しが、該処理要求の対象となるアプリケーションソフトウェアのアプリケーション情報に対応付けられたクラスのオブジェクト呼び出しである場合、前記オブジェクトリポジトリにおいて該アプリケーション情報および該クラス情報に対応付けられたオブジェクト参照情報を、前記オブジェクト呼び出しの呼び出し元のオブジェクトに渡すオブジェクト呼び出し介入ステップと、
をコンピュータ装置に実行させるコンピュータ・プログラム。
【符号の説明】
【０１０４】
１    アプリケーションサーバ管理システム
２    アプリケーションサーバ
３    管理装置
９    クライアント端末
２１    設定情報管理部
２２    複製オブジェクト生成部
２３    オブジェクトリポジトリ
２４    オブジェクト呼び出し介入部
３１    仮想サーバインスタンス部
３２    サービスリポジトリ
３３    差異抽出部
２０１、３０１    ＣＰＵ
２０２、３０２    ＲＡＭ
２０３、３０３    ＲＯＭ
２０４、３０４    記憶装置
２０５、３０５、３０６    通信モジュール
【図１】
0005605229.tif 000002
【図２】
0005605229.tif 000003
【図３】
0005605229.tif 000004
【図４】
0005605229.tif 000005
【図５】
0005605229.tif 000006
【図６】
0005605229.tif 000007
【図７】
0005605229.tif 000008
【図８】
0005605229.tif 000009
【図９】
0005605229.tif 000010