(57)【要約】【課題】自己の分散処理システムのオブジェクト制御手順を使って他の分散処理システムのオブジェクトを呼び出したりその状態を変更する処理をオブジェクトの制御として行うことのできる分散処理システム連携システム、分散処理システム連携方法および分散処理システム連携プログラムを得る。【解決手段】オブジェクト１１５はオブジェクト呼び出し機能１１１を第１の分散処理システム１０１の手順によって呼び出し、これによりオブジェクト管理表１１３を使用してオブジェクト１２５の所在が確認される。連携クライアント１１４は、呼び出しの内容を抽象化されたフォーマットに変換して、抽象化された通信プロトコルによって連携サーバ１２４に送信する。連携サーバ１２４は、オブジェクト呼び出し機能１２１を使ってオブジェクト１２５を呼び出す。オブジェクト制御機能を使用して制御も可能である。【選択図】図１
2008225625.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトの一覧を管理する第１のオブジェクト管理表と、自己のシステム内のオブジェクトからオブジェクトの呼び出しが行われるとき、前記第１のオブジェクト管理表を使用して呼び出しの対象となるオブジェクトの所在を判別するオブジェクト所在判別手段と、このオブジェクト所在判別手段が前記呼び出しの対象となるオブジェクトを他の分散処理システムに存在すると判別したとき、その分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアント手段とを備えた第１の分散処理システムと、
抽象化されたフォーマットによる抽象化された通信プロトコルによって、他の分散処理システム内のオブジェクトから自己のシステムに存在するオブジェクトの呼び出しが行われたとき、この受信した呼び出しの内容を自己のシステムの呼び出し手順に変換する連携サーバ手段と、オブジェクトの一覧を管理する第２のオブジェクト管理表と、前記連携サーバ手段が変換した呼び出し手順に基づいて前記第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すオブジェクト呼び出し手段とを備えた第２の分散処理システム
とを具備することを特徴とする分散処理システム連携システム。
【請求項２】
呼び出しの行われるオブジェクトの存在する他の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアント手段と、自己のシステム内のオブジェクトから前記他の分散処理システムのオブジェクトの呼び出しが行われるとき前記連携クライアント手段を呼ぶためのスタブを生成する連携スタブ生成手段とを備えた第１の分散処理システムと、
抽象化されたフォーマットによる抽象化された通信プロトコルによって、他の分散処理システム内のオブジェクトから自己のシステムに存在するオブジェクトの呼び出しが行われたとき、この受信した呼び出しの内容を自己のシステムの呼び出し手順に変換する連携サーバ手段と、オブジェクトの一覧を管理する第２のオブジェクト管理表と、前記連携サーバ手段が変換した呼び出し手順に基づいて前記第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すオブジェクト呼び出し手段とを備えた第２の分散処理システム
とを具備することを特徴とする分散処理システム連携システム。
【請求項３】
前記第１の分散処理システムは、オブジェクトの状態を変更する処理をオブジェクトの制御として行うオブジェクト制御手段と、このオブジェクト制御手段に前記第２の分散処理システム上のオブジェクトの前記制御を指示するオブジェクト制御指示手段とを備え、前記連携クライアント手段は、このオブジェクト制御指示手段が前記第２の分散処理システム上のオブジェクトの制御を指示したとき前記制御内容を抽象化して前記第２の分散処理システムの連携サーバ手段に送信する手段であり、
前記第２の分散処理システムは、自己のシステム内のオブジェクトに対する前記制御を実行するオブジェクト制御手段を備え、前記連携サーバ手段は前記第１の分散処理システムの前記オブジェクト制御指示手段がオブジェクトの前記制御を指示したときこの指示を自己のシステムの前記オブジェクト制御指示手段に渡してそのオブジェクトに対する前記制御を実行させることを特徴とする請求項１または請求項２記載の分散処理システム連携システム。
【請求項４】
前記第１の分散処理システムおよび第２の分散処理システムは、共に前記連携クライアント手段と連携サーバ手段を備え、互いに同一構成となっていることを特徴とする請求項１または請求項２記載の分散処理システム連携システム。
【請求項５】
前記連携クライアント手段を使用して前記第２のオブジェクト管理表の制御の結果を前記第１のオブジェクト管理表に反映させるオブジェクト管理表反映手段を具備することを特徴とする請求項１記載の分散処理システム連携システム。
【請求項６】
前記第１の分散処理システムはスタブを生成するスタブ生成手段を備え、このスタブ生成手段によって生成されたスタブを通して前記第２の分散処理システム内のオブジェクトの呼び出しが行われることを特徴とする請求項１記載の分散処理システム連携システム。
【請求項７】
前記第１の分散処理システムおよび第２の分散処理システムと同一の構成の分散処理システムが全体として３以上存在し、それぞれの前記連携クライアント手段は、他のすべての分散処理システムの連携サーバ手段に送信を行う構成となっていることを特徴とする請求項４記載の分散処理システム連携システム。
【請求項８】
第１の分散処理システム内のオブジェクトからオブジェクトの呼び出しが行われるとき、この第１の分散処理システム内に設けられオブジェクトの一覧を管理する第１のオブジェクト管理表を使用して呼び出しの対象となるオブジェクトの所在を判別するオブジェクト所在判別ステップと、
このオブジェクト所在判別ステップで前記呼び出しの対象となるオブジェクトが第２の分散処理システムに存在すると判別したとき、その第２の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアントステップと、
この連携クライアントステップでオブジェクトの呼び出しの行われた第２の分散処理システムで、この受信した呼び出しの内容を自己のシステムの呼び出し手順に変換する連携サーバステップと、
この連携サーバステップで変換した呼び出し手順に基づいて、この第２の分散処理システム内に設けられオブジェクトの一覧を管理する第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すオブジェクト呼び出しステップ
とを具備することを特徴とする分散処理システム連携方法。
【請求項９】
第１の分散処理システム内のオブジェクトからオブジェクトの呼び出しが行われるとき、所定のスタブを生成する連携スタブ生成ステップと、
この連携スタブ生成ステップで生成されたスタブによって呼ばれ、呼び出しの行われるオブジェクトの存在する第２の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアントステップと、
この連携クライアントステップでオブジェクトの呼び出しの行われた第２の分散処理システムで、この受信した呼び出しの内容を自己のシステムの呼び出し手順に変換する連携サーバステップと、
この連携サーバステップで変換した呼び出し手順に基づいて、この第２の分散処理システム内に設けられオブジェクトの一覧を管理する第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すオブジェクト呼び出しステップ
とを具備することを特徴とする分散処理システム連携方法。
【請求項１０】
自己の分散処理システムと連携する他の分散処理システムに存在するオブジェクトの一覧を管理するオブジェクト管理表を備えたコンピュータに、
自己のシステム内のオブジェクトから他の分散処理システムに存在するオブジェクトの呼び出しおよびオブジェクトの状態を変更する処理としてのオブジェクトの制御が行われるとき、前記オブジェクト管理表を使用して呼び出しの対象となるオブジェクトの所在を判別するオブジェクト所在判別処理と、
このオブジェクト所在判別処理で前記呼び出しの対象となるオブジェクトが他の分散処理システムに存在すると判別したとき、その分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアント処理と、
この連携クライアント処理によって呼び出した他の分散処理システム上のオブジェクトに対して、その前記制御の内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルを用いることで、前記他の分散処理システム内でオブジェクトの状態を変更する処理をオブジェクトの制御として行うオブジェクト制御手段に対して目的とする制御を実行させるオブジェクト制御処理
とを実行させることを特徴とする分散処理システム連携プログラム。
【請求項１１】
自己の分散処理システムのコンピュータに、
自己の分散処理システム内のオブジェクトから他の分散処理システムのオブジェクトの呼び出しが行われるとき所定のスタブを生成する連携スタブ生成処理と、
この連携スタブ生成処理で生成されたスタブによって呼ばれ、呼び出しの行われるオブジェクトの存在する前記他の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアント処理と、
この連携クライアント処理によって呼び出した前記他の分散処理システム上のオブジェクトに対して、オブジェクトの状態を変更する処理としてのオブジェクトの制御の内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルを用いることで、前記他の分散処理システム内でオブジェクトの状態を変更する処理をオブジェクトの制御として行うオブジェクト制御手段に対して目的とする制御を実行させるオブジェクト制御処理
とを実行させることを特徴とする分散処理システム連携プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散処理システム同士の連携を可能にする分散処理システム連携システム、分散処理システム連携方法および分散処理システム連携プログラムに係わり、特に他の分散処理システム内のオブジェクトを呼び出したりオブジェクトの状態を変更する処理としてオブジェクトを制御する際に好適な分散処理システム連携システム、分散処理システム連携方法および分散処理システム連携プログラムに関する。
【背景技術】
【０００２】
近年、情報システムの多機能化がますます進んでいる。このような情報システムの構築、管理ならびに運用コストを低減させる手段として、分散処理システムが広く利用されている。このような分散処理システムでは、たとえば、ＥＪＢ（Enterprise Java（登録商標） Beans）、ＣＯＲＢＡ（Common Object Request Broker Architecture）のように、情報システムの機能をオブジェクトと呼ばれる小機能単位に分割して構築、管理ならびに運用ができるようにしている。
【０００３】
このような分散システム同士の連携に関しては、企業内の情報システムの連携あるいは企業間の情報システムの連携といった要求が現状では多い。家庭に多機能のホームサーバが普及したり携帯端末が多機能化することによって、将来的には、企業と家庭あるいは個人の間のシステム連携といったニーズも多くなると思われる。
【０００４】
ところで、分散システム同士の連携については、従来から２つの問題がある。第１の問題は、他の分散システムに属するコンピュータ上のオブジェクトをどのように特定してアクセスするかということである。第２の問題は、分散処理システムの間でプロトコルが異なる場合があり、このような場合に複数の分散処理システムの間で通信の互換性がない点をどのように解決するかということである。
【０００５】
このうちの第１の問題については、コンピュータそれぞれに関するリストを保持する特別のコンピュータを利用することで、オブジェクトへのアクセスを可能にする提案が第１の提案として行われている（たとえば特許文献１参照）。
【０００６】
図１０は、この第１の提案における他のコンピュータ上のオブジェクトにアクセスする原理を示したものである。クライアントコンピュータ６０１からターゲットコンピュータ６０２上のオブジェクト６０３にアクセスするものとする。この第１の提案では、クライアントコンピュータ６０１とターゲットコンピュータ６０２の間に、サーバコンピュータ６０５と中継コンピュータ６０６を配置した構成を採っている。
【０００７】
ここで、サーバコンピュータ６０５は、クライアントコンピュータ６０１と、同じネットワーク機構としての第１のネットワーク機構６１１に接続している。ターゲットコンピュータ６０２は、これと異なる第２のネットワーク機構６１２に接続している。中継コンピュータ６０６は、この２つのネットワーク機構６１１、６１２の双方に接続している。クライアントコンピュータ６０１は、ネットワーク上の他のコンピュータ上のオブジェクト６０３を制御しようとするコンピュータである。また、ターゲットコンピュータ６０２は、クライアントコンピュータ６０１によって制御されるオブジェクト６０３を有するコンピュータである。
【０００８】
サーバコンピュータ６０５は、クライアントコンピュータ６０１と同じ第１のネットワーク機構６１１を使用するコンピュータと、中継コンピュータ６０６のリストを管理している。そして、クライアントコンピュータ６０１からコンピュータリストを要求されると、これを提供する役割を持っている。中継コンピュータ６０６は、クライアントコンピュータ６０１とは別の第２のネットワーク機構６１２を使用するコンピュータのリストを管理し、クライアントコンピュータ６０１から要求を受けると、そのコンピュータリストをこれに提供する役割を持っている。また、中継コンピュータ６０６は、クライアントコンピュータ６０１がターゲットコンピュータ６０２にアクセスするとき、これらの間の通信の中継を行う。
【０００９】
次に、第２の問題を具体的に説明する。現在広く用いられている分散処理システムには、基本的に相互互換性がない。したがって、複数の分散処理システムを連携させる場合、開発者は関連する分散処理システムすべての通信プロトコルやオブジェクトに関して呼び出し手順を習得しなければならなかった。また、分散処理システム上のソフトウェアも連携相手の分散処理システムの仕様に依存した構造になっており、移植性の面で問題があった。更に、新たな分散処理システムとの連携を追加する場合に既存の連携プログラムを大幅に作り直さなければならないといった問題が生じていた。
【００１０】
このような問題に対する解決策の一つとして、分散環境における情報交換用プロトコルとしてのＳＯＡＰ(Simple Object Access Protocol)が用いられている。ＳＯＡＰとは、分散環境における情報交換用のプロトコルである。ところが、ＳＯＡＰが定義するのはＨＴＴＰ（HyperText Transfer Protocol）やＸＭＬ（eXtensible Markup Language）といった通信プロトコルレベルまでの抽象化である（たとえば特許文献２参照）。すなわち、オブジェクトの呼び出しや制御手順までの抽象化は行っていない。
【特許文献１】特開平１０−２７５０８３号公報（第００１１段落〜第００１３段落、図１）
【特許文献２】特表平１１−５００２４８号公報（第９ページ第１７行目〜第２４行目）
【発明の開示】
【発明が解決しようとする課題】
【００１１】
一方、ネットワークを介したサービス連携の共通仕様も進められている。これによるＳＣＡ(Service Component Architecture)の策定も進んでいる。しかしながら、ＳＣＡではオブジェクトが他のオブジェクトを呼ぶ際に、自身の分散処理システムの手順ではなくＳＣＡで定義される手順でオブジェクトの呼び出しを行う必要がある。また、オブジェクト制御もサポートされていない。
【００１２】
このため、開発者はＳＣＡのオブジェクト呼び出し手順を習得して、呼び出し先のオブジェクト制御を呼び出し先の分散処理システムの手順で行う必要があった。
【００１３】
以上説明したように、情報システムのネットワーク化が進む今日では複数の分散処理システムを連携させる機会が増えており、分散処理システムの非互換性の問題はソフトウェア開発の分野においてますます大きな障害となってきている。
【００１４】
そこで本発明の目的は、自己の分散処理システムのオブジェクト制御手順を使って他の分散処理システムのオブジェクトを呼び出したりその状態を変更する処理をオブジェクトの制御として行うことのできる分散処理システム連携システム、分散処理システム連携方法および分散処理システム連携プログラムを提供することにある。
【課題を解決するための手段】
【００１５】
請求項１記載の発明では、（イ）オブジェクトの一覧を管理する第１のオブジェクト管理表と、自己のシステム内のオブジェクトからオブジェクトの呼び出しが行われるとき、第１のオブジェクト管理表を使用して呼び出しの対象となるオブジェクトの所在を判別するオブジェクト所在判別手段と、このオブジェクト所在判別手段が前記した呼び出しの対象となるオブジェクトを他の分散処理システムに存在すると判別したとき、その分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアント手段とを備えた第１の分散処理システムと、（ロ）抽象化されたフォーマットによる抽象化された通信プロトコルによって、他の分散処理システム内のオブジェクトから自己のシステムに存在するオブジェクトの呼び出しが行われたとき、この受信した呼び出しの内容を自己のシステムの呼び出し手順に変換する連携サーバ手段と、オブジェクトの一覧を管理する第２のオブジェクト管理表と、連携サーバ手段が変換した呼び出し手順に基づいて第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すオブジェクト呼び出し手段とを備えた第２の分散処理システムとを分散処理システム連携システムに具備させる。
【００１６】
すなわち本発明では、第１のオブジェクト管理表の内容を参照することでオブジェクトが他の分散処理システムとしての第２の分散処理システムに存在することを判別した場合、連携クライアント手段によってその分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信することにしている。第２の分散処理システムは、たとえばＨＴＭＬ（Hyper Text Markup Language）によって抽象化された受信内容を、連携サーバ手段が自己のシステムの呼び出し手順に変換して、第２の分散処理システム内のオブジェクト呼び出し手段が第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すことになる。
【００１７】
請求項２記載の発明では、（イ）呼び出しの行われるオブジェクトの存在する他の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアント手段と、自己のシステム内のオブジェクトから前記した他の分散処理システムのオブジェクトの呼び出しが行われるとき連携クライアント手段を呼ぶためのスタブを生成する連携スタブ生成手段とを備えた第１の分散処理システムと、（ロ）抽象化されたフォーマットによる抽象化された通信プロトコルによって、他の分散処理システム内のオブジェクトから自己のシステムに存在するオブジェクトの呼び出しが行われたとき、この受信した呼び出しの内容を自己のシステムの呼び出し手順に変換する連携サーバ手段と、オブジェクトの一覧を管理する第２のオブジェクト管理表と、連携サーバ手段が変換した呼び出し手順に基づいて第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すオブジェクト呼び出し手段とを備えた第２の分散処理システムとを分散処理システム連携システムに具備させる。
【００１８】
すなわち本発明では、自己のシステム内のオブジェクトから他の分散処理システムのオブジェクトの呼び出しが行われるとき連携スタブ生成手段が連携クライアント手段を呼ぶためのスタブを生成する。連携クライアント手段は、呼び出しの行われるオブジェクトの存在する他の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信するようになっている。したがって、他の分散処理システムとしての第２の分散処理システムは、たとえばＨＴＭＬによって抽象化された受信内容を、連携サーバ手段が自己のシステムの呼び出し手順に変換して、第２の分散処理システム内のオブジェクト呼び出し手段が第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すことになる。
【００１９】
ここで、請求項１または請求項２記載の分散処理システム連携システムで、第１の分散処理システムは、オブジェクトの状態を変更する処理をオブジェクトの制御として行うオブジェクト制御手段と、このオブジェクト制御手段に第２の分散処理システム上のオブジェクトの制御を指示するオブジェクト制御指示手段とを備え、連携クライアント手段は、このオブジェクト制御指示手段が第２の分散処理システム上のオブジェクトの制御を指示したとき前記した制御内容を抽象化して第２の分散処理システムの連携サーバ手段に送信する手段であり、第２の分散処理システムは、自己のシステム内のオブジェクトに対する前記した制御を実行するオブジェクト制御手段を備え、連携サーバ手段は第１の分散処理システムのオブジェクト制御指示手段がオブジェクトの前記した制御を指示したときこの指示を自己のシステムのオブジェクト制御指示手段に渡してそのオブジェクトに対する前記した制御を実行させるものであってもよい。これにより、１つの分散処理システムのオブジェクトから他の分散処理システムのオブジェクトの前記した制御が可能になる。
【００２０】
第１の分散処理システムおよび第２の分散処理システムは、共に連携クライアント手段と連携サーバ手段を備え、互いに同一構成となっていてもよいし、それぞれ送信側のみと受信側のみで構成されていてもよい。また、連携クライアント手段を使用して第２のオブジェクト管理表の制御の結果を第１のオブジェクト管理表に反映させるオブジェクト管理表反映手段を具備してもよく、これによりオブジェクト管理表の更新が可能になる。
【００２１】
また、第１の分散処理システムはスタブを生成するスタブ生成手段を備え、このスタブ生成手段によって生成されたスタブを通して第２の分散処理システム内のオブジェクトの呼び出しが行われてもよい。なお、第１の分散処理システムおよび第２の分散処理システムと同一の構成の分散処理システムが全体として３以上存在してもよい。この場合、それぞれの連携クライアント手段は、他のすべての分散処理システムの連携サーバ手段に送信を行う構成となっていてもよい。
【００２２】
請求項８記載の発明では、（イ）第１の分散処理システム内のオブジェクトからオブジェクトの呼び出しが行われるとき、この第１の分散処理システム内に設けられオブジェクトの一覧を管理する第１のオブジェクト管理表を使用して呼び出しの対象となるオブジェクトの所在を判別するオブジェクト所在判別ステップと、（ロ）このオブジェクト所在判別ステップで前記した呼び出しの対象となるオブジェクトが第２の分散処理システムに存在すると判別したとき、その第２の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアントステップと、（ハ）この連携クライアントステップでオブジェクトの呼び出しの行われた第２の分散処理システムで、この受信した呼び出しの内容を自己のシステムの呼び出し手順に変換する連携サーバステップと、（ニ）この連携サーバステップで変換した呼び出し手順に基づいて、この第２の分散処理システム内に設けられオブジェクトの一覧を管理する第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すオブジェクト呼び出しステップとを分散処理システム連携方法に具備させる。
【００２３】
すなわち本発明では、請求項１記載の発明を分散処理システム連携方法として実現している。
【００２４】
請求項９記載の発明では、（イ）第１の分散処理システム内のオブジェクトからオブジェクトの呼び出しが行われるとき、所定のスタブを生成する連携スタブ生成ステップと、（ロ）この連携スタブ生成ステップで生成されたスタブによって呼ばれ、呼び出しの行われるオブジェクトの存在する第２の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアントステップと、（ハ）この連携クライアントステップでオブジェクトの呼び出しの行われた第２の分散処理システムで、この受信した呼び出しの内容を自己のシステムの呼び出し手順に変換する連携サーバステップと、（ニ）この連携サーバステップで変換した呼び出し手順に基づいて、この第２の分散処理システム内に設けられオブジェクトの一覧を管理する第２のオブジェクト管理表を使用して呼び出しの対象となったオブジェクトを呼び出すオブジェクト呼び出しステップとを分散処理システム連携方法に具備させる。
【００２５】
すなわち本発明では、請求項２記載の発明を分散処理システム連携方法として実現している。
【００２６】
請求項１０記載の発明では、自己の分散処理システムと連携する他の分散処理システムに存在するオブジェクトの一覧を管理するオブジェクト管理表を備えたコンピュータに、分散処理システム連携プログラムとして、（イ）自己のシステム内のオブジェクトから他の分散処理システムに存在するオブジェクトの呼び出しおよびオブジェクトの状態を変更する処理としてのオブジェクトの制御が行われるとき、オブジェクト管理表を使用して呼び出しの対象となるオブジェクトの所在を判別するオブジェクト所在判別処理と、（ロ）このオブジェクト所在判別処理で前記した呼び出しの対象となるオブジェクトが他の分散処理システムに存在すると判別したとき、その分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアント処理と、（ハ）この連携クライアント処理によって呼び出した他の分散処理システム上のオブジェクトに対して、前記した制御の内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルを用いることで、前記した他の分散処理システム内でオブジェクトの状態を変更する処理をオブジェクトの制御として行うオブジェクト制御手段に対して目的とする制御を実行させるオブジェクト制御処理とを実行させることを特徴としている。
【００２７】
すなわち本発明では、請求項１記載の発明にオブジェクトの制御までも含めて１つの分散処理システムの分散処理システム連携プログラムとして実現している。
【００２８】
請求項１１記載の発明では、自己の分散処理システムのコンピュータに、分散処理システム連携プログラムとして、（イ）自己の分散処理システム内のオブジェクトから他の分散処理システムのオブジェクトの呼び出しが行われるとき所定のスタブを生成する連携スタブ生成処理と、（ロ）この連携スタブ生成処理で生成されたスタブによって呼ばれ、呼び出しの行われるオブジェクトの存在する前記した他の分散処理システムに対して呼び出しの内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルによって送信する連携クライアント処理と、（ハ）この連携クライアント処理によって呼び出した前記した他の分散処理システム上のオブジェクトに対して、オブジェクトの状態を変更する処理としてのオブジェクトの制御の内容を抽象化されたフォーマットに変換して抽象化された通信プロトコルを用いることで、前記した他の分散処理システム内でオブジェクトの状態を変更する処理をオブジェクトの制御として行うオブジェクト制御手段に対して目的とする制御を実行させるオブジェクト制御処理とを実行させることを特徴としている。
【００２９】
すなわち本発明では、請求項２記載の発明にオブジェクトの制御までも含めて１つの分散処理システムの分散処理システム連携プログラムとして実現している。
【発明の効果】
【００３０】
以上説明したように本発明によれば、各分散処理システム内のオブジェクト呼び出し・制御手順を抽象化し、抽象化された通信プロトコルで分散処理システム間で通信することにしたので、各々の分散処理システムの開発者が、他の分散処理システムの通信プロトコルやオブジェクトの呼び出しやオブジェクトの状態を変更する処理としてのオブジェクトの制御に関する手順を習得することなく、他の分散処理システムのオブジェクトを呼び出したり制御するソフトウェアを作成することができるようになる。
【００３１】
また、通信プロトコル、オブジェクト呼び出しやオブジェクトの状態を変更する処理としてのオブジェクトの制御手順を抽象化したことにより、３つ以上の分散処理システムを連携させる場合でも、各分散処理システムに組み込む必要のある連携クライアントや連携サーバといったモジュールは１つだけで済むようになる。
【発明を実施するための最良の形態】
【００３２】
以下実施例につき本発明を詳細に説明する。
【実施例１】
【００３３】
図１は、本発明の一実施例における分散処理システム連携システムの構成を表わしたものである。この分散処理システム連携システム１００は、第１の分散処理システム１０１と第２の分散処理システム１０２で構成されている。ここで第１の分散処理システム１０１と第２の分散処理システム１０２は、オブジェクト呼び出し、制御手順または通信プロトコルが互いに相違している。
【００３４】
第１の分散処理システム１０１は、図示しないＣＰＵ（Central Processing Unit）が所定のプログラムを実行することで実現するオブジェクト呼び出し機能１１１およびオブジェクト制御機能１１２を有しており、また図示しないメモリに格納されたオブジェクト管理表１１３を備えている。第２の分散処理システム１０２は、同じく図示しないＣＰＵが所定のプログラムを実行することで実現するオブジェクト呼び出し機能１２１およびオブジェクト制御機能１２２を有しており、また図示しないメモリに格納されたオブジェクト管理表１２３を備えている。また、第１の分散処理システム１０１は、連携クライアント１１４としての新規なモジュールを組み込んでいる。第２の分散処理システム１０２は、連携サーバ１２４としての新規なモジュールを同様に組み込んでいる。
【００３５】
ここで、本明細書で使用する用語の定義を行う。「オブジェクト呼び出し機能」とは、オブジェクトから他のオブジェクトを呼び出す機能を持つ分散処理システムの標準コンポーネントである。図１を例にとると、オブジェクト１１５からオブジェクト呼び出し機能１１１への矢印１１６は、オブジェクト１１５が他のオブジェクトの呼び出し要求をオブジェクト呼び出し機能１１１に出すことを表わしている。オブジェクト呼び出し機能１２１からオブジェクト１２５への矢印１２６は、オブジェクト呼び出し機能１２１が他のオブジェクトからの呼び出し要求によってオブジェクト１２５を呼び出すことを表わしている。
【００３６】
次に、「オブジェクト制御機能」とは、オブジェクトが有している自身に対する操作としてのメソッド以外の制御機能としてオブジェクトの状態を変更する処理をいう。したがって、本明細書でオブジェクトの制御とは、オブジェクトのデプロイ（deployment）、アンデプロイ（undeployment）、起動、停止、一時停止、再開を行うことをいい、「オブジェクト制御機能」は、これらオブジェクトのデプロイ、アンデプロイ、起動、停止、一時停止、再開を行う分散処理システムの標準コンポーネントである。ここでデプロイとは、オブジェクトを外部から利用可能にすることをいう。
【００３７】
図１を例にとると、オペレータ１１７からオブジェクト制御機能１１２への矢印１１８は、オペレータ１１７がオブジェクト制御機能１１２に対して、あるオブジェクトのデプロイやアンデプロイ等の制御コマンドを出すことを示している。また、オブジェクト制御機能１２２からオブジェクト１２５への矢印１２８は、オブジェクト制御機能１２２が制御コマンドに従ってオブジェクト１２５に制御を行うことを表わす。なお、ここでいう「オペレータ」とはオブジェクトの管理を行う人間またはプログラムを指している。
【００３８】
「オブジェクト管理表」とは当該分散処理システム上にあるオブジェクトの一覧を保持する分散処理システムの標準データを表わす。また、本明細書で示される各機能は、前記したＣＰＵが制御プログラムを実行することによって実現するソフトウェア上の実現手段であり、ハードウェアとしての回路装置と同様のものである。
【００３９】
図１に示した分散処理システム連携システム１００で、第１の分散処理システム１０１上のオブジェクト１１５が第２の分散処理システム１０２上のオブジェクト１２５を呼び出すものとする。この場合、オブジェクト１１５はオブジェクト呼び出し機能１１１を第１の分散処理システム１０１の手順によって呼び出す。オブジェクト呼び出し機能１１１は、オブジェクト管理表１１３を使用してオブジェクト１２５が第２の分散処理システム１０２上にあることを確認し、この上で、連携クライアント１１４を呼び出す。連携クライアント１１４は、呼び出しの内容を、ＨＴＭＬやＨＴＴＰ（HyperText Transfer Protocol）等による抽象化されたフォーマットに変換して、抽象化された通信プロトコルによって連携サーバ１２４に送信する。
【００４０】
連携サーバ１２４は、受信した呼び出しの内容を第２の分散処理システム１０２の呼び出し手順に変換する。そして、オブジェクト呼び出し機能１２１を使ってオブジェクト１２５を呼び出す。オブジェクトの呼び出し結果は行きと逆のルートでオブジェクト１１５に返却される。
【００４１】
以上の手段により、オブジェクト１１５はオブジェクト１２５を第１の分散処理システム１０１のオブジェクト呼び出し手順で呼び出すことが可能になる。
【００４２】
オブジェクトの制御手順についても、同様に、オペレータ１１７が第１の分散処理システム１０１のオブジェクト制御機能１１２に対して第２の分散処理システム１０２上のオブジェクト１２５の制御コマンドを送る。すると、連携クライアント１１４が制御コマンドを抽象化して連携サーバ１２４に送信する。連携サーバ１２４はオブジェクト制御機能１２２に制御コマンドを渡してオブジェクト１２５に対する制御を実行する。制御の結果は行きと逆のルートでオペレータに返される。
【００４３】
以上の制御の結果は第２の分散処理システム１０２のオブジェクト管理表１２３だけでなく、連携クライアント１１４によって第１の分散処理システム１０１のオブジェクト管理表１１３にも反映される。この結果、第１の分散処理システム１０１の任意のオブジェクトが第２の分散処理システム１０２のオブジェクトを呼ぼうとした際に、呼び出し先のオブジェクトが第２の分散処理システム１０２上にあって呼び出し可能なことをオブジェクト呼び出し機能１０１が確認できるようになる。
【００４４】
このようにして、第１の分散処理システム１０１のオペレータ１１７は、あたかも第２の分散処理システム１０２のオブジェクト１２５が第１の分散処理システム１０１上にあるかのように、第１の分散処理システム１０１のオブジェクト制御手順で制御することが可能になる。また、連携クライアント１１４と連携サーバ１２４の間のオブジェクト呼び出し、制御手順および通信プロトコルを抽象化している。このため、今後新たな分散処理システムを第１の分散処理システム１０１および第２の分散処理システム１０２と連携させる場合でも、これら第１の分散処理システム１０１および第２の分散処理システム１０２に新たに機能を追加する必要はない。
【００４５】
図２は、本実施例の分散処理システム連携システムの要部を具体化したものである。この図は、図１に示した第１の分散処理システム１０１のオブジェクト呼び出し機能１１１と、第２の分散処理システム１０２のオブジェクト呼び出し機能１２１と、連携クライアント１１４および連携サーバ１２４の接続部分の構成の詳細を示している。
【００４６】
第１の分散処理システム１０１のオブジェクト１１５が、第２の分散処理システム１０２のオブジェクト１２５を呼び出すものとする。この場合、最初に第１の分散処理システム１０１の標準のスタブ生成機能１３１にスタブ１３２を要求する。そして、スタブ生成機能１３１によって生成されたスタブ１３４を通してオブジェクト呼び出し機能１１１にアクセスする。
【００４７】
ここで、スタブ１３４はオブジェクト定義１３６から作られる。「スタブ」とは、呼び出し先のオブジェクトの持つメソッドと同じＡＰＩ（Application Programming Interface）を持ち、オブジェクトからオブジェクト呼び出し機能を介した他のオブジェクトへのアクセスを透過的に行えるようにするためのモジュールである。
【００４８】
また、オブジェクト定義１３６とは、オブジェクト１２５の利用可能なメソッドの定義である。第１および第２の分散処理システム１０１、１０２間でオブジェクトのインターフェイス仕様が同じであれば、第２の分散処理システム１０２で用いられているものを流用できる。インターフェイス仕様が異なる場合には、第１の分散処理システム１０１のインターフェイス仕様に合わせたものをオブジェクト定義１３６として予め用意する必要がある。
【００４９】
図３は、第１の分散処理システムのオブジェクトが第２の分散処理システムのオブジェクトを呼び出す場合の処理を表わしたものである。図２と共に説明する。
【００５０】
まず、オブジェクト１１５は、スタブ生成機能１３１に対してオブジェクト１２５のスタブ生成を要求する（ステップＳ２０１）。スタブ生成機能１３１は予め第１の分散処理システム１０１上に用意されたオブジェクト定義１３６を参照してスタブ１３４を生成し、オブジェクト１１５に返す。
【００５１】
続いて、オブジェクト１１５は、スタブ１３４に対してオブジェクト１２５の呼び出しを実施する（ステップＳ２０２）。そして、スタブ１３４からオブジェクト呼び出し機能１１１が呼び出される（ステップＳ２０３）。オブジェクト呼び出し機能１１１は、オブジェクト管理表１１３を参照する（ステップＳ２０４）。ここまでの手続きは第１の分散処理システム１０１の既存の手順と同じである。
【００５２】
オブジェクト管理表１１３には、オブジェクト制御機能によって、オブジェクト１２５が第２の分散処理システム１０２上にあって現在利用可能であることが記録されている。そこで、オブジェクト呼び出し機能１１１がこのオブジェクト管理表１１３に示す情報に従って、連携クライアント１１４に呼び出し要求を渡す（ステップＳ２０５）。なお、既存のオブジェクト管理表（これをオブジェクト管理表Ａという。）にオブジェクトの配置されている分散処理システム名を記録できない場合があり得る。この場合には、オブジェクト管理表Ａにその項目を追加するか、別表で管理する必要がある。
【００５３】
連携クライアント１１４は次に呼び出し要求を抽象化する（ステップＳ２０６）。そして抽象化された通信プロトコルによって連携サーバ１２４に抽象化された呼び出し要求を送信する（ステップＳ２０７）。抽象化された呼び出し要求は、以下の情報の一部またはすべてを含んでいる。
【００５４】
（１）オブジェクト名
同一オブジェクトでインスタンスが複数ある場合のインスタンス識別子を含む。
（２）メソッド名
オブジェクトの持つ、可能な挙動のことであり、引数および返値の個数、型の情報を含む。
（３）メソッドの引数
（４）呼び出しＩＤ
呼び出しと呼び出し結果の対応の確認が取れるようにするための、呼び出しごとに固有なＩＤ（Identification）。
【００５５】
また、抽象化された通信プロトコルには、分散処理システム固有の仕様に依存しない、プログラミング言語としてのＪａｖａ（登録商標）標準のＲＭＩ（Remote Method InvocＡtion：遠隔メソッド呼び出し）や、ＸＭＬとＨＴＴＰをベースにした分散環境における情報交換用プロトコルとしてのＳＯＡＰ等の手法を使用する。実際には、業務システムのように分散処理システムがＪａｖａ（登録商標）で統一できる場合、Ｊａｖａ（登録商標）との親和性が高いＲＭＩを利用し、他の言語の分散処理システムが混じる場合はＪａｖａ（登録商標）に依存しないＳＯＡＰを利用するといった選択がされることになる。呼び出し要求はこれらの通信プロトコルによって、必要に応じて一次元の情報の流れに変換（シリアライズ）されて送受信されることになる。
【００５６】
連携サーバ１２４は、受信した抽象化された呼び出し要求を第２の分散処理システム１０２の呼び出し手順で規定される形式に変換する（ステップＳ２０８）。そして、第２の分散処理システム１０２の呼び出し手順に従ってオブジェクト呼び出し機能１２１が呼び出され（ステップＳ２０９）、このオブジェクト呼び出し機能１２１を介してオブジェクト１２５が呼び出される（ステップＳ２１０）。
【００５７】
オブジェクト１２５は呼び出し要求を処理し、その結果をオブジェクト呼び出し機能１２１に返す（ステップＳ２１１）。これにより、連携サーバ１２４に呼び出し結果が返される（ステップＳ２１２）。連携サーバ１２４は、この受け取った呼び出し結果を抽象化する（ステップＳ２１３）。そして、抽象化された通信プロトコルで呼び出し結果を連携クライアント１１４に返す（ステップＳ２１４）。抽象化された呼び出し結果は、以下の情報の一部またはすべてを含んでいる。
【００５８】
（１）呼び出したメソッドの結果
（２）エラー情報（エラーが発生した場合のみ）
呼び出し先のオブジェクト（以下、オブジェクトＢという。）で発生したエラーと、呼び出し元のオブジェクト（以下、オブジェクトＡという。）からオブジェクトＢへの呼び出し処理の経路上で発生したエラー。
【００５９】
（３）呼び出し結果ＩＤ
呼び出し要求との対応がチェック可能な、呼び出し結果ごとに固有なＩＤ。最も単純な実装では呼び出しＩＤと同一になる。
【００６０】
連携クライアント１１４は、ステップＳ２１４で連携サーバ１２４から受信した呼び出し結果を第１の分散処理システム１０１の呼び出し手順で規定される形式に変換する（ステップＳ２１５）。そして、オブジェクト呼び出し手順に従って、オブジェクト呼び出し機能１１１に呼び出し結果を返す（ステップＳ２１６）。オブジェクト呼び出し機能１１１は、スタブ１３４を介して呼び出し結果をオブジェクト１１５に返却する（ステップＳ２１７）。
【００６１】
図４は、図１に示した第１の分散処理システムのオペレータが第２の分散処理システムのオブジェクトを制御する場合の処理を示したものである。図１と共に説明する。
【００６２】
まず、オペレータ１１７はオブジェクト制御機能１１２に第２の分散処理システム１０２のオブジェクト１２５への制御コマンドを与える（ステップＳ３０１）。オブジェクト制御機能１１２はオブジェクト管理表１１３を参照してオブジェクト１２５が第２の分散処理システム１０２上にあることを確認し、連携クライアント１１４に制御コマンドを渡す（ステップＳ３０２）。
【００６３】
連携クライアント１１４は制御コマンドを抽象化する（ステップＳ３０３）。そして、この抽象化された制御コマンドを連携サーバ１２４に送信する（ステップＳ３０４）。抽象化された制御コマンドは以下の情報の一部またはすべてを含んでいる。
【００６４】
（１）制御の種別
分散処理システムへのデプロイ、アンデプロイ、起動、停止、一時停止、再開、状態取得
（２）制御に必要なパラメータ値
通信プロトコルの仕様はオブジェクト呼び出し時のものと同じである。
【００６５】
抽象化された制御コマンドを受信した連携サーバ１２４は、送られてきた制御コマンドを第２の分散処理システム１０２のオブジェクト制御手順で規定される形式に変換する（ステップＳ３０５）。そして、オブジェクト制御機能１２２に対してオブジェクト１２５の制御コマンドを送って、これを呼び出す（ステップＳ３０６）。オブジェクト制御機能１２２は、これを基にオブジェクト１２５への制御を実行する（ステップＳ３０７）。
【００６６】
この結果、オブジェクト１２５への制御の結果が連携サーバ１２４に返される（ステップＳ３０９）。連携サーバ１２４は制御結果を抽象化する（ステップＳ３１０）。そして、連携クライアント１１４に返却する（ステップＳ３１１）。
【００６７】
連携クライアント１１４は、制御結果をオブジェクト管理表１１３に反映する（ステップＳ３１２）。そして制御コマンドの制御結果を第１の分散処理システム１０１の形式に変換して（ステップＳ３１３）、これをオブジェクト制御機能１１２に返却する（ステップＳ３１４）。オブジェクト制御機能１１２は、オペレータ１１７に制御結果を通知する（ステップＳ３１５）。
【００６８】
このような本実施例の分散処理システム連携システム１００によれば、連携クライアント１１４と連携サーバ１２４がオブジェクトの呼び出しを仲介している。これにより、第１の分散処理システム１０１のオブジェクト１１５は第２の分散処理システム１０２のオブジェクト１２５を第１の分散処理システム１０１のオブジェクト呼び出し手順で呼び出すことが可能になる。
【００６９】
また、本実施例の分散処理システム連携システム１００によれば、連携クライアント１１４と連携サーバ１２４がオブジェクトの制御を仲介している。したがって、第１の分散処理システム１０１のオペレータ１１７は第２の分散処理システム１０２のオブジェクト１２５を第１の分散処理システム１０１のオブジェクト管理手順で管理することが可能になる。
【００７０】
なお、本実施例の分散処理システム連携システム１００では、デプロイ制御を行った場合、デプロイした呼び出し先のオブジェクトの情報が、デプロイ制御時に指定した呼び出し先のアドレスと共に呼び出し元のオブジェクト管理表１１３に加えられる。また、アンデプロイ制御を行った場合にも、呼び出し先のオブジェクトの情報がリストから削除されると共に呼び出し元のオブジェクト管理表１１３から対応する情報が削除される。このようにオブジェクトの制御結果がオブジェクト管理表１１３に反映されることになる（図４ステップＳ３１２）。
【００７１】
＜発明の第１の変形例＞
【００７２】
ところで、分散処理システムが内部修正の難しい市販ソフトウェアで構成されているような場合には、図１に示した第１の分散処理システム１０１のオブジェクト呼び出し機能１１１に連携クライアント１１４を直接、組み込めない場合がある。本発明の第１の変形例では、このような場合に第１および第２の分散処理システム１０１、１０２の間の連携を可能にしている。
【００７３】
図５は、本発明の第１の変形例における分散処理システム連携システムの構成を表わしたものである。この分散処理システム連携システム１００Ａで図２と同一部分には同一の符号を付しており、これらの説明を適宜省略する。
【００７４】
第１の変形例の第１の分散処理システム１０１Ａには、連携スタブ生成機能４０１が設けられている。連携スタブ生成機能４０１は、オブジェクト定義１３６を参照して、連携クライアント１１４を呼ぶためのスタブ１３４Ａを生成する機能を備えている。したがって、第１の分散処理システム１０１Ａには図１に示したオブジェクト呼び出し機能１１１は備えられていない。
【００７５】
第１の分散処理システム１０１Ａ内のオブジェクト１１５は、呼び出し先の第２の分散処理システム１０２によってスタブ生成機能を呼び分ける必要がある。呼び出し先が第１の分散処理システム１０１Ａ内の場合、オブジェクト１１５は第１の分散処理システム１０１Ａの標準の機構を使用して呼び出しを行う。呼び出し先が第２の分散処理システム１０２である場合、オブジェクト１１５は連携スタブ生成機能４０１を呼ぶというように呼び分けを行う。スタブ生成後のオブジェクト呼び出し手順は同じである。
【００７６】
この第１の変形例の分散処理システム連携システム１００Ａによれば、連携クライアント１１４を直接利用するスタブを生成させることで、第１の分散処理システム１０１Ａが内部修正の難しい市販ソフトウェアで構成されていても、他の分散処理システムとしての第２の分散処理システム１０２との連携を容易にすることができる。
【００７７】
＜発明の第２の変形例＞
【００７８】
先の実施例では、図１に示す第１の分散処理システム１０１のみが他の分散処理システムとしての第２の分散処理システム１０２のオブジェクト１２５を読み出せるようになっている。これを双方の分散処理システムが相互に他方のオブジェクトを読み出せるようにしたのが本発明の第２の変形例である。
【００７９】
図６は、本発明の第２の変形例における分散処理システム連携システムの概要を表わしたものである。この分散処理システム連携システム１００Ｂでは、第１の分散処理システム１０１Ｂが、第２の分散処理システム１０２Ｂの連携サーバ１２４に相当する連携サーバ１２４Ｂを新たに備えている。また、第２の分散処理システム１０２Ｂが、第１の分散処理システム１０１Ｂの連携クライアント１１４に相当する連携クライアント１１４Ｂを新たに備えている。これにより、第２の分散処理システム１０２Ｂから第１の分散処理システム１０１Ｂ上の図示しないオブジェクトの呼び出しや制御が新たに可能になる。
【００８０】
＜発明の第３の変形例＞
【００８１】
先の実施例では、オブジェクト呼び出し手順、管理手順または通信プロトコルが異なる２つの分散処理システムの間におけるオブジェクトの呼び出しや制御について説明した。これを３つ以上の分散処理システムの間におけるオブジェクトの呼び出しや制御に拡張することが可能である。
【００８２】
図７は、一例として第１〜第３の分散処理システムが連携した分散処理システム連携システムの概要を表わしたものである。本発明の第３の変形例としてのこの分散処理システム連携システム１００Ｃでは、第１の分散処理システム１０１Ｃが連携クライアント１１４Ｃ1と連携サーバ１２４Ｃ1を備えている。第２の分散処理システム１０２Ｃは、連携クライアント１１４Ｃ2と連携サーバ１２４Ｃ2を備えている。第３の分散処理システム１０３Ｃは、連携クライアント１１４Ｃ3と連携サーバ１２４Ｃ3を備えている。
【００８３】
第１の分散処理システム１０１Ｃの連携クライアント１１４Ｃ1は、第２の分散処理システム１０２Ｃの連携サーバ１２４Ｃ2を使用してこの第２の分散処理システム１０２Ｃ上の図示しないオブジェクトの呼び出しや制御を行うことができる。この点は先の実施例と同一である。第１の分散処理システム１０１Ｃの連携クライアント１１４Ｃ1は、第３の分散処理システム１０３Ｃの連携サーバ１２４Ｃ3を使用して、この第３の分散処理システム１０３Ｃ上の図示しないオブジェクトの呼び出しや制御も可能である。
【００８４】
同様に、第２の分散処理システム１０２Ｃの連携クライアント１１４Ｃ2は、第１の分散処理システム１０１Ｃの連携サーバ１２４Ｃ1を使用してこの第１の分散処理システム１０１Ｃ上の図示しないオブジェクトの呼び出しや制御を行うことができる。また、第２の分散処理システム１０２Ｃの連携クライアント１１４Ｃ2は、第３の分散処理システム１０３Ｃの連携サーバ１２４Ｃ3を使用して、この第３の分散処理システム１０３Ｃ上の図示しないオブジェクトの呼び出しや制御も可能である。
【００８５】
更に、第３の分散処理システム１０３Ｃの連携クライアント１１４Ｃ3は、第１の分散処理システム１０１Ｃの連携サーバ１２４Ｃ1を使用してこの第１の分散処理システム１０１Ｃ上の図示しないオブジェクトの呼び出しや制御を行うことができる。また、第３の分散処理システム１０３Ｃの連携クライアント１１４Ｃ3は、第２の分散処理システム１０２Ｃの連携サーバ１２４Ｃ2を使用して、この第２の分散処理システム１０２Ｃ上の図示しないオブジェクトの呼び出しや制御も可能である。
【００８６】
図７に示した分散処理システム連携システム１００Ｃのように３つ以上の分散処理システム１０１Ｃ、１０２Ｃ、１０３Ｃ、……が連携した分散処理システム連携システムでは、それぞれの連携クライアント１１４Ｃと連携サーバ１２４Ｃが多対多でアクセスが可能である。したがって、１つ１つの分散処理システム１０１Ｃ、１０２Ｃ、１０３Ｃ、……に組み込みが必要な連携クライアント１１４Ｃと連携サーバ１２４Ｃは多くても１つずつで済むことになる。
【００８７】
なおこの第３の変形例の場合には、デプロイやアンデプロイ等のオブジェクト制御の際に、その結果をオブジェクト操作先の連携サーバからオブジェクト制御元の連携クライアントに返すだけでなく、全分散処理システムのオブジェクト管理表の同期を行う。このため、他のすべての連携クライアントにもオブジェクト制御結果を渡す処理が追加されることになる。
【００８８】
＜発明の第４の変形例＞
【００８９】
ところで、分散処理システムの中には、それ自身に備わった通信機能を用いて複数台のサーバの間で相互にオブジェクト呼び出しやオブジェクト制御が可能なものがある。
【００９０】
図８は、一例として、それぞれ通信機能を用いて２台のサーバの間でオブジェクト呼び出しやオブジェクト制御を行う場合を示したものである。図８で図１と同一部分には同一の符号を付している。第１の分散処理システム４２１には通信機能１５１が備えられ、第２の分散処理システム４２２には通信機能１５１と通信を行う他の通信機能１５２が備えられている。
【００９１】
この図８に示した例で、第１の分散処理システム４２１および第２の分散処理システム４２２は、オブジェクト呼び出し、制御手順および通信プロトコルが互いに共通であれば、自身に備わった通信機能１５１あるいは１５２によって相互にオブジェクト呼び出しやオブジェクト制御が可能である。したがって、このような複数台のサーバからなる複数台構成分散処理システム４３０でそのうちの１台が連携サーバを組み込んでいれば、この複数台構成分散処理システム４３０がオブジェクト呼び出しや制御手順や通信プロトコルで互換性のない他の分散処理システムと連携することができる。
【００９２】
図９は、このような連携の一例を示したものである。この分散処理システム連携システム１００Ｄは、分散処理システム１０１Ｄと、複数台構成分散処理システム４３０Ｄで構成されている。ここで、複数台構成分散処理システム４３０Ｄは、図８に示した第１の分散処理システム４２１に連携クライアント１１４Ｄと連携サーバ１２４Ｄを組み込んだ第１の分散処理システム４２１Ｄと、第２の分散処理システム４２２から構成されている。したがって、複数台構成分散処理システム４３０Ｄ内では、通信機能１５１あるいは１５２によって相互にオブジェクト呼び出しやオブジェクト制御が可能である。
【００９３】
分散処理システム１０１Ｄと、複数台構成分散処理システム４３０Ｄを構成する第１の分散処理システム４２１Ｄおよび第２の分散処理システム４２２の間でオブジェクト呼び出し、制御手順や通信プロトコルで互換性がないものとする。この場合でも、連携クライアント１１４と連携サーバ１２４を組み込んだ分散処理システム１０１Ｄは、複数台構成分散処理システム４３０Ｄの第１の分散処理システム４２１Ｄと、本発明の第２の変形例の図６で示したように相互に他方のオブジェクトを読み出すことができる。
【００９４】
この結果、連携クライアント１１４から第１の分散処理システム４２１Ｄ上のオブジェクトに対する呼び出し要求や制御コマンドが来た場合は実施例で説明したようにオブジェクト呼び出し機能１１１とオブジェクト制御機能１１２を呼び、複数台構成分散処理システム４３０Ｄのうち第１の分散処理システム４２１Ｄ以外の第２の分散処理システム４２２上のオブジェクトに対する呼び出し要求や制御コマンドが来た場合は通信機能１５１を呼ぶようにする。通信機能１５１に渡すオブジェクト呼び出し要求や制御コマンドは、オブジェクト呼び出し機能１１１およびオブジェクト制御機能１１２への対応と同様に複数台構成分散処理システム４３０Ｄのオブジェクト呼び出し要求や制御手順の仕様に沿うよう変換することになる。
【００９５】
通信機能１５１から連携サーバ１２４Ｄに戻ってきた呼び出し結果や制御結果については、この連携サーバ１２４Ｄで抽象化されて分散処理システム１０１Ｄの連携クライアント１１４に返されることになる。
【００９６】
分散処理システム１０１Ｄと複数台構成分散処理システム４３０Ｄの間で相互にオブジェクト呼び出しや制御を行う場合は、第２の変形例のように連携クライアント１１４Ｄをオブジェクト呼び出し機能１１１とオブジェクト制御機能１１２の他に通信機能１５１とも接続する。そして、連携クライアント１１４Ｄが組み込まれているサーバ以外のサーバとしての第２の分散処理システム４２２からのオブジェクト呼び出しを抽象化して分散処理システム１０１Ｄの連携サーバ１２４に送信できるようにする。
【００９７】
このような本発明の第４の変形例の分散処理システム連携システム１００Ｄによれば、複数台構成分散処理システム４３０Ｄが同一のオブジェクト呼び出し・制御手順と通信プロトコルを持った複数の分散処理システムで構成されていれば、そのうちの１台の通信機能に連携サーバ１２４Ｄと連携クライアント１１４Ｄを接続することで、すべてのサーバ上のオブジェクトの呼び出しや制御が可能になるという効果がある。
【図面の簡単な説明】
【００９８】
【図１】本発明の一実施例における分散処理システム連携システムのシステム構成図である。
【図２】本実施例の分散処理システム連携システムの要部を具体化したブロック図である。
【図３】本実施例で第１の分散処理システムのオブジェクトが第２の分散処理システムのオブジェクトを呼び出す場合の処理を示した流れ図である。
【図４】本実施例で第１の分散処理システムのオペレータが第２の分散処理システムのオブジェクトを制御する場合の処理を示した流れ図である。
【図５】本発明の第１の変形例における分散処理システム連携システムのシステム構成図である。
【図６】本発明の第２の変形例における分散処理システム連携システムの概要を表わしたシステム構成図である。
【図７】本発明の第３の変形例における分散処理システム連携システムの概要を表わしたシステム構成図である。
【図８】本発明の第４の変形例における複数台構成分散処理システムの一例を示すシステム構成図である。
【図９】第４の変形例における分散処理システム連携システムの概要を表わしたシステム構成図である。
【図１０】第１の提案における他のコンピュータ上のオブジェクトにアクセスする原理を示した説明図である。
【符号の説明】
【００９９】
１００、１００Ａ、１００Ｂ、１００Ｃ、１００Ｄ  分散処理システム連携システム
１０１、１０１Ａ、１０１Ｂ、１０１Ｃ、４２１、４２１Ｄ  第１の分散処理システム
１０２、１０２Ｂ、１０２Ｃ、４２２  第２の分散処理システム
１１１  オブジェクト呼び出し機能
１１２  オブジェクト制御機能
１１３  オブジェクト管理表（第１のオブジェクト管理表）
１１４、１１４Ｂ、１１４Ｃ、１１４Ｄ  連携クライアント
１１５、１２５  オブジェクト
１２１  オブジェクト呼び出し機能
１２２  オブジェクト制御機能
１２３  オブジェクト管理表（第２のオブジェクト管理表）
１２４、１２４Ｂ、１２４Ｃ、１２４Ｄ  連携サーバ
１３１  スタブ生成機能
１３４、１３４Ａ  スタブ
１３６  オブジェクト定義
【図１】
2008225625.tif 000003
【図２】
2008225625.tif 000004
【図３】
2008225625.tif 000005
【図４】
2008225625.tif 000006
【図５】
2008225625.tif 000007
【図６】
2008225625.tif 000008
【図７】
2008225625.tif 000009
【図８】
2008225625.tif 000010
【図９】
2008225625.tif 000011
【図１０】
2008225625.tif 000012