JP2007517279A - 通信オブジェクト間で結果を送信するための非同期自動デバイス及び方法 - Google Patents

通信オブジェクト間で結果を送信するための非同期自動デバイス及び方法 Download PDF

Info

Publication number
JP2007517279A
JP2007517279A JP2006540532A JP2006540532A JP2007517279A JP 2007517279 A JP2007517279 A JP 2007517279A JP 2006540532 A JP2006540532 A JP 2006540532A JP 2006540532 A JP2006540532 A JP 2006540532A JP 2007517279 A JP2007517279 A JP 2007517279A
Authority
JP
Japan
Prior art keywords
identifier
empty object
empty
message
local
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006540532A
Other languages
English (en)
Inventor
キャロメル・デニス
クィリチ・ロマン
デルベ・クリスティアン
ヘンリオ・ルードヴィック
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institut National de Recherche en Informatique et en Automatique INRIA
Original Assignee
Institut National de Recherche en Informatique et en Automatique INRIA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institut National de Recherche en Informatique et en Automatique INRIA filed Critical Institut National de Recherche en Informatique et en Automatique INRIA
Publication of JP2007517279A publication Critical patent/JP2007517279A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本発明は、1つのステーションのローカルプロセスと別のステーションのリモートプロセスとの間の非同期通信によって、オブジェクト指向言語でのリモートメソッドコールを管理する方法に関し、そのようなコールは、プロセスの1つからのリクエストと、その後に続く他のプロセスからのリプライとから成る。この方法は、a)ローカルプロセスからリモートプロセスに空のオブジェクトを送信する前にこの空のオブジェクトの送信をリクエスト又はリプライパラメータとして検出し(710)、前記空のオブジェクトの内容を計算し、その内容の提供がエキスパートプロセスのために要求されることと、b)リモートプロセスに対して空のオブジェクトの内容を利用可能にするために前記空のオブジェクトを処理する(712)ことと、c)適切な処理の条件の下で前記リクエスト又は前記リプライの送信を実行することと、を備える。
【選択図】図7

Description

本発明は、ローカルプロセスとリモートプロセスとの間のリモートプロシージャコール(RPC)による通信分野に関する。
これらのRPC型通信はオブジェクト指向言語でオブジェクトを使用することができる。RPC型通信の分野において、呼び出し側として知られているプロセスが、呼び出された(コールされた)プロセスにリクエストを送信し、呼び出し側プロセスは、呼び出されたプロセスによるリクエストの結果を受信するまでリクエストの実行を阻止する。
本発明の範囲内において、プロセス間で確立される通信は、非同期RPC型通信であり、即ち、ソースプロセスは、(コールメッセージとして知られている)リクエストを送信(又は提出)した後、プロセスの実行に進む。従って、リクエストの場合、ターゲットプロセスは、まず現在のタスクの実行を完了し、その後にソースプロセスを実行するのと並行してリモートプロシージャを実行し、リモートプロシージャの実行の最後にレスポンスのパラメータを利用可能にする。ソースプロセスはこのようにしてレスポンスのパラメータを取得することができる。
しかしながら、この型の非同期RPC通信は、プロセス間におけるこれらの結果の通信管理に備えておらず、動作の実行又はメッセージの送信がこれらの結果を必要とする時に阻止に至るかもしれない。
本発明の目的は、この事態を改善することである。
本発明は、1つのステーションのローカルプロセスと他のステーションのリモートプロセスとの間の非同期通信によってオブジェクト指向言語でのリモートプロシージャのコール管理の方法であって、そのようなコールは、プロセスの一方のリクエスト及び、その後に続く他方のプロセスのレスポンスから成り、当該方法は、
a 空のオブジェクトをローカルプロセスからリモートプロセスへ送る前にリクエスト又はレスポンスのパラメータとして空のオブジェクトの送信を検出し、この空のオブジェクトの内容を計算することおよびその内容を利用可能にすることが認識プロセスに要求されることと、
b リモートプロセスに対して空のオブジェクトの内容を利用可能にする目的で空のオブジェクトを処理することと、
c 処理の適切な条件の後に続けて前記リクエスト又はレスポンスを送信することと、を備える。
また、本発明はコンピュータステーションに関し、そのコンピュータステーションは、
オブジェクト指向言語で一つ又はそれ以上のローカルプロセスを実行できる環境と、
非同期通信によって、ローカルプロセスと別のステーションのリモートプロセスとの間でリモートプロシージャコールを処理できるプロトコルモジュールであって、そのようなコールが、プロセスの一方のリクエストと、その後に続く他方のプロセスのレスポンスとから成るプロトコルモジュールと、を備える。
本発明の1つの特徴によれば、コンピュータステーションは、
空のオブジェクションが、ローカルプロセスによってリモートプロセスに送信されるべきリクエスト又はレスポンスのパレメータとして発生しているというイベントを検出すると、この空のオブジェクトの内容の計算とその内容の利用可能性とが認識プロセスに要求され、
リモートプロセスに対して空のオブジェクトの内容を利用可能にする目的で前記空のオブジェクトを処理することができるとともに、
処理の適切な条件の下に続けて前記リクエストまたはレスポンスを送信することができるモニタを備える。
本発明に従うコンピュータデバイスは、別々及び/又は組合せて採用可能であり以下の詳細な記述において説明される多くの付加的な特徴を備えることができる。
本発明の更なる特徴及び利点は、以下の詳細な記述の検討から及び添付図面から明らかになるだろう。
図面は、本質的に、一定の特徴の要素を含む。従って、図面は記述の理解を助けるだけでなく、必要に応じて本発明の定義付けにも寄与できる。
図1は相互通信しているステーションのネットワークを示す。「コンピュータステーション」とは、データを交換することができる任意のIT要素を意味すると理解される。従って、この要素は、携帯電話または携帯用コンピュータのような可動式通信端末、または、反対にPC型コンピュータのような固定式通信端末でもよい。ステーションST1、ST2、ST0の各々は、ユーザーシステムST1−2、ST2−2、ST0−2、非共用メモリST1−4、ST2−4、ST0−4、オブジェクト指向言語で動作するプロセスP1、P2、P0、及びRPC型(リモートプロシージャコール用の)非同期リモートプロシージャコールによる通信の通信プロトコルモジュールST1−6、ST2−6、ST0−6を備え、そのモジュールはオブジェクト指向言語でのオブジェクトで動作することができる。このプロトコルモジュールは、非同期通信によって、ローカルプロセスと他のステーションのリモートプロセスとの間のRPCリモートプロシージャコールを処理することができる。プロトコルモジュールは、リモートプロシージャコールのための方法又は機能を有するオブジェクトのライブラリを備える。「プロセス」という用語は、プロシージャコールを備えることができる命令のプラグラム又は動作のプログラムを一例として示す。ユーザーシステムST1−2、非共用メモリST1−4、及び通信プロトコルモジュールST1−6によって形成される環境は、オブジェクト指向言語でP1のようなローカルプロセスを実行することを可能にする。
各ステーションは、物理的または仮想的でもよいリンクによって、例えばケーブル、光ファイバー、または電波によって、その他のステーションに接続される。より具体的には、一例として、各ステーションは、リンク10―ST1、10―ST2、10−ST0によってネットワーク10に接続され、ステーションは相互接続されてもよい。
図2に示すように、非同期RPC型プロトコルモジュールは、クライアントとして知られるプロセスP1が、ステーションST2に遠隔して位置するサーバとして知られるプロセスP2のプロシージャを呼び出すことを可能にする。また、このコールAはリクエストとして知られており、パラメータPaを備える。オブジェクト指向言語では、リクエストは、プロシージャコールを表すとともに、プロシージャとコールのパラメータとを備えるオブジェクトである。このプロシージャのコールがローカルプロシージャのコールに似るために、クライアントプロセスP1は、呼び出されるべきリモートプロシージャと同じ名前のローカルプロシージャを有するオブジェクトを備える。ステーションST1のこのローカルプロシージャは、プロトコルモジュールのオブジェクトライブラリ、例えばJava(登録商標)型ライブラリにおいて、あるプロシージャを呼び出す。これらはネットワーク接続、パラメータPaの通過、及びRESレスポンスとしても知られる結果の返信を処理する。非同期RPC型コールの下では、クライアントプロセスP1は、ステーションST2において、コールパラメータを備えたリクエストを提出し、その後、その実行を続行する。ステーションST2の側では、サーバプロセスP2は、コールパラメータを備えたステーションST2のローカルプロシージャを呼び出しレスポンスR−A、即ちステーションST1の結果を返信する前に、現在のタスクの実行を終える。
従って、クライアントプロセスP1は、ローカルプロシージャを呼び出すのではなく、ステーションST2でリクエストを提出するだけであり、その後、その実行を続行する。同じ方法で、サーバプロセスP2は、リクエストを提出する時点での実行を続行し、その後、クライアントプロセスP1にレスポンスを送信することによってリクエストに応答する。
言うまでもなく、ネットワークの任意のプロセスが、リモートプロシージャコールによって通信を確立するために、非同期RPC型のプロトコルモジュールのライブラリを使用する。一般に、任意のプロセスは、クライアント及びサーバの両方、即ち、リクエストを送信するもの及びリクエストを受信するものであり得る。従って、1つのプロセスは、リクエスト又はレスポンスを送信するときソース又はローカルプロセスを言及し、または、リクエスト又はレスポンスを受信するときターゲット又はリモートプロセスを言及する。
プロセス同士間で確立された通信は非同期型であり、即ち、ソースプロセスはリクエスト(コールメッセージ)を送信(又は提出)した後に、プロセスを実行する。従って、リクエストの場合、ターゲットプロセスは、まず現在のタスクを完了し、その後にソースプロセスの実行と並行してリモートプロシージャを実行し、リモートプロシージャの実行の完了を受けてレスポンスのパラメータを利用可能にする。ソースプロセスはこのようにしてレスポンスのパラメータを取得することができる。
オブジェクト指向言語でオブジェクトを使用する非同期RPC型通信の範囲内において、プロセスがリクエストを送信した時、レスポンスが遅れ、そのことがプロセスの実行を阻止する場合がある。プロセスは、リクエストのレスポンスを待つことができず、かつ、まだ決定していないレスポンスの表示を使用できない。一般に、オブジェクトは識別子によって識別され、空であってもよいし又はある内容(パラメータの値、プロシージャ)を有してもよい構造を備える。従って、まだ決定していないレスポンスの表示は、空又は部分的に空として示されるオブジェクトの識別子であってもよい。そのオブジェクトは、空又は部分的に空であることを示すフラッグに接続されている。オブジェクトは、完全に空、即ち内容が未知であるオブジェクトであってもよいし、又は部分的に空、即ち内容が部分的にのみ知られているオブジェクトであってもよい。この空のオブジェクトの識別子は、内容、又は少なくともその一部分が所定のリクエストに対するレスポンスであるオブジェクトと指名される。
ローカルプロセスによってリモートプロセスに送信されるリクエスト又はレスポンスは、1つ又はそれ以上の空のオブジェクトの識別子を備えるパラメータを有してもよい。より具体的には、クライアントプロセスによってサーバプロセスに送信されるリクエストは、1つ又はそれ以上の空のオブジェクトの識別子を備えるパラメータを有してもよい。同様に、サーバプロセスによってクライアントプロセスに送信されるレスポンスは、1つ又はそれ以上の空のオブジェクトの識別子を備えるパラメータを有してもよい。これらの場合、一旦空のオブジェクトの識別子が利用可能になれば、リモートプロセスがこれらの空のオブジェクトの内容を取得することができることが重要である。
場合によっては、例えば、空のオブジェクトの識別子がプロセスによって使用される時、空のオブジェクトの内容を知ることは不可欠である。空のオブジェクトの識別子の「使用」は、このオブジェクトの内容を決定する必要がある演算を意味する。演算は、厳格なものとして知られ、非限定的な例では、オブジェクトの識別子が数字を表すオブジェクトを指名する場合には足し算、引き算、割り算、又は掛け算であってもよい。演算を使用する場合、演算を実行するためにプロセスが空のオブジェクトの内容を取得することができることが必要である。
空のオブジェクトの内容を、それを必要とするプロセスに送信するための管理メカニズムは必要と思われる。
図3−1は図1のステーションのネットワークを示す。図1と一致する参照記号は同一の要素を示す。
ここで記述されるプロセスP1とプロセスP0との間の非同期RPC通信は破線の矢印によって示される。
非同期RPC型コールRPC0−aが行われる時、ソースプロセスP1は、リクエストRPC0−aへのレスポンスを表す空のオブジェクトの識別子ID−01を生成し、後述する図4に示すようにリクエストを直列化し、空のオブジェクトの識別子ID−01を備えるコールパラメータを有するリクエストRPC0−aをステーションST0で提出し、その後にその実行を続行する。ステーションST0では、リクエストを受信して非直列化し、その後にターゲットプロセスP0によって処理されるべきリクエストのファイル内で延期する。このようにして、特にリクエストRPC0−aの発生を受けて、この空のオブジェクトの内容を計算することおよびそれを利用可能にすることが、認識プロセスとも呼ばれるターゲットプロセスに要求される。空のオブジェクトの内容をターゲットプロセスP0が取得した時、空のオブジェクトの内容CONT−01及び識別子ID−01を備える結果の組CRESが利用できるようになる。ターゲットプロセスP0は計算によって空のオブジェクトの内容CONT−01を取得し、認識プロセスと呼ばれる。
また、プロセスP0は、レスポンスR0によってプロセスP1に結果を送り返すために、空のオブジェクトの識別子に関連するプロセスP1の識別子を格納することもできる。
内容CONT−01それ自体は、内容が別のプロセスによって計算される別の空のオブジェクトの識別子を含んでもよい。
一旦空のオブジェクトがプロセスP1において生成されると、このオブジェクトの識別子は、プロセスP1によって使用可能であるし、又は、図3−1に示されるようなターゲットプロセスP2へのリクエストRPC1−aにパラメータとして渡されることも可能である。
プロセスP1によって空のオブジェクトの内容が知られると、この内容を空のオブジェクトの構造に統合することによって空のオブジェクトを更新する。
図3−2は、プロセスP1に関して演算することができるモジュールをより詳細に示す。
ステーションは以下のプロセスからなる:
プロセスP1に接触するとともに、ローカルプロセスP1によって他のリモートプロセスP2に送信されるべきリクエスト又はレスポンスのパラメータとして空のオブジェクトの識別子が発生しているというイベントを検出可能である検出器、例えばシリアライザST1−20と、
空のオブジェクトの識別子から及びこの空のオブジェクトの決定した内容から、この内容を空のオブジェクトの構造に統合し、空のオブジェクトを更新することができる更新モジュールST1−16と、
検出器ST1−20及びローカルプロセスP1にリンクされるとともに、検出器による検出に応答して、リモートプロセスに対して空のオブジェクトの内容を利用可能にする目的で空のオブジェクトを処理する際に送信を妨害することができ且つ処理の適切な条件に下づいてリクエスト又はレスポンスの送信を続けることができるモニタST1−12と、
を備える。
以下で更に検討される空のオブジェクトの処理は、
内容を待つこと、この待ち時間の間にイベントの実行を中断すること、内容の受信に対応する処理の適切な条件、又は一旦受信された内容の統合によって空のオブジェクトを更新すること、又は、
空のオブジェクトを識別するデータと空のオブジェクトの内容が導かれなければならないプロセスとを格納すること、空のオブジェクトの内容が識別されないままイベントの実行をその時に続行すること、又は、
イベントの実行を続行する事実、
のいずれかを備える。
プロセスP1が空のオブジェクトの識別子を使用する場合、この空のオブジェクトへのアクセスはオブジェクト言語の意味によって阻止されるので、この使用の検出は自動的に実現される。このような使用を検出した後に受信される処理を以下で更に検討する。
モニタは、プロセスがソースプロセス又は識別プロセスであるかに従って実行される介入プロセスとして知られるプロセスの集合を備えており、意図されるプロセスは空のオブジェクトの内容を計算するものである。モニタは、必要に迫られて待機するように知られたプロセス、リクエスト/結果の送信に関連されるように知られたプロセス、及び自動継続として知られたプロセスを備える。最後のプロセスは、他のプロセスと並行且つ独立して実行されることができる。この自動継続のプロセスは、決定した空のオブジェクトの内容を、それを必要としそうな全てのプロセスに転送する目的を持っている。
モニタは、更に、空のオブジェクトの識別子及びあるプロセスの識別子を示す再送信内容テーブルTCRとして知られる少なくとも一つのテーブルと共に動作する。このテーブルは、識別されるプロセスに空のオブジェクトの内容を送信するために使用される。このようなテーブルは、以下で更に検討されるような本発明の実施形態に従って、認識プロセスにおいて使用され、又は空のオブジェクトの識別子、例えばソースプロセスを送信した全てのプロセスにおいて使用される。
例えば、図3−1のリクエストRPC0−aの場合、プロセスP0は、再送信内容テーブルTCP0に、空のオブジェクトの識別子ID−01と空のオブジェクトの内容が送信されなければならないソースプロセスの識別子ID−P1とを備える組を追加する。
様々な構成要素の機能を、以下の図4〜図12のフローチャートの記述において詳細に示す。その記述は図3−1と並行してなされる。
図4〜図9の実施形態に対して、一つの実施形態は、プロセスP1がリクエストRPC0−aを認識プロセスP0に送信して空のオブジェクトの識別子ID−01を備えるリクエストRPC1−aをプロセスP2に送信しようとする場合には、又はプロセスP1がネットワークの他のプロセスによって生成された空のオブジェクトの識別子ID−01を受信した場合には、図3−1の状況である。
図4は、送信される前のリクエスト又はレスポンスの直列化を示す。ステージ702で、送信されるべきリクエスト又はレスポンスのパラメータからの第1のオブジェクトが直列化される。リクエスト又はレスポンスをコピーした後にそれを送信することを可能にする直列化メカニズムは、特に空のオブジェクトの検出を備える。例えば、図5又は図7に従って、メッセージの送信に関連するプロセスのコール(呼び出し)により、この空のオブジェクトの管理がこの検出に追加される。もしステージ704においてリクエスト又はレスポンスのパラメータが他のオブジェクトを備えるならば、これらのオブジェクトもまたリクエスト又はレスポンスが送信される前に図5又は図7のプロセスの再帰コールによって直列化される。
図5及び図6は本発明に従う、モニタの第1の実施形態を示す。本実施形態は、リクエスト又はレスポンスのパラメータを介してソースプロセスによって空のオブジェクトを送信する際に適用される。このモードは「送信の試みを待つ」と呼ばれる。
図4に従うリクエスト又はレスポンスの直列化を受けて、図5は、第1の実施形態に従うメッセージ(リクエスト又はレスポンス)の送信に関連するプロセスを提案する。一例として、このメッセージは、空のオブジェクトの識別子ID−01をパラメータとして有しプロセスP1によってプロセスP2に送信される図3−1のメッセージRPC1−aである。このメッセージにおいて、第1のオブジェクトはステージ206へ通過する構造を有する。もし、ステージ208で、オブジェクトの構造が周知の内容を備えているならば、図4のステージ704における直列化メカニズムは継続する。もし、オブジェクトの構造が完全に周知の内容を有していないならば、例えば、RPC1−aの場合のようにオブジェクトが空であることを示すフラグをオブジェクトが含むならば、オブジェクトはステージ210で空のオブジェクトとして検出される。従って、ステージ214でソースプロセスP1において空のオブジェクトが更新されない間は、ステージ212でリクエスト又はレスポンスの送信が一時中止される。プロセスは図4のステージ704に戻り、リクエスト又はレスポンスの他のオブジェクトを直列化する。一旦リクエスト又はレスポンスの全てのオブジェクトが直列化されると、メッセージの送信、例えば、プロセスP1のメッセージRPC1−aのプロセスP2への送信が実行される。
本実施形態において、プロセスP1のモニタは、意図されるプロセスによって送信されるメッセージの受信を待つことができ、そのメッセージは空のオブジェクトの内容及び識別子を備え、前記受信は適切な処理の条件である。
図6は、本発明の第1の実施形態に従う自動継続プロセスを示す。図3−1において、自動継続プロセスは、空のオブジェクトの識別子ID−01の内容を発見するために、リクエストRPC0−aを認識プロセスP0に送信したソースプロセスP1の位置にある。認識プロセスP0がリクエストを処理する時、ID−01によって識別される空のオブジェクトの内容が利用できるかどうかを確認する。ステージ220で空のオブジェクトの内容が利用できるとすぐに、認識プロセスP0のテーブルTCR0の中で、空のオブジェクトの識別子ID−01に関連するソースプロセスの識別子を捜索する。このようにして、空のオブジェクトの内容及び識別子がソースプロセスP1に送信される。空のオブジェクトの内容がテーブルに記載されたプロセスに送信されるに従って、徐々にこのテーブルTCR0のデータは次第に削除される。
一旦この結果がプロセスP1によって受信されると、プロセスP1の更新モジュールは、図4及び図5の方法によって示されるように、リクエストRPC1−aのプロセスP2への送信に進む前に、オブジェクトの構造に内容を統合することによって空のオブジェクトを更新する。
リクエスト又はレスポンスの各オブジェクトについて、図7は、メッセージ(リクエスト又はレスポンス)の送信に関連する方法の第2及び第3の実現を提案する。第2の実現は、「空のオブジェクトを送信するプロセスによる結果の送信」と称し、第3の実現は「空のオブジェクトを送信するプロセスによる再送信の命令を伴う通過」と称する。一つは、空のオブジェクトの識別子ID−01を備えプロセスP1からプロセスP2に送信されるメッセージRPC1−aの状況にある。メッセージのオブジェクトの構造は、プロセスP1のシリアライザによってステージ706まで通過する。もしステージ708でオブジェクトの構造が周知の内容を有するならば、図7のステージ704の直列化メカニズムは継続する。もしオブジェクトの構造が周知の内容を有さないならば又は部分的に周知な内容を有するならば、例えば、オブジェクトが空であることを示すフラグをオブジェクトが備えるならば、ステージ710においてオブジェクトは空のオブジェクトとして検出される。この時、これはリクエスト又はレスポンスを送信する場合において送信の妨害と呼ばれる。次にステージ712で空のオブジェクトはモニタST1−12によって処理される。この処理は、本方法の実現に従って以下の複数のオプションを備える:
ステージ712−2において、空のオブジェクトの識別子とこのオブジェクトの内容が送信されなければならない行き先プロセスの識別子、例えばID−P2―とを、再送信内容テーブルTCRとして、例えばプロセスP1にリンクされたTRC1として知られるローカルテーブル又はリストに格納、又は、
ステージ712−3において、空のオブジェクトの識別子、例えばID−01から始めて、空のオブジェクトの内容を計算できるとともに、プロセスP0の認識プロセス、例えばTCR0のテーブルTCRに、空のオブジェクトの識別子と、このオブジェクトの内容が送信されなければならない行き先プロセスの識別子とを追加することができる認識プロセス、例えば(認識と呼ばれる)P0の識別子の抽出である。この追加は、メッセージをソースプロセスから認識プロセスに、例えばプロセスP1からプロセスP0に送信した後に行われ、行き先プロセスに例えばP2にオブジェクトの内容を送信するように認識プロセスに要求する。
ステージ712−2の場合、ソースプロセスP1の再送信内容テーブルTCRは、少なくとも一つの空のオブジェクトの内容が再送信されなければならないターゲットプロセスの識別子ID−Pに関連する空のオブジェクトの識別子ID−OBJ−VIDの組を含む。モニタST1−12はその組(ID−P2、ID−01)をソースプロセスP1のテーブルTCR1に追加する。この追加は処理の適切な条件に対応し、ターゲットプロセスP2へのリクエストRPC1の送信を起動する。
ステージ712−3の場合、空のオブジェクトの識別子ID−01から認識プロセスP0の識別子が抽出される。認識プロセスP0の再送信内容テーブルTCR0に組(ID−01、ID−P2)が追加される。このために、ソースプロセスP1は、空のオブジェクトの識別子及び内容を備える結果をターゲットプロセスP2に送信するよう要求する認識プロセスP0にメッセージを送信する。所定の空のオブジェクトのための認識プロセスの識別子を抽出し再送信を要求するメッセージを送信する処理、又はテーブルTCR0に組(ID−01、ID−P2)を追加する処理の適切な条件の下で、ソースプロセスP1はターゲットプロセスP2にリクエストRPC1を送信する。
認識プロセスP0の識別子を抽出した瞬間に、もしターゲットプロセスP2が抽出方法を有さないならば、ソースプロセスP1はターゲットプロセスP2に認識プロセスP0の識別子を通知することができる。従って、もしプロセスP2によって空のオブジェクトの識別子がリクエストのパラメータとして使用されるならば、プロセスP2は、空のオブジェクトの内容を次のターゲットプロセスに直接送信するよう認識プロセスに要求することができる。
図8は、図7のステージ712−2の処理を実現するメッセージの送信に関連する方法にリンクされる自動継続の方法の第2の実施形態を示す。
この方法は、各プロセスPxに対して実行され、ここでxは、認識プロセスP0、及び空のオブジェクトID−01を送信した任意のプロセス、即ちプロセスP1、P2を指定できる整数である。
ステージ412において、プロセスPxのモニタは、空のオブジェクトの識別子及び内容(ID−01、CONT−01)を含む結果が利用可能になるのを待つ段階にある。一旦プロセスPxにおいてこの結果が利用可能になると、プロセスPxの更新モジュールは、内容をオブジェクトの構造に統合することによってオブジェクトを更新し、この更新されたオブジェクトをメッセージ(例えば、図3−1におけるプロセスP1とプロセスP2との間のメッセージR1)によって全てのターゲットプロセス、即ち、ステージ414においてテーブルTCRxにおける識別子ID−Pが空のオブジェクトの識別子ID−01と関連する全てのプロセスに送信する。従って、ステージ416において、全てのターゲットプロセスで結果が利用できるようになる。
対話方式では、空のオブジェクトを再送信したターゲットプロセスはステージ412での結果、即ち更新された空のオブジェクトを待つ。これらのターゲットプロセスはこの結果を受信するとすぐに、ステージ414を実行することによってソースプロセスになる、即ち、ターゲットプロセスは、識別子ID−Pが空のオブジェクトの識別子ID−01と関連するテーブルTCRの全てのターゲットプロセスに、更新された空のオブジェクトをメッセージによって送信する。空のオブジェクトを再送信した全てのプロセスが更新されたオブジェクトを受信するまで、この対話は実行される。
このプロセスは、まず認識プロセスによって実行され、その後、対話方式で、空のオブジェクトを再送信して更新されたオブジェクトを受信する任意のプロセスによって実行される。
従って、この実施形態は、空のオブジェクトの内容がソースプロセスにおいて利用可能になりソースプロセスによって空のオブジェクトの更新が実行されるとすぐに、ソースプロセスによってターゲットプロセスに空のオブジェクトの内容を再送信することを可能にする。この再送信は、対話式で同期RPC型通信によって実行されることができる。
図9は、図7のステージ712−3の処理を実現するメッセージの送信に関連する方法にリンクされる自動継続の方法の第3の実施形態を示す。
図9では、ステージ612において、認識プロセスP0のモニタは、利用可能にされるリクエストRPC0−aの結果を待つ段階にある。この結果は空のオブジェクトの識別子及び内容(ID−01、CONT−01)を備える。一旦この結果が認識プロセスP0において利用可能になると、そのプロセスの更新モジュールは、内容をオブジェクトの構造に統合することによって空のオブジェクトを更新し、モニタはこの更新されたオブジェクトをメッセージR2によって全てのターゲットプロセスに、即ち、ステージ614においてテーブルTRC0における識別子ID−Pが空のオブジェクトの識別子ID−01と関連する全てのプロセスに送信する。従って、ステージ616において、更新されたオブジェクトが全てのターゲットプロセスで局所的に利用できるようになる。
本発明の実施形態では、ローカルプロセスのコンピュータステーションのモニタは、リクエスト又はレスポンスの送信を実行した後、および一旦ローカルプロセスにおいて空のオブジェクトの内容が利用可能になると、その内容に関連する空のオブジェクトの識別子を、テーブルにおける識別子が空のオブジェクトの識別子に関連するプロセスに送信することができる。
図10、図11、及び図12は、一例として、プロセスP1による空のオブジェクトの使用の検出に適用される本発明の第4の実施形態を図示する。本実施形態では、メッセージ(リクエスト又はレスポンス)の送信に関連する方法は特定の処理を要求せず、検出された空のオブジェクトの存在又は不在の下で送信が実行される。
図10は、本発明の第4の実施形態に従う、必要に迫られて待つ方法を図示する。ステージ702において、ID−01によって識別された空のオブジェクトのプロセスP1による使用が検出される。ステージ704において、プロセスP1の実行が一時停止される。ステージ706において、プロセスP1のモニタは、空のオブジェクトの内容を計算し利用可能にすることができる認識プロセスID−P0の識別子を、空のオブジェクトの識別子ID−01から抽出する。ステージ708において、プロセスP1のモニタは、空のオブジェクトの識別子ID−01及びプロセスP1の識別子ID−P1を有する第1のメッセージTransmit(ID−01、ID−P1)を、認識プロセスP0に送信する。このメッセージは、一旦空のオブジェクトの内容が利用可能になると、空のオブジェクトの識別子及び内容を有する第2のメッセージ(ID−01、CONT―01)をプロセスP0によってプロセスP1に送信するよう要求する。ステージ710においてプロセスP1のモニタは、空のオブジェクトがプロセスP1の更新モジュールによって更新されるまで待つ。ステージ712において、識別されるオブジェクトの使用を実行するために、この空のオブジェクトの更新は、モニタが検出する処理の適切な条件に対応する。
図11は、認識プロセスP0によってステージ708の第1のメッセージの受信の方法を図示する。ステージ716において、プロセスP0のモニタは、受信される第1のメッセージにおける識別されたオブジェクトID−01の内容CONT−01が、図12に示されるような認識プロセスP0によって保持される内容計算テーブルTCCに存在するか否かを確認する。もし存在するならば、モニタは、空のオブジェクトの内容及びその識別子をテーブルTCCから回収し、ステージ718において空のオブジェクトの識別子及び内容を備える第2のメッセージ(ID−01、CONT―01)を、このオブジェクトを使用するプロセスP1に送信する。
もし存在しないならば、ステージ717において、プロセスP0のモニタは、第1のメッセージを備えるパラメータに戻された組(ID−P1、ID−01)を、再送信内容テーブルTCR0に追加する。
図12は、本発明の第4の実施形態に従う自動継続の方法を示す。従って、ステージ720において、認識プロセスP0のモニタは、利用可能になるべき空のオブジェクトの識別子及び内容を備える結果(ID−01、CONT−01)を待っている。一旦この結果が利用可能になると、その結果は、ステージ722において認識プロセスP0のテーブルTCCに追加され、その後、識別子が空のオブジェクトの識別子に関連するP0のテーブルTCR0の全てのプロセスに送信される。言い換えれば、プロセスP0は一回で空のオブジェクトの内容を計算し、その後、認識プロセスP0によってメモリに保持されるテーブルTCC及びTCR0によって、結果を待つ全てのプロセスに空のオブジェクトの識別子及び内容の組を送信する。
従って、認識プロセスのコンピュータステーションのモニタは、空のオブジェクトの識別子に関連するデータ及びプロセスの識別子の組を備える第1のテーブルTCR0と、空のオブジェクトの識別子に関連するデータ及びこれらのオブジェクトの内容の組を備える第2のテーブルTCCと共に動作できる。また、認識プロセスのコンピュータステーションのモニタは、一旦空のオブジェクトの識別子及びその計算された内容を第2のテーブルに追加すると、空のオブジェクトの識別子及び内容を備えるメッセージを、
空のオブジェクトの識別子が第2のテーブルにあることを確認した後にローカルプロセスに送信可能であり、及び、
第1のテーブルにおける識別子が、プロセスP1のメッセージを受けて第1のテーブルに追加された識別子であって、空のオブジェクトの識別子に関連するプロセスに送信可能である。
テーブルTCC及びTCRを使用する本発明のモニタの本実施形態では、空のオブジェクトを使用するために識別されるこの空のオブジェクトと同じ内容を待つプロセスの全体的な管理が可能になる。
データのテーブルについて言及しているが、「テーブル」という用語は相互に関連したデータのリストを指すこともあり、「リスト」という用語はデータのテーブルを指すこともある。
従って、これらの実施形態は、空のオブジェクトに関連する内容が認識プロセスによって計算されるとすぐに、この空のオブジェクトの識別子を有する全プロセスにこの内容を再送信することを可能にする。
本発明の第1、第2、及び第3の実施形態における介入プロセスは、空のオブジェクトの識別子がステーションにおけるプロセスPによって使用される時に空のオブジェクトの内容の自動更新のコヒーレンスを保証するプロセス、即ち、実行されている現在のタスクを一時中断し、空のオブジェクトの内容が知られた時にそのタスクだけを再開する、必要に迫られて待つプロセスによって伴なわれる。
各コンピュータステーションは、ローカルプロセス、プロトコルモジュール、及びモニタを備え、各ローカルプロセスは、別のステーションの別のプロセスに関連するローカルでリモートなものであり、又は空のオブジェクトの内容を計算するために認識するものであってもよい。各コンピュータステーションは一つ又はそれ以上のローカルプロセスを備えてもよく、各プロセスはプロトコルモジュール及びモニタを有する。
本発明は上述された実施形態に制限されないが、他の実施形態に及んでいる。故に、望ましい性能に従って、開発された方法が代替的に又は組合わせて使用可能である。
非同期リモートプロシージャコール(RPC)によって通信するステーションのネットワークを示す。 非同期リモートプロシージャコール(RPC)を使用して図1の2つのステーション間の通信を示す。 本発明に従う、結果の返還と共に非同期リモートプロシージャコール(RPC)を使用するステーションのネットワークを示す。 本発明に従うステーションの構成要素を詳細に示す。 非同期RPC通信のためのリクエスト又は結果を送信する方法を示すフローチャートである。 送信に関連し且つ図4のステージ702で呼び出される方法の第1の実施形態を詳細に示すフローチャートである。 図5の方法の第1の実施形態に関連する結果の自動継続の方法の第1の実施形態を詳細に示すフローチャートである。 送信に関連し且つ図4のステージ702で呼び出される方法の第2及び第3の実施形態を詳細に示すフローチャートである。 図7の方法の第2の実施形態に関連する結果の自動継続の方法の第2の実施形態を詳細に示すフローチャートである。 図7の方法の第3の実施形態に関連する結果の自動継続の方法の第3の実施形態を詳細に示すフローチャートである。 本発明に従う、結果の必要に迫られて待つ方法を詳細に示すフローチャートである。 図10のステージ708からのメッセージを送信した後にメッセージを受信する方法を示す。 図10及び図11の方法に関連する結果の自動継続の方法の第4の実施形態を詳細に示すフローチャートである。

Claims (20)

  1. 1つのステーションのローカルプロセスと他のステーションのリモートプロセスとの間の非同期通信によってオブジェクト指向言語でのリモートプロシージャのコール管理の方法であって、そのようなコールは、プロセス(P1;P2)の一方のリクエスト(RPC)及び、その後に続く他方のプロセス(P2;P1)のレスポンス(R−A)から成り、当該方法は、
    a 空のオブジェクトをローカルプロセスからリモートプロセスへ送る前にリクエスト又はレスポンスのパラメータとして空のオブジェクトの送信を検出し(210,710)、この空のオブジェクトの内容を計算することおよびその内容を利用可能にすることが認識プロセスに要求されることと、
    b リモートプロセスに対して空のオブジェクトの内容を利用可能にする目的で(212,712)空のオブジェクトを処理することと、
    c 処理の適切な条件の後に続けて前記リクエスト又はレスポンスを送信する(108)ことと、
    を備えることを特徴とする方法。
  2. 前記方法は、
    a 空のオブジェクトがローカルプロセスによって使用されなければならないというイベントを検出し(702)、ローカルプロセスによる空のオブジェクトの使用を実行するのを一時停止する(704)ことと、
    b−b1 空のオブジェクトの内容を計算し且つ利用可能にすることができる認識プロセスの識別子を備える空のオブジェクトを抽出する(706)ことと、
    b2 空のオブジェクトの識別子及びローカルプロセスの識別子を備える第1のデータを有する第1のメッセージを認識プロセスに送信し、空のオブジェクトの内容及び識別子を備える第2のデータを有する第2のメッセージのローカルプロセスへの送信を要求する(708)ことと、
    c ローカルプロセスによって第2のメッセージが受信されるのを待ち、一旦第2のメッセージが受信されると、空のオブジェクトを更新しその使用の実行を継続することと、
    を備えることを特徴とする請求項1に記載の方法。
  3. ステージb2は、更に、
    b2−1 認識プロセスによって第1のメッセージが受信されると、空のオブジェクトの識別子が、空のオブジェクトの識別子に関連するデータとこれらのオブジェクトの内容との組を備える第2のテーブルにあるか否かを確認する(716)ことと、
    b2−2−i もし存在する場合、ローカルプロセスに第2のメッセージを送信する(718)ことと、
    b2−2−ii もし存在しない場合、空のオブジェクトの識別子に関連するデータとプロセスの識別子との組を備える第1のテーブルに第1のデータを追加する(717)ことと、
    を備えることを特徴とする請求項2に記載の方法。
  4. ステージb2−2−iiは、更に、一旦空のオブジェクトの内容が利用できるようになると(720)、
    第2のテーブルに第2のデータを追加する(722)ことと、
    第1のテーブルにおける識別子が空のオブジェクトの識別子と関連するプロセスに、第2のメッセージを送信する(724)ことと、
    を備えることを特徴とする請求項3に記載の方法。
  5. ステージbは、更に、ローカルプロセスが、認識プロセスによって送られるメッセージの受信を待ち(212)、前記メッセージは空のオブジェクトの内容及び識別子を備え、そのメッセージを受信すると、更新された空のオブジェクトでステージcに続くことを備えることを特徴とする請求項1に記載の方法。
  6. ステージbは、更に、ローカルプロセスが、リモートプロセスの識別子に関連する空のオブジェクトの識別子を、空のオブジェクトの識別子に関連するデータとプロセスの識別子との組を備えるテーブルに追加し(712−2)、ステージcに続くことを備えることを特徴とする請求項1に記載の方法。
  7. 一旦送信が実行されると、ステージcは、
    c1 ローカルプロセスにおいて利用可能になるために空のオブジェクトの内容を待つ(412)ことと、
    c2 一旦前記内容が利用可能になると、空のオブジェクトの内容及び識別子を、前記テーブルにおける識別子が空のオブジェクトの識別子と関連するプロセスに送信する(414)ことと、
    を備えることを請求項6に記載の方法。
  8. ローカルプロセスにおいて、ステージbは、更に、
    b1 空のオブジェクトの内容を計算して利用可能にできる認識プロセスの識別子を、識別子を備える空のオブジェクトから抽出することと、
    b2 リモートプロセスの識別子と関連する空のオブジェクトの識別子を備える第1のデータを有する第1のメッセージを認識プロセスに送信し、空のオブジェクトの内容と関連するその識別子を備える第2のデータを有する第2のメッセージをリモートプロセスに認識プロセスが送信することを前記第1のメッセージが要求することと、
    を備えることを特徴とする請求項1に記載の方法。
  9. ステージcは、また、第1のメッセージを受信すると認識プロセスが、
    c1 空のオブジェクトの識別子に関連するデータとプロセスの識別子との組を備えるテーブルに第1のデータを追加する(712−3)こと備えることを特徴とする請求項8に記載の方法。
  10. ステージcは、更に、送信を完了したのを受けてローカルプロセスが、
    c1 空のオブジェクトの内容がローカルプロセスにおいて利用可能になるのを待つ(612)ことと、
    d2 一旦前記内容が利用可能になると、テーブルにおける識別子が空のオブジェクトの識別子と関連するプロセスに、前記内容と関連する空のオブジェクトの識別子を送信する(614)ことと、
    を備えることを特徴とする請求項8又は9に記載の方法。
  11. オブジェクト指向言語で一つ又はそれ以上のローカルプロセス(P1)を実行できる環境(ST1−2、ST1−4、ST1−6)と、
    非同期通信によって、ローカルプロセス(P1)と別のステーションのリモートプロセス(P2)との間でリモートプロシージャコール(RPC)を処理できるプロトコルモジュール(ST1−6)であって、そのようなコール(RPC)が、プロセス(P1;P2)の一方のリクエスト(A)と、その後に続く他方のプロセス(P2;P1)のレスポンス(R−A)とから成るプロトコルモジュールとを備えたコンピュータステーションであって、
    前記コンピュータステーションは、空のオブジェクションが、ローカルプロセス(P1)によってリモートプロセス(P2)に送信されるべきリクエスト又はレスポンスのパレメータとして発生しているというイベントを検出すると、この空のオブジェクトの内容の計算とその内容の利用可能性とが認識プロセスに要求され、
    リモートプロセスに対して空のオブジェクトの内容を利用可能にする目的で前記空のオブジェクトを処理することができるとともに、
    処理の適切な条件の下に続けて前記リクエストまたはレスポンスを送信することができるモニタ(ST1−12)を備えることを特徴とするコンピュータステーション。
  12. 空のオブジェクトがローカルプロセスによって使用されなければならないというイベントの検出を受けて、モニタ(ST1−12)は、更に、
    空のオブジェクトの内容を計算し利用可能にできる認識プロセスの識別子を、識別子を備える空のオブジェクトから抽出でき、
    空のオブジェクトの識別子とローカルプロセスの識別子とを備える第1のデータを有する第1のメッセージを認識プロセスに送信し、空のオブジェクトの内容及び識別子を備える第2のデータを有する第2のメッセージをローカルプロセスに送信するよう要求でき、
    ローカルプロセスによる第2のメッセージの受信を待つことができ、そのような受信は処理の適切な条件である、
    ことを特徴とする請求項11に記載のコンピュータステーション。
  13. 認識プロセスのコンピュータステーションのモニタ(ST1−12)は、
    空のオブジェクトの識別子に関連するデータとプロセスの識別子との組を備える第1のテーブル、及び空のオブジェクトの識別子に関連するデータとこれらのオブジェクトの内容との組を備える第2のテーブルと共に動作でき、
    第2のメッセージを、
    第1のメッセージの空のオブジェクトの識別子が第2のテーブルにあることを確認した後にローカルプロセスと、
    第1のテーブルに第1のデータを追加した後に第1のテーブル内の識別子が、空のオブジェクトの識別子に関連付けられるとともに、空のオブジェクトの内容を計算した後に第2のテーブルに第2のデータを追加したプロセスと、
    に送信することができることを特徴とする請求項12に記載のコンピュータステーション。
  14. 前記モニタ(ST1−12)は、認識プロセスによって送信されるメッセージの受信を待つことができ、前記メッセージが空のオブジェクトの内容及び識別子を備え、そのような受信は処理の適切な条件であることを特徴とする請求項11に記載のコンピュータステーション。
  15. 前記モニタ(ST1−12)は、リモートプロセスの識別子に関連する空のオブジェクトの識別子を、空のオブジェクトの識別子に関連するデータとプロセスの識別子との組を備えるテーブルに追加することができ、この追加は処理の適切な条件であることを特徴とする請求項11に記載のコンピュータステーション。
  16. 一旦空のオブジェクトの内容がローカルプロセスにおいて利用可能になると、前記モニタ(ST1−12)は、空のオブジェクトの内容及び識別子を、テーブル内の識別子が空のオブジェクトの識別子と関連するプロセスに送信できることを特徴とする請求項15に記載のコンピュータステーション。
  17. 前記モニタ(ST1−12)は、
    空のオブジェクトの内容を計算し利用可能にできる認識プロセスの識別子を備える空のオブジェクトを抽出でき、
    リモートプロセスの識別子と関連する空のオブジェクトの識別子を備える第1のデータを有する第1のメッセージを、認識プロセスに送信することができ、この第1のメッセージは、空のオブジェクトの内容及び識別子を備える第2のデータを有する第2のメッセージを、リモートプロセスに送信するよう要求し、その第1のメッセージの送信は、処理の適切な条件である、
    ことを特徴とする請求項11に記載のコンピュータステーション。
  18. 前記認識プロセスのコンピュータステーションの前記モニタ(ST1−12)は、第1のメッセージを受信すると、
    空のオブジェクトの識別子に関連するデータとプロセスの識別子との組を備えるテーブルに第1のデータを追加することができる、
    ことを特徴とする請求項17に記載のコンピュータステーション。
  19. リクエスト又はレスポンスの送信を実行した後で一旦空のオブジェクトの内容がローカルプロセスにおいて利用可能になった場合に、前記ローカルプロセスのコンピュータステーションの前記モニタは、テーブル内の識別子が空のオブジェクトの識別子と関連するプロセスに、空のオブジェクトの内容と関連する空のオブジェクトの識別子を送信できる(614)ことを特徴とする請求項17又は18に記載のコンピュータステーション。
  20. 請求項11〜19のいずれか一項に記載のコンピュータステーションのネットワークであって、
    各コンピュータステーションは、ローカルプロセス、プロトコルモジュール、及びモニタを備え、各ローカルプロセスは、他のステーションの他のプロセスに対してローカルでリモートであり、又は計算のために空のオブジェクトの内容を知ることができるようにしたネットワーク。
JP2006540532A 2003-11-26 2004-11-24 通信オブジェクト間で結果を送信するための非同期自動デバイス及び方法 Pending JP2007517279A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0313876A FR2862830B1 (fr) 2003-11-26 2003-11-26 Dispositif et procede asynchrones et automatiques de transmission de resultats entre objets communicants.
PCT/FR2004/003005 WO2005055060A1 (fr) 2003-11-26 2004-11-24 Dispositif et procede asynchrones et automatiques de transmission de resultats entre objets communicants

Publications (1)

Publication Number Publication Date
JP2007517279A true JP2007517279A (ja) 2007-06-28

Family

ID=34531294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006540532A Pending JP2007517279A (ja) 2003-11-26 2004-11-24 通信オブジェクト間で結果を送信するための非同期自動デバイス及び方法

Country Status (7)

Country Link
US (1) US20070147277A1 (ja)
EP (1) EP1687719A1 (ja)
JP (1) JP2007517279A (ja)
CN (1) CN1902590B (ja)
CA (1) CA2546888C (ja)
FR (1) FR2862830B1 (ja)
WO (1) WO2005055060A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8855036B2 (en) * 2007-12-21 2014-10-07 Powerwave Technologies S.A.R.L. Digital distributed antenna system
US8549094B2 (en) * 2011-06-30 2013-10-01 International Business Machines Corporation Facilitating communication between isolated memory spaces of a communications environment
CN103095785B (zh) * 2011-11-08 2016-04-06 阿里巴巴集团控股有限公司 远程过程调用方法和***、客户端及服务器
JP5389210B2 (ja) * 2012-03-21 2014-01-15 株式会社東芝 通信管理プログラム及びクライアント装置
US11170067B2 (en) * 2017-12-13 2021-11-09 Google Llc Methods, systems, and media for updating a webpage rendered with cached content

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05290003A (ja) * 1992-04-13 1993-11-05 Matsushita Electric Ind Co Ltd 非同期型遠隔手続き呼び出し装置
JPH08110860A (ja) * 1994-02-11 1996-04-30 Internatl Business Mach Corp <Ibm> インターフエース機構、クラス・ライブラリ及び非同期のデータ処理方法
JPH0916417A (ja) * 1995-06-27 1997-01-17 Hitachi Ltd メッセージ通信方法およびメッセージ通信システム
WO2001086425A2 (en) * 2000-05-09 2001-11-15 Sun Microsystems, Inc. Mechanism and apparatus for returning results of services in a distributed computing environment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694598A (en) * 1994-10-12 1997-12-02 U S West Technologies, Inc. Method for mapping data between a relational format and an object-oriented format
US6920636B1 (en) * 1999-12-15 2005-07-19 Microsoft Corporation Queued component interface passing for results outflow from queued method invocations
US7051341B2 (en) * 2001-12-14 2006-05-23 International Business Machines Corporation Method, system, and program for implementing a remote method call
US7150004B2 (en) * 2002-08-21 2006-12-12 International Business Machines Corporation Programmatically serializing complex objects using self-healing techniques

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05290003A (ja) * 1992-04-13 1993-11-05 Matsushita Electric Ind Co Ltd 非同期型遠隔手続き呼び出し装置
JPH08110860A (ja) * 1994-02-11 1996-04-30 Internatl Business Mach Corp <Ibm> インターフエース機構、クラス・ライブラリ及び非同期のデータ処理方法
JPH0916417A (ja) * 1995-06-27 1997-01-17 Hitachi Ltd メッセージ通信方法およびメッセージ通信システム
WO2001086425A2 (en) * 2000-05-09 2001-11-15 Sun Microsystems, Inc. Mechanism and apparatus for returning results of services in a distributed computing environment
JP2004501427A (ja) * 2000-05-09 2004-01-15 サン・マイクロシステムズ・インコーポレイテッド 分散コンピューティング環境でサービスの結果を返す機構および装置

Also Published As

Publication number Publication date
CA2546888C (fr) 2011-07-12
FR2862830B1 (fr) 2006-02-24
WO2005055060A1 (fr) 2005-06-16
US20070147277A1 (en) 2007-06-28
EP1687719A1 (fr) 2006-08-09
CN1902590A (zh) 2007-01-24
CA2546888A1 (fr) 2005-06-16
FR2862830A1 (fr) 2005-05-27
CN1902590B (zh) 2010-09-15

Similar Documents

Publication Publication Date Title
US5748897A (en) Apparatus and method for operating an aggregation of server computers using a dual-role proxy server computer
US7694178B2 (en) Method, apparatus and computer program product for transaction recovery
US8769026B2 (en) Servicing requests that are issued in a protocol other than the protocol expected by the service
US5818448A (en) Apparatus and method for identifying server computer aggregation topologies
US10958735B2 (en) Client connection method and system
US9135138B2 (en) Method and system for tracing individual transactions over messaging systems without adding tracing information to messages
US9967360B2 (en) Method and system for information exchange utilizing an asynchronous persistent store protocol
CN111858083B (zh) 一种远程服务的调用方法、装置、电子设备及存储介质
JP2007517279A (ja) 通信オブジェクト間で結果を送信するための非同期自動デバイス及び方法
US6625117B1 (en) Method and apparatus for switching messages from a primary message channel to a secondary message channel in a message queuing system
CN113364885A (zh) 微服务调用方法、装置、电子设备和可读存储介质
CN109905459B (zh) 一种数据传输方法及装置
CN115361348B (zh) 由数据采集设备执行的与web浏览器通信的方法
CN112395104B (zh) 一种分布式事务上下文在路由层传递的实现方法与装置
JP4627789B2 (ja) 情報処理装置、情報処理方法およびプログラム
US20150019709A1 (en) Method and apparatus for controlling initiation of multi-service transactions
CN112511636B (zh) 数据传输***、方法、装置、计算机设备及存储介质
JP7147347B2 (ja) 原子性保証装置および原子性保証方法
CN109688204B (zh) 基于ndn网络的文件下载方法、节点、终端
JP2008052358A (ja) 非同期リクエスト伝達システム
WO2020196958A1 (ko) 네트워크 상태 변환에 따른 효율적인 전송 복원 방법 및 시스템
WO1994028486A1 (en) Method of selecting a server object to service a client object request within a network environment
JP2002318790A (ja) 分散オブジェクト環境に適用される通信システムおよび通信プログラム
CN116149967A (zh) 数据采集方法、装置、设备及存储介质
CN115981883A (zh) 一种应用性能监控的方法及装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100302

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100602

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100609

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100702

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100709

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100802

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110315

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110608

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110615

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111004