[go: up one dir, main page]

JPH10105420A - Remote procedure call processing method - Google Patents

Remote procedure call processing method

Info

Publication number
JPH10105420A
JPH10105420A JP25345396A JP25345396A JPH10105420A JP H10105420 A JPH10105420 A JP H10105420A JP 25345396 A JP25345396 A JP 25345396A JP 25345396 A JP25345396 A JP 25345396A JP H10105420 A JPH10105420 A JP H10105420A
Authority
JP
Japan
Prior art keywords
processing
server
procedure call
remote procedure
rpc
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
JP25345396A
Other languages
Japanese (ja)
Inventor
Nobuyoshi Ando
宣善 安東
Masayuki Orimo
昌之 織茂
Shigeki Hirasawa
茂樹 平澤
Takashi Hashimoto
尚 橋本
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP25345396A priority Critical patent/JPH10105420A/en
Publication of JPH10105420A publication Critical patent/JPH10105420A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 (修正有) 【課題】多重実行要求に対して他のプロシジャ実行側の
処理負担を軽減し、キャッシュ内容の保存期間およびキ
ャッシュメモリの大きさを制御する。 【解決手段】複数の処理装置2,3,4,5を3層以上
の階層構造とし、プロシジャ実行側の処理装置3,4を
多重化して分散システムを構成する。リモートプロシジ
ャコール要求メッセージを受信した処理手段5は、リモ
ートプロシジャコール要求メッセージの中に含まれるユ
ーザデータ部の内容に基づいて、多重要求メッセージを
検出し、そのうちの1つを選択し、自らの処理を実行
し、その実行結果を選択された多重要求メッセージの送
信元処理装置3に返すとともに、その実行結果を複製し
た情報を選択されなかった多重要求メッセージの送信元
処理装置4に返す。リモートプロシジャコールを要求さ
れた宛先の処理手段の数の情報に基づいて、多重化され
たリモートプロシジャコール要求に対するキャッシュ情
報を管理する。
(57) [Summary] (with correction) [PROBLEMS] To reduce the processing load on the other procedure execution side in response to a multiple execution request, and control the cache content retention period and the size of the cache memory. A distributed system is configured by arranging a plurality of processing devices (2, 3, 4, 5) in a hierarchical structure of three or more layers and multiplexing processing devices (3, 4) on the procedure execution side. The processing means 5 having received the remote procedure call request message detects a multiplex request message based on the contents of the user data portion included in the remote procedure call request message, selects one of the messages, and performs its own processing. Is executed, and the execution result is returned to the transmission source processing device 3 of the selected multiplex request message, and information obtained by duplicating the execution result is returned to the transmission source processing device 4 of the unselected multiplex request message. The cache information for the multiplexed remote procedure call request is managed based on the information on the number of processing means of the destination requested for the remote procedure call.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、分散したシステム
が各種のサービスをプロシジャの形で提供しているリモ
ートプロシジャコール処理方式に係り、特に、3層構造
の分散システムにおいてプロシジャ実行側を多重化する
場合に好適なリモートプロシジャコール処理方式に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a remote procedure call processing system in which a distributed system provides various services in the form of procedures, and more particularly, to a multiplexed procedure execution side in a three-layer distributed system. The present invention relates to a remote procedure call processing method that is suitable for the case.

【0002】[0002]

【従来の技術】従来より、分散システム構築のモデルと
して、3層構造クライアント/サーバモデルが知られて
いる。3層構造クライアント/サーバモデルでは、分散
システムを構成するコンポーネントソフトウェア(クラ
イアント,サーバ)を、機能的に、プレゼンテーション
層(クライアント),ファンクション層(サーバ),デ
ータ層(ネストサーバ)の3つに分類する。そして、こ
の分類に基づいてコンポーネントソフトウェアを開発す
るようにしている。また、システムの構成に変更の必要
が生じた場合、あるコンポーネントだけを置き換え、他
の部分には極力影響が出ないようにすることができる。
このプレゼンテーション層(クライアント),ファンク
ション層(サーバ),及びデータ層(ネストサーバ)間
の通信手段として、リモートプロシジャコール処理方式
(以下、「RPC」と称する)が、通常使用される。
2. Description of the Related Art Conventionally, a three-tiered client / server model has been known as a model for constructing a distributed system. In the three-tier client / server model, component software (client, server) that configures a distributed system is functionally classified into three layers: a presentation layer (client), a function layer (server), and a data layer (nest server). I do. Then, component software is developed based on this classification. Further, when the configuration of the system needs to be changed, it is possible to replace only a certain component and to minimize the influence on other portions.
As a communication means between the presentation layer (client), function layer (server), and data layer (nest server), a remote procedure call processing method (hereinafter, referred to as "RPC") is generally used.

【0003】RPCでは、プロシジャの実行側は、通
常、プロシジャの要求側からの依頼に対して、その都度
プロシジャを実行し、その処理結果をプロシジャ要求側
に返すようにしている。したがって、プロシジャの実行
側は、プロシジャの要求側からの依頼がM回来れば、そ
の要求内容がまったく同一であってもプロシジャをM回
実行するようにしている。3層構造クライアント/サー
バモデルのような構成において、ファンクション層のプ
ロシジャ実行側(サーバ)の多重化を行なう場合、多重
化されたファンクション層のプロシジャ実行側が、さら
に別のプロシジャ実行側(例えば、データ層のネストサ
ーバ)に対してプロシジャ実行要求を発行する場合、そ
のプロシジャ実行要求を受けとる別のプロシジャ実行側
は、同じ内容のプロシジャ処理を複数回行なわなければ
ならない可能性があり、これはプロシジャ実行側の処理
負荷が大きくなる。
In RPC, a procedure executing side normally executes a procedure each time a request is made from a procedure requesting side, and returns a processing result to the procedure requesting side. Therefore, the procedure execution side executes the procedure M times if the request from the procedure request side comes M times, even if the request contents are exactly the same. In a configuration such as a three-layer client / server model, when multiplexing the procedure execution side (server) of the function layer, the multiplexed procedure execution side of the function layer is further multiplexed by another procedure execution side (for example, data). When a procedure execution request is issued to a nested server of a layer, another procedure executing side that receives the procedure execution request may need to perform the same procedure procedure a plurality of times. Side processing load increases.

【0004】複数の同一内容の処理要求に対して処理負
荷を低減する一般的な方法として、第1には、例えば、
キャッシュ方式が知られている。キャッシュ方式は、プ
ロシジャ実行側が、あらかじめ最近の実行要求の内容と
その実行結果を自分が存在する計算機内に保存(キャッ
シュ)しておき、プロシジャ実行要求側からのプロシジ
ャ実行要求を受け付けると、そのプロシジャ実行要求の
内容とキャッシュ内容とを比較し、もし内容が一致する
実行要求があればその実行結果(キャッシュ内容)を受
け付けたプロシジャ実行要求の実行結果として、あたか
も実際にプロシジャを実行したかのようにプロシジャ要
求側に返す方法である。
As a general method for reducing the processing load for a plurality of processing requests having the same contents, first, for example,
A cache method is known. In the cache method, when a procedure execution side stores (caches) the contents of a recent execution request and its execution result in a computer in which the procedure execution side is present, and receives a procedure execution request from the procedure execution requesting side, the procedure execution side executes the procedure. The contents of the execution request are compared with the contents of the cache. If there is an execution request having the same contents, the execution result (cache contents) is accepted as if the procedure was actually executed as the execution result of the procedure execution request. Is returned to the procedure request side.

【0005】また、第2の方法として、例えば、本出願
人らが先に提案した特開昭63−30956号公報に記
載のように、RPCに適用するものではないが、入力さ
れるメッセージによって処理を実行する処理実行側が、
入力される多重メッセージを検出し、その中から1つを
選択し、自分自信の処理を実行する方式が知られてい
る。ここでは、イベント番号という識別子をメッセージ
に付加することで、受信側が多重メッセージを検出する
ことを可能とし、受信側によって多重メッセージを収集
し、その中から選択した1つのメッセージのみを用いて
自分自信の処理を1回だけ実行し、同じ処理が複数回行
われることを防いでいる。
[0005] As a second method, for example, as described in Japanese Patent Application Laid-Open No. 63-30956 previously proposed by the present applicant, the method is not applied to RPC, but depends on a message inputted. The processing execution side that executes the processing,
There is known a method in which an input multiplex message is detected, one of them is selected, and a process of one's own is executed. Here, by adding an identifier called an event number to the message, the receiving side can detect the multiplexed message, collect the multiplexed message by the receiving side, and use only one message selected from the collected messages. Is executed only once, thereby preventing the same process from being performed a plurality of times.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、3層構
造クライアント/サーバモデルのプロシジャ実行側を多
重化した場合のリモートプロシジャコール処理方式にお
いて、上述したキャッシュ方法を用いたとしても、キャ
ッシュ内容の保存期間に関し、いつどのような順序でキ
ャッシュ内容を破棄すればよいかという制御は困難であ
るという問題があった。また、キャッシュに必要なメモ
リ容量の見積りが難しく、好適にキャッシュを動作させ
ることのできるメモリ確保を動的に行うことは困難であ
るという問題があった。
However, in the remote procedure call processing method in which the procedure execution side of the three-tiered client / server model is multiplexed, even if the above-described caching method is used, the cache content storage period However, it is difficult to control when and in what order the cache contents should be discarded. Further, there is a problem that it is difficult to estimate a memory capacity required for the cache, and it is difficult to dynamically secure a memory that can operate the cache suitably.

【0007】また、上述の特開昭63ー30956に開
示されている方式では、RPCのような、受信側の処理
結果を応答としてもらうことは想定していないため、多
重要求メッセージを処理する処理実行側が多重要求メッ
セージのうちの1つを選択して実行し、その実行結果を
多重応答メッセージとしてそれぞれの要求元に返すよう
にしたとしても、多重要求メッセージの内容(例えば、
RPCの入力引数)が異なればその実行結果も異なるの
で、RPC要求を送信した依頼元では要求メッセージ内
容と応答メッセージ内容との間で不整合が生じてしまう
という問題がある。また、この方式では、多重メッセー
ジ受信側が多重メッセージを判別する際に、多重メッセ
ージの識別に用いるイベント識別子や多重メッセージの
内容を、実際に到着するはずの数の多重メッセージを受
信した後であっても、あらかじめ決められた一定時間の
間記憶しておく必要があり、そのための記憶領域を多く
確保する必要があるという問題があった。
In the method disclosed in the above-mentioned Japanese Patent Application Laid-Open No. 63-30956, since it is not assumed that the processing result on the receiving side is received as a response as in RPC, the processing for processing a multiplex request message is performed. Even if the execution side selects and executes one of the multiple request messages and returns the execution result to each request source as a multiple response message, the content of the multiple request message (for example,
If the input arguments of the RPC are different, the execution results are also different, so that there is a problem that the request source that transmitted the RPC request may have inconsistency between the contents of the request message and the contents of the response message. Further, in this method, when the multiplexed message receiving side determines the multiplexed message, the event identifier used for identifying the multiplexed message and the content of the multiplexed message are obtained after the number of multiplexed messages that should have actually arrived is received. However, there is also a problem that it is necessary to store the data for a predetermined period of time, and it is necessary to secure a large storage area therefor.

【0008】本発明の目的は、3層構造クライアント/
サーバモデルのプロシジャ実行側を多重化した場合にお
いて、このプロシジャ実行側が発行する多重実行要求に
対して他のプロシジャ実行側が効率的に処理負担の軽減
を図れ、さらに、キャッシュ内容の保存期間およびキャ
ッシュメモリの大きさを効果的に制御することができる
リモートプロシジャコール処理方式を提供することにあ
る。
An object of the present invention is to provide a three-tier client /
When the procedure execution side of the server model is multiplexed, the processing load can be efficiently reduced by the other procedure execution side in response to the multiple execution request issued by this procedure execution side, and the cache content storage period and cache memory It is an object of the present invention to provide a remote procedure call processing method capable of effectively controlling the size of the remote procedure call.

【0009】[0009]

【課題を解決するための手段】上記目的を達成するため
に、本発明は、複数の処理手段を3層以上の階層構造と
し、プロシジャ実行側の処理手段を多重化し、これらの
処理手段を伝送ネットワークにより接続した分散システ
ムにおけるリモートプロシジャコール処理方式におい
て、リモートプロシジャコール要求メッセージを受信し
た処理手段は、上記リモートプロシジャコール要求メッ
セージの中に含まれるユーザデータ部の内容に基づい
て、多重要求メッセージを検出し、そのうちの1つを選
択し、選択された多重要求メッセージを用いて自らの処
理を実行し、その実行結果を選択された多重要求メッセ
ージの送信元処理手段に返すとともに、その実行結果を
複製した情報を選択されなかった多重要求メッセージの
送信元処理手段に返すとともに、上記リモートプロシジ
ャコール要求メッセージの中に含まれるリモートプロシ
ジャコールを要求された宛先の処理手段の数の情報に基
づいて、多重化されたリモートプロシジャコール要求に
対するキャッシュ情報を管理するようにしたものであ
り、かかる方式により、プロシジャ実行側が発行する多
重実行要求に対して他のプロシジャ実行側が効率的に処
理負担の軽減を図れ、さらに、キャッシュ内容の保存期
間およびキャッシュメモリの大きさを効果的に制御し得
るものとなる。
In order to achieve the above object, the present invention has a plurality of processing means having a hierarchical structure of three or more layers, multiplexing processing means on the procedure execution side, and transmitting these processing means. In the remote procedure call processing method in a distributed system connected by a network, the processing unit that has received the remote procedure call request message generates a multiplex request message based on the content of the user data section included in the remote procedure call request message. Detecting, selecting one of them, executing its own process using the selected multiplex request message, returning the execution result to the source processing means of the selected multiplex request message, and returning the execution result. Return the duplicated information to the source processing means of the unselected multiplex request message In both, the cache information for the multiplexed remote procedure call request is managed based on information on the number of processing means of the destination requested for the remote procedure call included in the remote procedure call request message. According to such a method, the processing load can be efficiently reduced by the other procedure execution side in response to the multiple execution request issued by the procedure execution side, and the storage period of the cache contents and the size of the cache memory can be effectively reduced. It can be controlled.

【0010】上記リモートプロシジャコール処理方式に
おいて、好ましくは、リモートプロシジャコールを要求
する処理手段は、自処理手段及びその要求の発生順を示
すイベント識別子の情報とリモートプロシジャコールを
要求する下位の宛先の処理手段の数の情報を付加した第
1のリモートプロシジャコール要求メッセージを伝送ネ
ットワークに送出し、上記宛先の処理手段は、多重化さ
れた処理手段であって、受信した上記第1のリモートプ
ロシジャコール要求メッセージに基づき開始した自らの
処理中に発生したさらに下位の処理手段に対するリモー
トプロシジャコール要求のリモートプロシジャコール要
求メッセージに、上記第1のリモートプロシジャコール
要求メッセージの上記イベント識別子と上記宛先の処理
装置数とを付加して、第2のリモートプロシジャコール
要求メッセージを伝送ネットワークに送出し、上記第2
のリモートプロシジャコール要求メッセージを受信した
上記さらに下位の処理手段は、上記リモートプロシジャ
コール要求メッセージの中の上記宛先の処理装置数に基
づいて、多重化されたリモートプロシジャコール要求に
対する上記キャッシュ情報を管理するようにしたもので
あり、かかる方式により、マルチキャスト構成とし得る
ものとなる。
In the above-mentioned remote procedure call processing method, preferably, the processing means for requesting the remote procedure call includes information on the self-processing means and the event identifier indicating the order of generation of the request, and the lower order destination for requesting the remote procedure call. A first remote procedure call request message to which information of the number of processing means is added is sent to the transmission network. The destination processing means is a multiplexed processing means, and the received first remote procedure call message is received. A remote procedure call request message of a remote procedure call request for a lower processing means generated during its own processing started based on the request message includes the event identifier of the first remote procedure call request message and the destination processing device. Add a number and , The second remote procedure call request message transmitted to the transmission network, the second
Receiving the remote procedure call request message of the above, further manages the cache information for the multiplexed remote procedure call request based on the number of destination processing devices in the remote procedure call request message. With this method, a multicast configuration can be obtained.

【0011】上記リモートプロシジャコール処理方式に
おいて、好ましくは、リモートプロシジャコールを要求
する処理手段は、1つのリモートプロシジャコール要求
に対応して同一処理に属する複数の処理手段を呼び出す
にあたり、同一処理に属する複数の処理手段の中から要
求元によって任意に選択した1つの処理手段を呼び出
し、自処理手段及びその要求の発生順を示すイベント識
別子の情報とリモートプロシジャコールを要求する下位
の宛先の処理手段の数の情報を付加した第1のリモート
プロシジャコール要求メッセージを伝送ネットワークに
送出し、呼び出された処理手段(代行処理手段)は、自
らの処理を実行するとともに、上記要求元から要求され
た内容を複製して残りの処理手段を呼び出し、受信した
上記第1のリモートプロシジャコール要求メッセージを
複製して伝送ネットワークに送出し、上記第1のリモー
トプロシジャコール要求メッセージを受信したそれぞれ
の処理手段は、受信した上記第第1のリモートプロシジ
ャコール要求メッセージに基づき開始した自らの処理中
に発生したさらに下位の処理手段に対するリモートプロ
シジャコール要求のリモートプロシジャコール要求メッ
セージに、上記第1のリモートプロシジャコール要求メ
ッセージの上記イベント識別子と上記宛先の処理装置数
とを付加して、第2のリモートプロシジャコール要求メ
ッセージを伝送ネットワークに送出し、上記第2のリモ
ートプロシジャコール要求メッセージを受信した上記さ
らに下位の処理手段は、上記リモートプロシジャコール
要求メッセージの中の上記宛先の処理装置数に基づい
て、多重化されたリモートプロシジャコール要求に対す
る上記キャッシュ情報を管理するようにしたものであ
り、かかる方式により、間接マルチキャスト構成とし得
るものとなる。
In the above remote procedure call processing method, preferably, the processing means requesting a remote procedure call belongs to the same processing when calling a plurality of processing means belonging to the same processing in response to one remote procedure call request. One of the plurality of processing means is arbitrarily selected by the requesting source, and information of an event identifier indicating the order of generation of the request and information of a lower-level destination processing means requesting a remote procedure call are called. A first remote procedure call request message to which the number information has been added is sent to the transmission network, and the called processing means (proxy processing means) executes its own processing, and executes the contents requested by the request source. The first remote control is received by copying and calling the remaining processing means. Each of the processing means, which has duplicated the lossy call request message and transmitted it to the transmission network and received the first remote procedure call request message, executes its own processing started based on the received first remote procedure call request message. The event identifier of the first remote procedure call request message and the number of destination processing units are added to the remote procedure call request message of the remote procedure call request for the lower-level processing means generated during the second procedure. Sending the remote procedure call request message to the transmission network, and receiving the second remote procedure call request message, the lower-level processing means processes the destination in the remote procedure call request message. Based on the registered number, which was to manage the cache information for multiplexed remote procedure call request, by such method, and those which may indirect multicast configuration.

【0012】上記リモートプロシジャコール処理方式に
おいて、好ましくは、上記第1のリモートプロシジャコ
ール要求メッセージを受信した処理手段は、上記第1の
リモートプロシジャコール要求メッセージに基づき開始
した自らの処理中に発生したリモートプロシジャコール
要求の第2のリモートプロシジャコール要求メッセージ
に、さらに、自らの処理中に発生した要求の発生順を示
すネストイベント通番とを付加して伝送ネットワークに
送出するようにしたものである。
In the above remote procedure call processing method, preferably, the processing means having received the first remote procedure call request message has occurred during its own processing started based on the first remote procedure call request message. The second remote procedure call request message of the remote procedure call request is further added with a nested event serial number indicating the order in which the requests occurred during its own processing are transmitted to the transmission network.

【0013】上記リモートプロシジャコール処理方式に
おいて、好ましくは、同一の上記イベント識別子を持つ
同一処理に属する多重要求メッセージの検出処理、ある
いは同一の上記イベント識別子と同一の上記ネストイベ
ント通番を持つ同一処理に属する多重要求メッセージの
検出処理を行う期間を、上記宛先処理装置数に等しい数
の前記多重要求メッセージの取り込みが終了するまでと
するようにしたものである。
In the above-mentioned remote procedure call processing method, it is preferable to perform a process of detecting a multiplex request message belonging to the same process having the same event identifier or a process having the same nest event serial number having the same event identifier. The period during which the detection processing of the multiplex request message to which the multiplex request message belongs is performed until the fetch of the multiplex request messages of the number equal to the number of the destination processing devices is completed.

【0014】[0014]

【発明の実施の形態】以下、図1〜図16を用いて、本
発明の一実施形態によるリモートプロシジャコール処理
方式について説明する。 [分散システムの全体構成]最初に、図1を用いて、本
発明の一実施形態によるリモートプロシジャコール処理
方式を用いる分散システムについて説明する。図1は、
本発明の一実施形態によるリモートプロシジャコール処
理方式を用いる分散システムの全体構成を示すブロック
図である。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A remote procedure call processing system according to an embodiment of the present invention will be described below with reference to FIGS. [Overall Configuration of Distributed System] First, a distributed system using a remote procedure call processing method according to an embodiment of the present invention will be described with reference to FIG. FIG.
It is a block diagram showing the whole distributed system using a remote procedure call processing system by one embodiment of the present invention.

【0015】図1に示す分散システムにおいては、プロ
シジャ実行側(サーバ)が多重化された3層構造クライ
アント/サーバモデルを示している。なお、本発明は、
3層以上の層構造を有するクライアント/サーバモデル
に適用することができるものであるが、ここでは、3層
構造について説明する。
The distributed system shown in FIG. 1 shows a three-tier client / server model in which procedure execution sides (servers) are multiplexed. In addition, the present invention
Although the present invention can be applied to a client / server model having a three-layer structure or more, a three-layer structure will be described here.

【0016】処理装置2,3,4,5は、それぞれ、通
信媒体1に接続されており、他の処理装置との間で通信
媒体1を介して通信を行なう。通信媒体1としては、L
AN,WAN,無線LAN等のあらゆる通信回線を用い
ることができる。処理装置2,3,4,5としては、ワ
ークステーション,パーソナルコンピュータ,コントロ
ーラ,メーンフレームコンピュータ,携帯コンピュータ
等の計算機を用いることができる。処理装置2,3,
4,5は、それぞれ、異なる種類の計算機であってもよ
いものである。
Each of the processing devices 2, 3, 4, and 5 is connected to the communication medium 1 and communicates with another processing device via the communication medium 1. As the communication medium 1, L
Any communication line such as AN, WAN, wireless LAN, etc. can be used. As the processing devices 2, 3, 4, and 5, computers such as workstations, personal computers, controllers, mainframe computers, and portable computers can be used. Processing units 2, 3,
Reference numerals 4 and 5 may be different types of computers.

【0017】処理装置2は、クライアント22とRPC
処理部20を有している。クライアント22は、例え
ば、ユーザにより作成,あるいは利用されるユーザプロ
グラム,アプリケーションプログラムであり、処理のた
めに必要な情報の参照を、必要に応じて他の処理装置の
プロシジャに要求するものである。ここで、他の処理装
置のプロシジャとしては、例えば、後述するサーバ3
3,43、ネストサーバ53が相当する。
The processing device 2 includes a client 22 and an RPC
It has a processing unit 20. The client 22 is, for example, a user program or an application program created or used by a user, and requests a procedure of another processing device as necessary to refer to information necessary for processing. Here, as a procedure of another processing apparatus, for example, a server 3 described later is used.
3, 43 and the nest server 53 correspond.

【0018】RPC処理部20は、クライアント22か
ら要求されたリモートプロシジャコール(RPC)要求
に基づき、他の処理装置3,4,5に対して、プロシジ
ャの実行要求をRPC要求メッセージとして送信する。
また、RPC処理部20は、他の処理装置3,4,5か
らの実行結果を保持するRPC応答メッセージを受信
し、要求元のクライアント22に返す。
The RPC processing unit 20 transmits a procedure execution request to other processing units 3, 4, and 5 as an RPC request message based on a remote procedure call (RPC) request requested from the client 22.
Further, the RPC processing unit 20 receives the RPC response message holding the execution result from the other processing devices 3, 4 and 5, and returns it to the requesting client 22.

【0019】また、RPC処理部20は、図示していな
いが、処理装置2内にサーバが存在してもよく、その場
合、他の処理装置から要求されたRPC要求メッセージ
に基づき自らが存在する処理装置内のサーバを実行し、
その実行結果を依頼元の処理装置に返す。
Although not shown, the RPC processing unit 20 may include a server in the processing device 2, and in that case, the RPC processing unit 20 itself exists based on an RPC request message requested from another processing device. Run the server in the processing unit,
The execution result is returned to the requesting processing device.

【0020】処理装置3は、サーバ33とRPC処理部
30を有している。処理装置4は、サーバ43とRPC
処理部40を有している。サーバ33,43は、多重化
されたプロシジャであるとする。
The processing device 3 has a server 33 and an RPC processing unit 30. The processing device 4 includes the server 43 and the RPC
It has a processing unit 40. It is assumed that the servers 33 and 43 are multiplexed procedures.

【0021】サーバ33,43は、例えば、ユーザによ
り作成,あるいは利用されるユーザプログラム,アプリ
ケーションプログラムであり、他の処理装置2のクライ
アント22からの要求に対して自らの処理を実行し、そ
の実行結果をRPC処理部30,40を介して、呼出元
のクライアント22に返すものである。また、必要に応
じ、処理のために必要な情報の参照を、クライアント2
2と同様に、他の処理装置5のプロシジャに要求する。
The servers 33 and 43 are, for example, user programs and application programs created or used by the user. The servers 33 and 43 execute their own processing in response to a request from the client 22 of another processing apparatus 2 and execute the processing. The result is returned to the calling client 22 via the RPC processing units 30 and 40. If necessary, the client 2 refers to information necessary for processing.
Similarly to 2, the request is made to the procedure of the other processing device 5.

【0022】RPC処理部30,40は、RPC処理部
20と同様の機能を有している。
The RPC processing units 30 and 40 have the same function as the RPC processing unit 20.

【0023】なお、サーバ33,43は、必ずしも、全
く同じ処理を行う完全に複製されたものである必要はな
く、処理が異なるプロシジャであってもよいものであ
る。例えば、Nバージョンプログラミング手法では、異
なるバージョンのプログラムを複数用意し、その実行を
並列に行い、その実行結果を比較し、新規プログラムの
テストを行うが、このときのようにサーバ33,43
は、同じ内容の処理を行うが、若干の処理詳細が異なる
異バージョンのプロシジャであってもよいものである。
It should be noted that the servers 33 and 43 do not necessarily have to be completely duplicated to perform exactly the same processing, but may be procedures having different processing. For example, in the N-version programming method, a plurality of programs of different versions are prepared, their executions are performed in parallel, the execution results are compared, and a new program is tested.
May be different versions of a procedure that performs the same processing but slightly differs in processing details.

【0024】処理装置5は、ネストサーバ53とRPC
処理部50を有している。ネストサーバ53は、サーバ
33,43と同様に、例えば、ユーザにより作成,ある
いは利用されるユーザプログラム,アプリケーションプ
ログラムであり、他の処理装置3,4のサーバからの要
求に対して自らの処理を実行し、その実行結果を呼出元
のサーバに返すものである。また、必要に応じ、処理の
ために必要な情報の参照を、クライアント22と同様
に、他の処理装置のプロシジャに要求してもよいもので
ある。
The processing device 5 includes a nest server 53 and an RPC
It has a processing unit 50. The nest server 53 is, for example, a user program or an application program created or used by a user, similarly to the servers 33 and 43, and performs its own processing in response to a request from a server of another processing device 3 or 4. It executes and returns the execution result to the calling server. Further, as required, the client 22 may request a procedure of another processing device to refer to information necessary for processing as in the case of the client 22.

【0025】RPC処理部50は、RPC処理部20と
同様の機能を有している。
The RPC processor 50 has the same function as the RPC processor 20.

【0026】ネストサーバ53は、単に「サーバ」と称
してもよいが、本実施形態では、サーバ33,43によ
って送信された要求メッセージにしたがって、処理を実
行する際の処理を例にして本発明について説明するた
め、説明上、区別を容易にするため「ネストサーバ」と
呼ぶこととする。
The nest server 53 may be simply referred to as a “server”. In the present embodiment, the nest server 53 performs processing according to the request messages transmitted by the servers 33 and 43 as an example. In order to facilitate the distinction, it will be referred to as a “nest server”.

【0027】サーバ33,43およびネストサーバ53
は、それがどのような内容の処理を行うことができるか
を示す「プロシジャ識別子」によって識別される。プロ
シジャ識別子としては、例えば、プロシジャの名前ある
いはプロシジャの処理内容を一意に識別するための識別
子などを用いることができる。プロシジャ識別子は、1
つのサーバあたり1プロシジャ識別子が対応してもよい
し、1つのサーバあたり複数のプロシジャ識別子が対応
してもよいものである。複数のサーバが同じプロシジャ
識別子を用いてもよいものである。
The servers 33 and 43 and the nest server 53
Is identified by a “procedure identifier” that indicates what kind of processing it can perform. As the procedure identifier, for example, an identifier for uniquely identifying the procedure name or the processing content of the procedure can be used. The procedure identifier is 1
One procedure identifier may correspond to one server, or a plurality of procedure identifiers may correspond to one server. A plurality of servers may use the same procedure identifier.

【0028】なお、本実施形態においては、サーバ3
3,43は、同じプロシジャ識別子を持つものとする。
In this embodiment, the server 3
3, 43 have the same procedure identifier.

【0029】図1における説明では、処理装置2,3,
4,5は、それぞれ、クライアント22,サーバ33,
サーバ43,ネストサーバ53を有しているが、これら
以外のクライアント,サーバ,ネストサーバを有してい
てもよいものである。本実施形態の説明の便宜上、図1
のように図示している。
In the description of FIG. 1, the processing units 2, 3,
4 and 5 are a client 22, a server 33,
It has a server 43 and a nest server 53, but may have other clients, servers and nest servers. For convenience of description of the present embodiment, FIG.
It is illustrated as follows.

【0030】クライアント22,サーバ33,43,ネ
ストサーバ53は、図1においては、それぞれ、異なる
処理装置2,3,4,5内に存在しているが、これらの
うちのいくつかが1つの処理装置内に共存していてもよ
く、また、すべてが1つの処理装置内に存在していても
よいものである。
In FIG. 1, the client 22, the servers 33 and 43, and the nest server 53 are present in different processing units 2, 3, 4, and 5, respectively. They may coexist in a processing device, or all may exist in one processing device.

【0031】ここで、図1に示した矢印を用いて、本実
施形態によるリモートプロシジャコール処理方式におけ
るRPC実行要求時の全体的な流れについて説明する。
クライアント22から発生したRPC要求によって、サ
ーバ33,43が実行され、さらに、それぞれのサーバ
33、43の実行中に発生したRPC要求によって、ネ
ストサーバ53が実行されるという一連のRPC要求の
流れを示している。
Here, the overall flow at the time of an RPC execution request in the remote procedure call processing method according to the present embodiment will be described with reference to the arrows shown in FIG.
The server 33, 43 is executed by the RPC request generated from the client 22, and the nest server 53 is executed by the RPC request generated during execution of each server 33, 43. Is shown.

【0032】処理装置2のクライアント22からサーバ
に対してRPC要求が発行されると(矢印61)、RP
C処理部20は、その処理を実行可能なサーバの処理装
置内のアドレスを取得する。ここでは、サーバ33,4
3が実行可能であるため、RPC処理部20は、各々の
サーバ33,43を有する処理装置3,4のRPC処理
部30,40に対して、RPC要求メッセージを送信す
る(矢印62a,62b)。
When an RPC request is issued from the client 22 of the processing device 2 to the server (arrow 61), the RP
The C processing unit 20 acquires an address in a processing device of a server that can execute the processing. Here, the servers 33 and 4
3 is executable, the RPC processing unit 20 transmits an RPC request message to the RPC processing units 30 and 40 of the processing devices 3 and 4 having the respective servers 33 and 43 (arrows 62a and 62b). .

【0033】ここで、RPC要求メッセージは、クライ
アントからRPC要求が発生したイベントを識別するた
めのイベント識別子やRPC発行数といった情報を含ん
でおり、図3において後述するRPC要求メッセージフ
ォーマットにしたがって送信される。
Here, the RPC request message includes information such as an event identifier for identifying an event in which an RPC request has occurred from the client and the number of issued RPCs, and is transmitted in accordance with an RPC request message format described later with reference to FIG. You.

【0034】各々のRPC要求メッセージを受信した処
理装置3,4のRPC処理部30,40は、メッセージ
付せられたイベント識別子とRPC発行数を記憶したの
ち、サーバを実行する(矢印63a,64b)。
After receiving the RPC request message, the RPC processing units 30, 40 of the processing devices 3, 4 execute the server after storing the event identifier and the number of issued RPCs attached to the messages (arrows 63a, 64b). ).

【0035】各々のサーバ33,43が、さらに別のサ
ーバ(ネストサーバ53)へRPC要求を発行すると
(矢印64a,64b)、RPC処理部30,40は、
記憶しておいたイベント識別子とRPC発行数とをRP
C要求多重メッセージに付加して、RPC要求多重メッ
セージをネストサーバの処理装置5へ送信する(矢印6
5a、65b)。
When each of the servers 33 and 43 issues an RPC request to another server (nest server 53) (arrows 64a and 64b), the RPC processing units 30 and 40
The stored event identifier and the number of issued RPCs are
In addition to the C request multiplex message, the RPC request multiplex message is transmitted to the processing device 5 of the nest server (arrow 6).
5a, 65b).

【0036】RPC要求多重メッセージを受信した処理
装置5において、RPC処理部50は、送られてきたR
PC要求多重メッセージの中から、イベント識別子及び
RPC発行数を基にクライアント22からの同一イベン
トによって発生したRPC要求多重メッセージを判別
し、その中から先着のものを選択して、ネストサーバ5
3を実行する(矢印66)。
In the processing device 5 having received the RPC request multiplex message, the RPC processing unit 50
From the PC request multiplex messages, the RPC request multiplex message generated by the same event from the client 22 is determined based on the event identifier and the number of issued RPCs, and the first one is selected from among them, and the nest server 5
Execute 3 (arrow 66).

【0037】次に、図2を用いて、本実施形態によるリ
モートプロシジャコール処理方式におけるRPC応答時
の全体的な流れについて説明する。図2は、本発明の一
実施形態によるリモートプロシジャコール処理方式を用
いる分散システムの全体構成を示すブロック図である。
Next, an overall flow of an RPC response in the remote procedure call processing method according to the present embodiment will be described with reference to FIG. FIG. 2 is a block diagram showing the overall configuration of a distributed system using the remote procedure call processing method according to one embodiment of the present invention.

【0038】ネストサーバ53の実行結果とそのための
入力引数が、ネストサーバ53のキャッシュ情報とな
り、RPC処理部50に格納される(矢印67)。先着
のもの以外の残りのRPC要求多重メッセージに対して
は、ネストサーバ53は実行されず、RPC処理無50
内の実行結果キャッシュ情報をみて、等しい入力引数が
あれば、その実行結果情報をそのままその実行結果とし
て呼び出し元に返す。等しい入力引数がなければ、その
入力引数を用いてネストサーバ53を実行する。その実
行結果もまたキャッシュ情報となる。ただし、クライア
ント側で発行したRPC発行数分だけのRPC要求多重
メッセージ(同一イベント識別子をもつ)を受信する
と、キャッシュ情報はクリアされる。
The execution result of the nest server 53 and the input argument therefor become cache information of the nest server 53 and are stored in the RPC processing unit 50 (arrow 67). For the remaining RPC request multiplex messages other than the first one, the nest server 53 is not executed and no RPC processing is performed.
If there is an equal input argument in the execution result cache information, the execution result information is directly returned to the caller as the execution result. If there is no equal input argument, the nest server 53 is executed using the input argument. The execution result also becomes cache information. However, when the RPC request multiplex messages (having the same event identifier) are received by the number of RPCs issued on the client side, the cache information is cleared.

【0039】RPC応答メッセージは、呼び出し元のサ
ーバ33,43のRPC処理部30,40に渡され(矢
印68a,68b)、実行中のサーバ33,43に実行
結果が渡される(矢印69a,69b)。
The RPC response message is passed to the RPC processing units 30 and 40 of the calling servers 33 and 43 (arrows 68a and 68b), and the execution result is passed to the servers 33 and 43 that are executing (arrows 69a and 69b). ).

【0040】サーバ33,43の実行結果は、呼び出し
元のクライアント22に返すため、一旦RPC処理部3
0,40に返される(矢印70a,70b)。RPC処
理部30,40は、RPC応答メッセージを作成し、呼
び出し元のクライアント22の処理装置2に返信する
(矢印71a,71b)。
Since the execution results of the servers 33 and 43 are returned to the calling client 22, the RPC processing unit 3
It is returned to 0, 40 (arrows 70a, 70b). The RPC processing units 30 and 40 create an RPC response message and return it to the processing device 2 of the calling client 22 (arrows 71a and 71b).

【0041】RPC処理部20は、それが依頼したRP
C発行数分のRPC応答メッセージを受信し、その中か
らあらかじめ決められた選択手段にて1つを選択し、そ
れをサーバの実行結果としてクライアント22に返す。
なお、キャッシュの情報は、一定時間経過後クリアする
ようにしてもよいものである。
The RPC processing unit 20 sends the RP
The RPC response messages corresponding to the number of issued Cs are received, one of them is selected by a predetermined selecting means, and the selected one is returned to the client 22 as an execution result of the server.
The information in the cache may be cleared after a certain period of time.

【0042】[RPC要求メッセージのフォーマット]
次に、図3を用いて、処理装置2,3,4,5の間で通
信媒体1を介して伝送されるRPC要求メッセージのフ
ォーマットについて説明する。図3は、本発明の一実施
形態によるリモートプロシジャコール処理方式において
伝送されるRPC要求メッセージのフォーマットの説明
図である。
[Format of RPC Request Message]
Next, a format of an RPC request message transmitted between the processing devices 2, 3, 4, and 5 via the communication medium 1 will be described with reference to FIG. FIG. 3 is an explanatory diagram of the format of an RPC request message transmitted in the remote procedure call processing method according to one embodiment of the present invention.

【0043】RPC要求メッセージフォーマット160
は、RPC制御ヘッダ161と、イベント識別子部16
3と、発行数部164と、通番部165と、ユーザデー
タ部166とから構成されている。
RPC request message format 160
Is the RPC control header 161 and the event identifier 16
3, an issue number part 164, a serial number part 165, and a user data part 166.

【0044】RPC制御ヘッダ161は、RPC要求メ
ッセージの送受信の制御に用いられる情報を格納するエ
リアである。RPC要求ヘッダ部161には、RPC要
求で実行を要求する先のサーバのプロシジャ識別子を格
納するエリアである実行要求プロシジャ識別子部162
が含まれている。
The RPC control header 161 is an area for storing information used for controlling transmission and reception of an RPC request message. The RPC request header section 161 has an execution request procedure identifier section 162 which is an area for storing a procedure identifier of a server to which execution is requested by an RPC request.
It is included.

【0045】なお、RPC要求ヘッダ部161には、R
PC要求メッセージの送受信の制御に必要な送信先アド
レス,送信元アドレス,依頼/応答メッセージ識別フラ
グ,エラー検出のための制御コードなどが含まれるが、
本発明と直接関係がないので図示並びに説明は省略す
る。
The RPC request header section 161 includes R
A destination address, a source address, a request / response message identification flag, a control code for error detection, and the like necessary for controlling transmission and reception of the PC request message are included.
Since it has no direct relation to the present invention, illustration and description are omitted.

【0046】イベント識別子部163は、本実施形態に
おいて用いるイベント識別子を格納するエリアである。
発行数部164は、本実施形態において用いるRPC発
行数を格納するエリアである。
The event identifier section 163 is an area for storing an event identifier used in the present embodiment.
The issuance number section 164 is an area for storing the number of issued RPCs used in the present embodiment.

【0047】通番部165は、本実施形態において用い
るRPC要求多重メッセージの発行通番を格納するエリ
アである。ユーザデータ部166は、RPC要求におけ
るプロシジャ実行のための入力引数が格納されるエリア
である。
The serial number section 165 is an area for storing an issue serial number of the RPC request multiplex message used in the present embodiment. The user data section 166 is an area for storing an input argument for executing a procedure in an RPC request.

【0048】[処理装置の内部構成]次に、図4を用い
て、本発明の一実施形態によるリモートプロシジャコー
ル処理方式を用いる分散システムを構成する処理装置の
内部構成について説明する。図4は、本発明の一実施形
態によるリモートプロシジャコール処理方式を用いる分
散システムを構成する処理装置のブロック図である。
[Internal Configuration of Processing Apparatus] Next, an internal configuration of a processing apparatus constituting a distributed system using the remote procedure call processing method according to an embodiment of the present invention will be described with reference to FIG. FIG. 4 is a block diagram of a processing device constituting a distributed system using a remote procedure call processing method according to an embodiment of the present invention.

【0049】図1に示す例においては、各々の処理装置
2,3,4,5内に、コンポーネントソフトウエアであ
るクライアント22,サーバ33,43,ネストサーバ
がそれぞれ独立して有しているものとしていたが、図4
においては、説明の都合上、処理装置2A内には、クラ
イアント22,サーバ23,24,及びネストサーバ2
5が集約して有しているものとする。
In the example shown in FIG. 1, the client 22, the server 33, 43, and the nest server, which are component software, are independently provided in each of the processing units 2, 3, 4, and 5. Figure 4
For convenience of explanation, in the processing device 2A, the client 22, the servers 23 and 24, and the nest server 2
5 are collectively possessed.

【0050】なお、処理装置2Aは、クライアント2
2,ネストサーバ25をそれぞれ1つずつ具備している
様子を示しているが、それぞれ複数を具備していてもよ
いし、また、あるものは具備していなくてもよいもので
ある。
It should be noted that the processing device 2 A
2, a situation is shown in which one nest server 25 is provided, but a plurality of nest servers 25 may be provided, and some may not be provided.

【0051】RPC処理部20Aは、図1に示したRP
C処理部20,30,40,50の各機能を兼ね備えて
いる。RPC処理部20Aは、通信処理部21を有して
いる。通信処理部21は、自己の処理装置2A内のクラ
イアント22とサーバ23,24間とのRPCメッセー
ジの送受信の通信を処理し、また、サーバ23,24と
ネストサーバ25間とのRPCメッセージの送受信の通
信を処理し、さらに、他の処理装置内のクライアントや
サーバやネストサーバとのRPCメッセージの送受信を
行うものである。
The RPC processing section 20A is provided with the RP shown in FIG.
It has each function of the C processing units 20, 30, 40, and 50. The RPC processing unit 20A has a communication processing unit 21. The communication processing unit 21 processes communication for transmitting and receiving RPC messages between the client 22 and the servers 23 and 24 in its own processing device 2A, and transmits and receives RPC messages between the servers 23 and 24 and the nest server 25. And further transmits and receives RPC messages to and from clients, servers and nest servers in other processing devices.

【0052】通信処理部21は、RPCクライアント処
理手段21A,RPCサーバ処理手段21B,21C,
RPCネストサーバ処理手段21Dから構成されてい
る。通信処理部21は、これらのすべての手段を同時に
有している必要はなく、処理装置内でのクライアントの
有無、サーバの有無およびネストサーバの有無に応じて
必要な手段だけを有していればよいものである。
The communication processing unit 21 comprises an RPC client processing unit 21A, RPC server processing units 21B, 21C,
It is composed of an RPC nest server processing means 21D. The communication processing unit 21 does not need to have all of these units at the same time, but may have only the units necessary according to the presence or absence of a client, the presence or absence of a server, and the presence or absence of a nest server in the processing device. It is good.

【0053】RPCクライアント処理手段21Aは、図
1に示したRPC処理部20内の処理機能に対応してい
る。RPCクライアント処理手段21Aは、クライアン
ト22からのRPC要求を代行してRPC要求メッセー
ジを送信し、それに対応する応答メッセージを受信する
処理を行うものである。その詳細については、図6を用
いて後述する。
The RPC client processing means 21A corresponds to the processing function in the RPC processing section 20 shown in FIG. The RPC client processing means 21A performs a process of transmitting an RPC request message on behalf of an RPC request from the client 22, and receiving a response message corresponding to the RPC request message. The details will be described later with reference to FIG.

【0054】RPCサーバ処理手段21Bは、図1に示
したRPC処理部30内の処理機能に対応している。R
PCサーバ処理手段21Bは、サーバ23に対するRP
C要求メッセージを処理するとともにサーバ23からの
ネストサーバ25に対するRPC要求を代行してRPC
要求多重メッセージを送信し、それに対応する応答メッ
セージを受信する処理を行うものである。その詳細につ
いては、図9及び図12を用いて後述する。
The RPC server processing means 21B corresponds to the processing function in the RPC processing section 30 shown in FIG. R
The PC server processing means 21 B
C request message and the RPC request from the server 23 to the nest server 25
A process for transmitting a request multiplex message and receiving a corresponding response message is performed. The details will be described later with reference to FIGS. 9 and 12.

【0055】RPCサーバ処理手段21Cは、図1に示
したRPC処理部40内の処理機能に対応してものであ
る。RPCサーバ処理手段21Cは、サーバ24に対す
るRPC要求メッセージを処理するとともにサーバ24
からのネストサーバ25に対するRPC要求を代行して
RPC要求多重メッセージを送信し、それに対応する応
答メッセージを受信する処理を行うものである。
The RPC server processing means 21C corresponds to the processing function in the RPC processing section 40 shown in FIG. The RPC server processing means 21C processes the RPC request message to the server 24 and
The RPC request to the nest server 25 from the server is transmitted on behalf of the RPC request multiplex message, and the corresponding response message is received.

【0056】RPCネストサーバ処理手段21Dは、図
1に示したRPC処理部50内の処理機能に対応しても
のである。RPCネストサーバ処理手段21Dは、ネス
トサーバに対するRPC要求多重メッセージを処理する
ものである。その詳細については、図14を用いて後述
する。
The RPC nest server processing means 21D corresponds to the processing function in the RPC processing section 50 shown in FIG. The RPC nest server processing means 21D processes an RPC request multiplex message to the nest server. The details will be described later with reference to FIG.

【0057】さらに、RPC処理部20Aは、各管理テ
ーブルとして、アドレステーブル100,送信情報テー
ブル110,送受信情報テーブル120,ネストプロシ
ジャ管理テーブル130,実行結果キャッシュテーブル
140,入出力対応テーブル150を備えている。
Further, the RPC processing unit 20A includes an address table 100, a transmission information table 110, a transmission / reception information table 120, a nest procedure management table 130, an execution result cache table 140, and an input / output correspondence table 150 as respective management tables. I have.

【0058】アドレステーブル100は、サーバ23,
24のアドレスを管理する。送信情報テーブル110
は、送信したRPC要求メッセージの情報を管理する。
送受信情報テーブル120は、RPC要求多重メッセー
ジ識別情報を管理する。ネストプロシジャ管理テーブル
130は、ネストサーバ25の呼び出しを管理する。実
行結果キャッシュテーブル140は、RPC要求多重メ
ッセージの受信情報を管理する。入力出力対応テーブル
150は、キャッシュ情報の詳細を管理する。
The address table 100 is stored in the server 23,
24 addresses are managed. Transmission information table 110
Manages information of the transmitted RPC request message.
The transmission / reception information table 120 manages RPC request multiplex message identification information. The nest procedure management table 130 manages the call of the nest server 25. The execution result cache table 140 manages the reception information of the RPC request multiplex message. The input / output correspondence table 150 manages details of the cache information.

【0059】アドレステーブル100及び送信情報テー
ブル110は、RPCクライアント処理に用いるテーブ
ルであり、図1に示したRPC処理部20内の処理機能
に対応している。アドレステーブル100は、RPC要
求によって要求された処理を実行可能なサーバアドレス
情報を保持するためのテーブルである。その詳細につい
ては、図7を用いて後述する。送信情報テーブル110
は、送信したRPC要求メッセージの情報を保持するた
めのテーブルである。その詳細については、図8を用い
て後述する。
The address table 100 and the transmission information table 110 are tables used for the RPC client processing, and correspond to the processing functions in the RPC processing unit 20 shown in FIG. The address table 100 is a table for holding server address information capable of executing a process requested by an RPC request. The details will be described later with reference to FIG. Transmission information table 110
Is a table for holding information of the transmitted RPC request message. The details will be described later with reference to FIG.

【0060】送受信情報テーブル120及びネストプロ
シジャ管理テーブル130は、RPCサーバ処理に用い
るテーブルであり、図1に示したRPC処理部30,4
0内の処理機能に対応している。送受信情報テーブル1
20は、受信したRPC要求メッセージの情報を保持す
るためのテーブルである。その詳細については、図10
を用いて後述する。ネストプロシジャ管理テーブル13
0は、RPC要求メッセージによって処理を開始したサ
ーバが、その処理の中で要求したRPC要求に関する情
報を保持するテーブルである。その詳細については、図
11を用いて後述する。
The transmission / reception information table 120 and the nest procedure management table 130 are tables used for the RPC server processing, and are the RPC processing units 30 and 4 shown in FIG.
0 corresponds to the processing function. Transmission / reception information table 1
Reference numeral 20 denotes a table for holding information of the received RPC request message. For details, see FIG.
Will be described later. Nest procedure management table 13
0 is a table that holds information on the RPC request requested by the server that has started the process in response to the RPC request message in the process. The details will be described later with reference to FIG.

【0061】実行結果キャッシュテーブル140,入出
力対応テーブル150は、RPCネストサーバ処理に用
いるテーブルであり、図1に示したRPC処理部50内
の処理機能に対応している。実行結果キャッシュテーブ
ル140は、ネストサーバ25側のネストサーバ処理手
段21Dが、受信するRPC要求メッセージの中からR
PC要求多重メッセージを判別するとともに、その受信
数およびキャッシュ情報を管理するためのテーブルであ
り、その詳細については、図15を用いて後述する。入
出力対応テーブル150は、キャッシュ情報を格納する
ためのテーブルであり、RPC要求多重メッセージの入
力に対するネストサーバ実行結果を管理するためのテー
ブルであり、その詳細については、図16を用いて後述
する。次に、図5〜図16を用いて、図2及び図3に示
したRPC処理の流れに沿って、各部の動作及び各テー
ブルの構成について説明する。
The execution result cache table 140 and the input / output correspondence table 150 are tables used for the RPC nest server processing, and correspond to the processing functions in the RPC processing unit 50 shown in FIG. The execution result cache table 140 stores an RPC request message from the RPC request message received by the nest server processing unit 21D on the nest server 25 side.
This is a table for determining the PC request multiplex message and managing the number of received PC messages and the cache information, the details of which will be described later with reference to FIG. The input / output correspondence table 150 is a table for storing cache information, and is a table for managing a nest server execution result in response to the input of the RPC request multiplex message. The details will be described later with reference to FIG. . Next, the operation of each unit and the configuration of each table will be described with reference to FIGS. 5 to 16 in accordance with the flow of the RPC process shown in FIGS.

【0062】[クライアントの処理]クライアント22
は、既に説明した通り、処理のために必要な情報の参照
を、必要に応じてサーバに要求するものである。
[Client Processing] Client 22
Requests the server to refer to information necessary for processing as necessary, as described above.

【0063】ここで、図5を用いて、本発明の一実施形
態によるクライアントのRPC要求処理の概要について
説明する。図5は、本発明の一実施形態によるクライア
ントのRPC要求処理を示したPAD図である。
Here, the outline of the client RPC request processing according to the embodiment of the present invention will be described with reference to FIG. FIG. 5 is a PAD diagram showing an RPC request process of a client according to an embodiment of the present invention.

【0064】ステップ201において、クライアント2
2は、自らの処理中、処理のために必要な情報の参照を
サーバに依頼する必要が生じると、その要求をRPC要
求として発行する。ここでは、多重化されているサーバ
23,24に対して、クライアント22は、RPC要求
を発行するものとする。
In step 201, the client 2
When the server 2 needs to request the server to refer to information necessary for the processing during its own processing, the server 2 issues the request as an RPC request. Here, it is assumed that the client 22 issues an RPC request to the multiplexed servers 23 and 24.

【0065】そのRPC要求は、RPC処理部20Aを
介して目的とするサーバ23,24内でそれぞれ処理さ
れる。サーバ23,24内の処理については、図11を
用いて後述する。
The RPC request is processed in the target servers 23 and 24 via the RPC processing unit 20A. The processing in the servers 23 and 24 will be described later with reference to FIG.

【0066】ステップ202において、クライアント2
2は、その実行結果をRPC処理部20Aを介して受け
取る。
In step 202, the client 2
2 receives the execution result via the RPC processing unit 20A.

【0067】その後、自らの処理を続行する。Thereafter, its own processing is continued.

【0068】[RPCクライアント通信処理手段の処
理]次に、図6を用いて、通信処理部のRPCクライア
ント処理手段がクライアントからRPC要求を受け付け
た際に行う処理について説明する。図6は、本発明の一
実施形態による通信処理部のRPCクライアント処理手
段の処理の一例を示したPAD図である。なお、ステッ
プ211〜215は、RPC要求メッセージ送信時の処
理であり、ステップ216〜218は、RPC応答メッ
セージ受信時の処理である。
[Process of RPC Client Communication Processing Unit] Next, a process performed when the RPC client processing unit of the communication processing unit receives an RPC request from a client will be described with reference to FIG. FIG. 6 is a PAD showing an example of the processing of the RPC client processing means of the communication processing unit according to an embodiment of the present invention. Steps 211 to 215 are processing when transmitting an RPC request message, and steps 216 to 218 are processing when receiving an RPC response message.

【0069】ステップ211において、通信処理部21
のRPCクライアント処理手段21Aは、クライアント
22からのRPC要求を受け付ける。このとき、通信処
理部21のRPCクライアント処理手段21Aには、ク
ライアント22が処理要求するサーバ23,24のプロ
シジャ識別子と、その処理実行に必要なプロシジャ入力
引数が渡される。
In step 211, the communication processing unit 21
The RPC client processing means 21A receives an RPC request from the client 22. At this time, the procedure identifiers of the servers 23 and 24 requested by the client 22 for processing and the procedure input arguments necessary for executing the processing are passed to the RPC client processing unit 21A of the communication processing unit 21.

【0070】ステップ212において、通信処理部21
のRPCクライアント処理手段21Aは、アドレステー
ブル100を用いてその要求を実行可能なサーバ23,
24のアドレスを取得する。サーバが、他の処理装置内
にある場合には、その処理装置のアドレスを取得する。
実行可能なサーバ若しくは、実行可能なサーバを有する
他の処理装置が複数あった場合には、そのすべてのアド
レスを取得する。
In step 212, the communication processing unit 21
RPC client processing means 21A of the server 23 capable of executing the request using the address table 100,
24 addresses are obtained. If the server is in another processing device, the server acquires the address of that processing device.
When there are a plurality of executable servers or other processing apparatuses having the executable servers, all the addresses are acquired.

【0071】ここで、図7を用いて、アドレステーブル
100の構成について説明する。図7は、本発明の一実
施形態によるRPC処理部の中のアドレステーブルの構
成図である。
Here, the configuration of the address table 100 will be described with reference to FIG. FIG. 7 is a configuration diagram of an address table in the RPC processing unit according to an embodiment of the present invention.

【0072】アドレステーブル100は、RPC要求に
よって要求された処理を実行可能なサーバアドレス情報
を保持するためのテーブルである。アドレステーブル1
00は、プロシジャ識別子部101とアドレス部102
とから構成されている。
The address table 100 is a table for holding server address information capable of executing a process requested by an RPC request. Address table 1
00 is the procedure identifier 101 and the address 102
It is composed of

【0073】プロシジャ識別子部101には、サーバの
処理可能内容を表わすプロシジャ識別子が格納される。
アドレス部102には、そのサーバのアドレスが格納さ
れる。図7に示す例では、「QSORT」という処理
は、アドレス「133.144.8.176:600
1」と「133.144.8.159:6002」とで
与えられる2つのサーバで実行可能であることを示して
いる。また、「MYSWAP」という処理は、アドレス
「133.144.8.167:6004」で与えられ
るサーバで実行可能であることを示している。
The procedure identifier section 101 stores a procedure identifier representing the processable contents of the server.
The address section 102 stores the address of the server. In the example illustrated in FIG. 7, the process “QSORT” is performed at the address “133.144.8.176:600”.
1 "and" 133.144.8.159:6002 ". In addition, it indicates that the process "MYSWAP" can be executed by the server given by the address "133.144.8.167:6004".

【0074】ステップ213において、通信処理部21
のRPCクライアント処理手段21Aは、イベント識別
子を取得する。イベント識別子は、既に説明したとお
り、例えば、処理装置番号とイベント発生時刻とを対と
する識別子であって、クライアントからのRPC要求イ
ベントを一意に識別したり、RPC要求メッセージに付
加すればそのRPC要求の発生イベントを一意に特定す
ることができる。
At step 213, the communication processing unit 21
The RPC client processing unit 21A acquires an event identifier. As described above, the event identifier is, for example, an identifier that pairs a processing device number and an event occurrence time, and uniquely identifies an RPC request event from a client or adds the RPC request event to an RPC request message. A request occurrence event can be uniquely specified.

【0075】ステップ214において、通信処理部21
のRPCクライアント処理手段21Aは、図3に示した
RPC要求メッセージフォーマット160にしたがっ
て、RPC要求メッセージを作成する。このとき、RP
C制御ヘッダ部161には、RPC要求メッセージの送
受信制御に必要な情報を格納し、実行要求プロシジャ識
別子部162には、クライアント22から渡されたプロ
シジャ識別子を格納する。イベント識別子部163に
は、ステップ213で取得したイベント識別子を格納
し、発行数部164には、ステップ212で取得したサ
ーバの数を格納する。ユーザデータ部166には、クラ
イアントから渡されたプロシジャ入力引数を格納する。
このとき、通番部165には、何も格納しなくてよいも
のである。
At step 214, the communication processing unit 21
The RPC client processing means 21A creates an RPC request message according to the RPC request message format 160 shown in FIG. At this time, RP
The C control header section 161 stores information necessary for controlling the transmission and reception of the RPC request message, and the execution request procedure identifier section 162 stores the procedure identifier passed from the client 22. The event identifier acquired in step 213 is stored in the event identifier 163, and the number of servers acquired in step 212 is stored in the issued number unit 164. The user data section 166 stores the procedure input argument passed from the client.
At this time, nothing needs to be stored in the serial number part 165.

【0076】ステップ215において、ステップ214
で作成したRPC要求メッセージを、ステップ212で
取得したすべてのサーバを有する処理装置に対して送信
する。例えば、図7に示した「QSORT」という処理
に対しては、2つのサーバ23,24が実行可能であ
り、サーバ23,24は、自処理装置2A内にあるた
め、実際には、RPCサーバ処理手段21B,21Cに
送信することになる。
In step 215, step 214
The RPC request message created at step 212 is transmitted to the processing device having all servers acquired at step 212. For example, for the process "QSORT" shown in FIG. 7, two servers 23 and 24 can be executed, and the servers 23 and 24 are in the own processing device 2A. This is transmitted to the processing means 21B and 21C.

【0077】また、送信情報は、送信情報テーブル11
0に格納される。ここで、図8を用いて、送信情報テー
ブル110の構成について説明する。図8は、本発明の
一実施形態によるRPC処理部の中の送信情報テーブル
の構成図である。
The transmission information is stored in the transmission information table 11
0 is stored. Here, the configuration of the transmission information table 110 will be described with reference to FIG. FIG. 8 is a configuration diagram of a transmission information table in the RPC processing unit according to an embodiment of the present invention.

【0078】送信情報テーブル110は、送信したRP
C要求メッセージの情報を保持するためのテーブルであ
る。送信情報テーブル110は、要求プロシジャ識別子
部111と、イベント識別子部112と、RPC発行数
部113とから構成される。
The transmission information table 110 stores the transmitted RP
It is a table for holding information of a C request message. The transmission information table 110 includes a request procedure identifier unit 111, an event identifier unit 112, and an RPC issuance number unit 113.

【0079】要求プロシジャ識別子部111には、送信
したRPC要求メッセージで処理要求するサーバのプロ
シジャ識別子が格納される。即ち、図8に示すように、
例えば、「QSORT」が格納される。
The request procedure identifier section 111 stores the procedure identifier of the server that requests processing in the transmitted RPC request message. That is, as shown in FIG.
For example, “QSORT” is stored.

【0080】イベント識別子部112には、送信したR
PC要求メッセージに付せられたイベント識別子が格納
される。イベント識別子とは、クライアントがRPC要
求を発行したというイベントをサーバ側が一意に識別す
るためのもので、これをRPC要求メッセージに付加す
ると、これを受信した受信側は多重メッセージの判別が
可能となる。すなわち、あるクライアントからのRPC
要求によって、例えば,多重化サーバが起動され、その
多重化サーバからのRPC要求を受け取るサーバ(ネス
トサーバ)では、そのイベント識別子によって、受信す
るRPC要求の中から多重メッセージを(これを「RP
C要求多重メッセージ」と称する)判別できる。イベン
ト識別子には、例えば、処理装置番号とイベント発生時
刻を組み合わせた数値等を用いることができる。図8に
示す例では、イベント識別子として、「960419:
123215:0001」が格納され、これは、「イベ
ント発生時刻(年月日):クライアントの装置番号+プ
ログラム番号:通番」から構成されている。イベント識
別子としては、各々の受信者がそれぞれ一意に識別可能
なものであれば、何を用いてもよいものである。
The event identifier 112 contains the transmitted R
The event identifier attached to the PC request message is stored. The event identifier is used by the server to uniquely identify an event in which the client has issued an RPC request. When the event identifier is added to the RPC request message, the receiving side that has received the RPC request message can determine a multiplex message. . That is, RPC from a client
In response to the request, for example, a multiplexing server is started, and a server (nest server) that receives an RPC request from the multiplexing server transmits a multiplexed message from the received RPC request (this is referred to as “RP
C request multiplex message ”). As the event identifier, for example, a numerical value obtained by combining the processing device number and the event occurrence time can be used. In the example shown in FIG. 8, "960419:
123215: 0001 ”, which is composed of“ event occurrence time (year, month, day): client device number + program number: serial number ”. Any event identifier may be used as long as each recipient can be uniquely identified.

【0081】RPC発行数部113には、送信したRP
C要求多重メッセージに付せられたRPC発行数が格納
される。図8に示す例では、RPC発行数として、
「2」が格納される。これは、「QSORT」という処
理が、「2」のサーバに対して実行要求されたことを示
している。
The RPC issuance number unit 113 stores the transmitted RP
The number of issued RPCs attached to the C request multiplex message is stored. In the example shown in FIG. 8, the number of issued RPCs is
“2” is stored. This indicates that the execution of the process “QSORT” has been requested to the server “2”.

【0082】このように、送信情報テーブル110で
は、送信したRPC要求メッセージ毎に1行が使用さ
れ、そのメッセージによって実行したサーバの実行結果
を応答メッセージとして受信したときにその情報はクリ
アされる。
As described above, in the transmission information table 110, one line is used for each transmitted RPC request message, and the information is cleared when the execution result of the server executed by the message is received as a response message.

【0083】なお、ステップ216〜218は、RPC
応答メッセージの受信時の処理であり、これらの処理に
ついては、後述する。
Steps 216 to 218 are based on the RPC
This is the process when the response message is received, and these processes will be described later.

【0084】[サーバ処理手段の受信時の処理]すでに
説明したとおり、サーバ23,24は、クライアント2
2からの要求によって実行されるとともに、必要に応じ
自らの処理の中で別のサーバ(ネストサーバ)の実行を
要求してもよいものである。RPCサーバ処理手段21
B,21Cは、クライアント22からの要求によってサ
ーバ23,24を実行する際のRPC受信処理と、サー
バ23,24が別のサーバ(ネストサーバ25)の実行
を要求した際にそのRPC送信処理を行うものである。
[Processing at the time of reception by server processing means] As described above, the servers 23 and 24
2 and may request execution of another server (nest server) in its own processing if necessary. RPC server processing means 21
B and 21C perform RPC reception processing when executing servers 23 and 24 in response to a request from client 22 and RPC transmission processing when servers 23 and 24 request execution of another server (nest server 25). Is what you do.

【0085】まず、クライアントからの要求によってサ
ーバを実行する際のRPC受信処理について説明する。
図9を用いて、通信処理部のRPCサーバ処理手段がR
PCクライアント処理手段からRPC要求を受け付けた
際に行う処理について説明する。図9は、本発明の一実
施形態による通信処理部のRPCサーバ処理手段の受信
時の処理の一例を示したPAD図である。
First, an RPC reception process when executing a server in response to a request from a client will be described.
Referring to FIG. 9, the RPC server processing means of the communication processing unit is R
Processing performed when an RPC request is received from the PC client processing means will be described. FIG. 9 is a PAD diagram showing an example of processing at the time of reception by the RPC server processing means of the communication processing unit according to an embodiment of the present invention.

【0086】ステップ221において、通信処理部21
のRPCサーバ処理手段21B,21Cは、RPC要求
メッセージを受信する。
In step 221, the communication processing unit 21
RPC server processing means 21B and 21C receive the RPC request message.

【0087】ステップ222において、通信処理部21
のRPCサーバ処理手段21B,21Cは、RPC要求
メッセージに付加された要求プロシジャ識別子およびイ
ベント識別子およびRPC発行数の値を、それぞれ送受
信情報テーブル120の要求プロシジャ識別子部12
1,イベント識別子部122,RPC発行数部123に
書き込む。
In step 222, the communication processing unit 21
The RPC server processing means 21B, 21C of the RPC request message stores the request procedure identifier, the event identifier and the value of the number of issued RPCs added to the RPC request message in the request procedure identifier section 12 of the transmission / reception information table 120, respectively.
1, the event identifier section 122 and the RPC issue number section 123 are written.

【0088】ここで、図10を用いて、送受信情報テー
ブルの構成について説明する。図10は、本発明の一実
施形態によるRPC処理部の中の送受信情報テーブルの
構成図である。
Here, the configuration of the transmission / reception information table will be described with reference to FIG. FIG. 10 is a configuration diagram of a transmission / reception information table in the RPC processing unit according to an embodiment of the present invention.

【0089】送受信情報テーブル120は、受信したR
PC要求メッセージの情報を保持するためのテーブルで
ある。RPC処理部20Aは、1つの送受信情報テーブ
ルを具備する。送受信情報テーブル120は、要求プロ
シジャ識別子部121と,イベント識別子部122と,
RPC発行数部123と,ネストプロシジャ管理テーブ
ル管理部124とから構成される。
The transmission / reception information table 120 stores the received R
It is a table for holding information of a PC request message. The RPC processing unit 20A has one transmission / reception information table. The transmission / reception information table 120 includes a request procedure identifier section 121, an event identifier section 122,
It is composed of an RPC issue number unit 123 and a nest procedure management table management unit 124.

【0090】要求プロシジャ識別子部121には、受信
したRPC要求メッセージで処理要求されたプロシジャ
識別子が格納される。イベント識別子部122には、受
信したRPC要求メッセージに付せられたイベント識別
子が格納される。
The request procedure identifier section 121 stores the procedure identifier requested to be processed by the received RPC request message. The event identifier 122 stores an event identifier attached to the received RPC request message.

【0091】RPC発行数部123には、受信したRP
C要求多重メッセージに付せられたRPC発行数が格納
される。ネストプロシジャ管理テーブル管理部124に
は、ネストプロシジャ管理テーブル130のアドレスが
格納される。
The RPC issuance number section 123 contains the received RP
The number of issued RPCs attached to the C request multiplex message is stored. The nest procedure management table management unit 124 stores the address of the nest procedure management table 130.

【0092】ネストプロシジャ管理テーブル130は、
サーバからネストサーバに実行要求される時に使用され
る管理テーブルであり、その詳細については、図13を
用いて後述する。
The nest procedure management table 130 is
This is a management table used when an execution request is issued from the server to the nest server, the details of which will be described later with reference to FIG.

【0093】図10に示す例では、「QSORT」とい
う処理を要求するRPC要求メッセージを受け取り、そ
のメッセージは「960419:123215:000
1」で識別されるイベントによって発生したものであ
り、そのイベントによって「2つ」のRPC要求メッセ
ージが送信されている。
In the example shown in FIG. 10, an RPC request message requesting the process “QSORT” is received, and the message is “960419: 123215: 000”.
This is caused by the event identified by “1”, and “two” RPC request messages are transmitted by the event.

【0094】さらに、そのサーバの実行中に呼び出した
RPCに関する情報は、「0x00200000」番地
のネストプロシジャ管理テーブル130に格納されてい
る。
Further, information on the RPC called during the execution of the server is stored in the nested procedure management table 130 at the address “0x00200000”.

【0095】このように、送受信情報テーブル120で
は、受信したRPC要求メッセージ毎に1行が使用さ
れ、そのメッセージによって実行したサーバの実行結果
を応答メッセージとして送信したときにその情報はクリ
アされる。
As described above, in the transmission / reception information table 120, one line is used for each received RPC request message, and the information is cleared when the execution result of the server executed by the message is transmitted as a response message.

【0096】次に、ステップ223において、通信処理
部21のRPCサーバ処理手段21B,21Cは、要求
されたサーバを実行する。
Next, in step 223, the RPC server processing means 21B and 21C of the communication processing unit 21 execute the requested server.

【0097】ステップ224において、サーバの実行が
終了すると、通信処理部21のRPCサーバ処理手段2
1B,21Cは、その実行結果を受け取る。
In step 224, when the execution of the server is completed, the RPC server processing unit 2 of the communication processing unit 21
1B and 21C receive the execution result.

【0098】ステップ225において、通信処理部21
のRPCサーバ処理手段21B,21Cは、その実行結
果を付加したRPC応答メッセージを作成する。
In step 225, the communication processing unit 21
RPC server processing means 21B and 21C create an RPC response message to which the execution result is added.

【0099】次に、ステップ226において、通信処理
部21のRPCサーバ処理手段21B,21Cは、依頼
元のクライアントに対してRPC応答メッセージを送信
する。
Next, in step 226, the RPC server processing means 21B, 21C of the communication processing unit 21 transmits an RPC response message to the requesting client.

【0100】ステップ227において、通信処理部21
のRPCサーバ処理手段21B,21Cは、送受信情報
テーブル120の要求識別子部121,イベント識別子
部122,RPC発行数部123に格納されている情報
をクリアする。
In step 227, the communication processing unit 21
The RPC server processing units 21B and 21C clear information stored in the request identifier unit 121, the event identifier unit 122, and the RPC issue number unit 123 of the transmission / reception information table 120.

【0101】さらに、ステップ228において、通信処
理部21のRPCサーバ処理手段21B,21Cは、ネ
ストプロシジャ管理テーブル管理部124にネストプロ
シジャ管理テーブルのアドレスが格納されている場合に
は、そのアドレス情報をクリアするとともに、ネストプ
ロシジャ管理テーブル内の情報をすべてクリアする。
Further, in step 228, if the address of the nest procedure management table is stored in the nest procedure management table management section 124, the RPC server processing means 21B, 21C of the communication processing section 21 stores the address information. Clear and clear all the information in the nested procedure management table.

【0102】[サーバの処理]次に、図11を用いて、
RPC要求によってサーバが実行されるときのサーバの
処理について説明する。図11は、本発明の一実施形態
による処理装置内のサーバの処理内容を示すPAD図で
ある。
[Process of Server] Next, referring to FIG.
The processing of the server when the server is executed by the RPC request will be described. FIG. 11 is a PAD showing the processing contents of the server in the processing device according to the embodiment of the present invention.

【0103】サーバ23,24は、クライアントあるい
はサーバからの要求に対して自らの処理を実行し、その
実行結果をRPC処理部を介して呼出元のクライアント
に返すものである。また、必要に応じ、処理のために必
要な情報の参照を、クライアント22と同様に、他のサ
ーバ(ネストサーバ25)に要求してもよいものであ
る。
The servers 23 and 24 execute their own processing in response to a request from the client or the server, and return the execution result to the calling client via the RPC processing unit. Further, if necessary, other servers (nest servers 25) may be requested to refer to information necessary for processing, similarly to the client 22.

【0104】ステップ231において、サーバ23,2
4は、RPC要求メッセージを受信したRPC処理部の
RPCサーバ処理手段21B,21Cからのサーバ実行
要求を受け付ける。
In step 231, the servers 23, 2
4 receives a server execution request from the RPC server processing units 21B and 21C of the RPC processing unit that has received the RPC request message.

【0105】ステップ232において、自らの処理を実
行する。
At step 232, its own process is executed.

【0106】実行終了まで(ステップ233)、ステッ
プ234において、サーバ23,24は、処理を実行す
る。
Until the execution is completed (step 233), in step 234, the servers 23 and 24 execute the processing.

【0107】ステップ235において、サーバ23,2
4は、その処理の中で他のサーバ(ネストサーバ25)
に対して何らかの情報の参照を行う必要が生じ、RPC
要求があった否かを判断する。
At step 235, the servers 23, 2
4 is another server (nest server 25) in the processing.
It is necessary to refer to some information for
Determine whether there is a request.

【0108】RPC要求があると、ステップ236にお
いて、サーバ23,24は、RPC要求を発行する。
If there is an RPC request, in step 236, the servers 23 and 24 issue an RPC request.

【0109】そして、ステップ237において、サーバ
23,24は、その実行結果を受けとる。
Then, in step 237, the servers 23 and 24 receive the execution results.

【0110】そして、ステップ233において、サーバ
23,24は、必要ならば、再度自らの処理の実行を開
始する。
In step 233, if necessary, the servers 23 and 24 start executing their own processes again.

【0111】ステップ238において、サーバ23,2
4は、サーバの実行が終了する際には、その実行結果を
RPC処理部20Aの通信処理部21のサーバ処理手段
21B,21Cに渡す。
At step 238, the servers 23, 2
When the execution of the server ends, the server 4 passes the execution result to the server processing units 21B and 21C of the communication processing unit 21 of the RPC processing unit 20A.

【0112】このように、サーバ23,24は、自らの
処理の中で、別のサーバに対してRPCを何度発行して
もよいものである。
As described above, the servers 23 and 24 may issue any number of RPCs to another server during their own processing.

【0113】[サーバ処理手段の送信時の処理]図11
のステップ236において説明したように、サーバ2
3,24が、その処理の中で他のサーバ(ネストサーバ
25)に対して何らかの情報の参照を行う必要が生じ、
RPC要求があると、RPC要求を発行する。RPC要
求の発行処理は、サーバ処理手段21B,21Cによっ
て行われる。
[Processing at the time of transmission by server processing means] FIG.
Server 2 as described in step 236 of FIG.
3, 24 need to refer to some information to another server (nest server 25) during the processing,
If there is an RPC request, it issues an RPC request. The process of issuing the RPC request is performed by the server processing units 21B and 21C.

【0114】そこで、図12を用いて、通信処理部のR
PCサーバ処理手段がRPC要求に応じてRPC要求メ
ッセージを送信する際に行う処理について説明する。図
12は、本発明の一実施形態による通信処理部のRPC
サーバ処理手段の送信時の処理の一例を示したPAD図
である。
Therefore, referring to FIG.
A process performed by the PC server processing unit when transmitting an RPC request message in response to an RPC request will be described. FIG. 12 is a diagram illustrating the RPC of the communication processing unit according to an embodiment of the present invention.
FIG. 9 is a PAD diagram showing an example of processing at the time of transmission by a server processing means.

【0115】ステップ241において、通信処理部21
のサーバ処理手段21B,21Cは、サーバ23,24
の実行中に、サーバ23,24が、さらに別のサーバ
(ネストサーバ25)に対してRPC要求を発行した場
合、そのRPC要求を受け付ける。
In step 241, the communication processing unit 21
Server processing means 21B, 21C
If the server 23 or 24 issues an RPC request to another server (nest server 25) during the execution of, the RPC request is accepted.

【0116】このとき、通信処理部21のサーバ処理手
段21B,21Cには、サーバ23,24が処理要求す
るネストサーバ25のプロシジャ識別子とその処理実行
に必要なプロシジャ入力引数が渡される。
At this time, the procedure identifiers of the nest server 25 requested by the servers 23 and 24 for processing and the procedure input arguments necessary for executing the processing are passed to the server processing means 21B and 21C of the communication processing unit 21.

【0117】ステップ242において、通信処理部21
のサーバ処理手段21B,21Cは、アドレステーブル
100を用いて、その要求を実行可能なネストサーバの
アドレスを取得する。
At step 242, the communication processing unit 21
The server processing means 21B, 21C of the above uses the address table 100 to acquire the address of the nest server that can execute the request.

【0118】ステップ243において、通信処理部21
のサーバ処理手段21B,21Cは、図10に示した送
受信情報テーブル120の自分自身のサーバ23,24
のプロシジャ識別子に対応するネストプロシジャ管理テ
ーブル管理部124内のアドレスで与えられるネストプ
ロシジャ管理テーブル130を検索する。
At step 243, the communication processing unit 21
Server processing means 21B, 21C of the own server 23, 24 of the transmission / reception information table 120 shown in FIG.
The nested procedure management table 130 given by the address in the nested procedure management table management unit 124 corresponding to the procedure identifier is searched.

【0119】ここで、図13を用いて、ネストプロシジ
ャ管理テーブル130の構成について説明する。図13
は、本発明の一実施形態によるRPC処理部の中のネス
トプロシジャ管理テーブルの構成図である。
Here, the configuration of the nest procedure management table 130 will be described with reference to FIG. FIG.
FIG. 6 is a configuration diagram of a nest procedure management table in the RPC processing unit according to an embodiment of the present invention.

【0120】ネストプロシジャ管理テーブル130は、
RPC要求メッセージによって処理を開始したサーバ
が、その処理の中で要求したRPC要求に関する情報を
保持するテーブルである。
The nest procedure management table 130 is
9 is a table that holds information on an RPC request requested by a server that has started processing by an RPC request message during the processing.

【0121】RPC処理部20Aは、複数のネストプロ
シジャ管理テーブルを具備する。ネストプロシジャ管理
テーブルは、ある固定数分あらかじめ用意され必要時に
そこから取得するようにしてもよいが、必要になったと
きに動的にメモリを確保しテーブルを作成してもよいも
のである。
The RPC processor 20A has a plurality of nest procedure management tables. The nest procedure management table may be prepared in advance for a certain fixed number and acquired from the table when necessary. Alternatively, the table may be created by dynamically allocating memory when necessary.

【0122】ネストプロシジャ管理テーブル130は、
ネストプロシジャ識別子部131と,アドレス部132
と,通番部133とによって構成される。
The nest procedure management table 130 is
Nest procedure identifier section 131 and address section 132
And a serial number 133.

【0123】ネストプロシジャ識別子部131には、R
PC要求メッセージによって処理を開始したサーバ2
3,24が、その処理の中でRPC要求した処理を実行
可能なサーバ(ネストサーバ25)のプロシジャ識別子
(以下、「ネストプロシジャ識別子」と称する)を格納
する。
In the nested procedure identifier 131, R
Server 2 that started processing by PC request message
3 and 24 store the procedure identifier (hereinafter, referred to as “nest procedure identifier”) of the server (nest server 25) that can execute the process requested by the RPC in the process.

【0124】アドレス部132には、そのネストサーバ
25のアドレスを格納する。通番部133には、そのネ
ストサーバ25を呼び出した回数を示す通番を格納す
る。1回のサーバ実行に対して、複数回同じネストサー
バの処理が要求されることがある。通番は、1回のサー
バ実行に対してカウントが開始され、そのサーバの実行
が終わるとクリアされる。
The address of the nest server 25 is stored in the address section 132. The serial number unit 133 stores a serial number indicating the number of times the nest server 25 has been called. The same nested server process may be required a plurality of times for one server execution. The serial number starts counting for one server execution, and is cleared when the execution of the server ends.

【0125】図10に示した送受信情報テーブル120
のネストプロシジャ管理テーブル管理部124におい
て、例えば、「0x00200000」番地で指定され
るアドレスのネストプロシジャ管理テーブル130に、
サーバの実行中に呼び出したRPCに関するネストプロ
シジャ情報が格納されている。
The transmission / reception information table 120 shown in FIG.
In the nested procedure management table management unit 124, for example, the nested procedure management table 130 of the address designated by the address “0x00200000”
The nest procedure information about the RPC called during the execution of the server is stored.

【0126】そして、図13に示すように、ネストプロ
シジャ管理テーブル130には、そのRPC要求メッセ
ージである「QSAVE]は、アドレス「133.14
4.8.192:6008」のサーバに2回送出された
ことを示している。このテーブルは、必要でなくなった
とき、すなわち、サーバの実行が終わった際に解放(ク
リア)される。
As shown in FIG. 13, in the nest procedure management table 130, the RPC request message “QSAVE” has the address “133.14”.
4.8.192: 6008 ". This table is released (cleared) when it is no longer needed, that is, when the server has finished executing.

【0127】ステップ243において、通信処理部21
のサーバ処理手段21B,21Cは、発行するRPC要
求のネストプロシジャ識別子とそのメッセージを送信す
る宛先であるアドレスに対応するネストプロシジャ管理
テーブルが無ければ、使用されていないネストプロシジ
ャ管理テーブルを確保あるいは作成して、その先頭アド
レスをネストプロシジャ管理テーブル管理部124に書
き込み、ネストプロシジャ管理テーブル130のネスト
プロシジャ識別子部131にはRPC要求するネストプ
ロシジャ識別子を書き込み、アドレス部132にはその
メッセージを送信する宛先アドレスを書き込み、通番部
133に値「1」をセットする。
In step 243, the communication processing unit 21
If there is no nested procedure management table corresponding to the nested procedure identifier of the RPC request to be issued and the address to which the message is transmitted, the server processing means 21B, 21C secures or creates an unused nested procedure management table. Then, the head address is written to the nested procedure management table management unit 124, the nested procedure identifier for the RPC request is written to the nested procedure identifier unit 131 of the nested procedure management table 130, and the destination to which the message is transmitted is written to the address unit 132. The address is written, and the value “1” is set in the serial number unit 133.

【0128】また、ステップ243では、発行するRP
C要求のネストプロシジャ識別子とそのメッセージを送
信する宛先であるアドレスに対応するネストプロシジャ
管理テーブルがあれば、通信処理部21のサーバ処理手
段21B,21Cは、ネストプロシジャ管理テーブル1
30を用いて、発行するRPC要求のネストプロシジャ
識別子とそのメッセージを送信する宛先であるアドレス
に対応する通番部133を検索し、その通番の値をイン
クリメントする。
At step 243, the RP to be issued is
If there is a nested procedure management table corresponding to the nested procedure identifier of the C request and the address to which the message is to be transmitted, the server processing units 21B and 21C of the communication processing unit 21 will execute the nested procedure management table 1
Using 30, the nest procedure identifier of the RPC request to be issued and the serial number unit 133 corresponding to the address to which the message is transmitted are searched, and the value of the serial number is incremented.

【0129】ステップ244において、通信処理部21
のサーバ処理手段21B,21Cは、ネストサーバ25
へ送信するRPC要求多重メッセージを、図3に示した
RPC要求メッセージフォーマット160にしたがって
作成する。
In step 244, the communication processing unit 21
Server processing means 21B, 21C of the nest server 25
An RPC request multiplex message to be transmitted to the server is created according to the RPC request message format 160 shown in FIG.

【0130】このとき、RPC制御ヘッダ部161に
は、RPC要求メッセージの送受信制御に必要な情報を
格納し、実行要求プロシジャ識別子部162には、サー
バ23,24から渡されたネストサーバ25のプロシジ
ャ識別子を格納する。プロシジャ識別子としては、例え
ば、「QSAVE]を格納する。
At this time, the information necessary for controlling the transmission and reception of the RPC request message is stored in the RPC control header section 161, and the procedure of the nest server 25 passed from the servers 23 and 24 is stored in the execution request procedure identifier section 162. Stores the identifier. For example, “QSAVE” is stored as the procedure identifier.

【0131】イベント識別子部163には、送受信情報
テーブル120の自分のプロシジャ識別子に対応するイ
ベント識別子を格納し、発行数部164には、送受信情
報テーブル120の自分のプロシジャ識別子に対応する
RPC発行数の値を格納する。
The event identifier section 163 stores an event identifier corresponding to its own procedure identifier in the transmission / reception information table 120, and the issue number section 164 stores an RPC issue number corresponding to its own procedure identifier in the transmission / reception information table 120. Store the value of.

【0132】ユーザデータ部166には、サーバ23か
ら渡されたプロシジャ入力引数を格納し、通番部165
には、送受信情報テーブル120の自分のプロシジャ識
別子に対応するネストプロシジャ管理テーブル130
の、今実行要求するネストプロシジャ識別子と宛先のア
ドレスに対応する通番部133に格納されている通番の
値を格納する。
The user data section 166 stores the procedure input argument passed from the server 23 and stores the serial number section 165
Includes a nested procedure management table 130 corresponding to its own procedure identifier in the transmission / reception information table 120.
The value of the serial number stored in the serial number unit 133 corresponding to the nested procedure identifier that is requested to be executed and the destination address is stored.

【0133】次に、ステップ245において、通信処理
部21のサーバ処理手段21B,21Cは、ステップ2
44で作成したRPC要求多重メッセージを、ステップ
242で取得したネストサーバ25に対して送信する。
Next, in step 245, the server processing means 21B and 21C of the communication processing unit 21
The RPC request multiplex message created in step 44 is transmitted to the nest server 25 acquired in step 242.

【0134】なお、ステップ246,247は、ネスト
サーバ25からの実行結果を受信する応答時の処理であ
り、これらについては、後述する。
Steps 246 and 247 are processing at the time of response for receiving the execution result from the nest server 25, and these will be described later.

【0135】[ネストサーバ処理手段の処理]次に、図
14を用いて、サーバ処理手段21B,21Cから送信
されたRPC多重要求メッセージを受信したネストサー
バ処理手段21Dの処理について説明する。図14は、
本発明の一実施形態による通信処理部のネストサーバ処
理手段がRPC要求多重メッセージを受信した際に行う
処理の一例を示したPAD図である。
[Process of Nest Server Processing Unit] Next, the process of the nest server processing unit 21D that has received the RPC multiplex request message transmitted from the server processing units 21B and 21C will be described with reference to FIG. FIG.
FIG. 9 is a PAD diagram showing an example of a process performed when a nest server processing unit of the communication processing unit receives an RPC request multiplex message according to an embodiment of the present invention.

【0136】サーバ処理手段21B,21Cは多重化さ
れているため、ネストサーバ処理手段21Dは、同一の
RPC要求メッセージをサーバ処理手段21Bとサーバ
処理手段21Cのそれぞれ2回受信することになる。ネ
ストサーバ処理手段21Dは、最初に受信したRPC要
求メッセージと、2回目以降に受信したRPC要求メッ
セージに対してそれぞれ異なる処理をするものである。
Since the server processing means 21B and 21C are multiplexed, the nest server processing means 21D receives the same RPC request message twice each of the server processing means 21B and the server processing means 21C. The nest server processing means 21D performs different processings on the first received RPC request message and the second and subsequent received RPC request messages.

【0137】ステップ251において、ネストサーバ処
理手段21Dは、サーバ23,24からのRPC要求多
重メッセージを受信する。
In step 251, the nest server processing means 21D receives the RPC request multiplex message from the servers 23 and 24.

【0138】ステップ252において、ネストサーバ処
理手段21Dは、受信したRPC要求多重メッセージ対
応する入力出力対応テーブル150を取得する。
At step 252, the nest server processing means 21D acquires the input / output correspondence table 150 corresponding to the received RPC request multiplex message.

【0139】ここでは、受信したRPC要求多重メッセ
ージの要求プロシジャ識別子とイベント識別子とが、実
行結果キャッシュテーブル140に保持されている要求
プロシジャ識別子とイベント識別子とに等しい入力出力
対応管理テーブル150のアドレスを取得することによ
り、受信したRPC要求多重メッセージ対応する入力出
力対応テーブル150を取得する。
Here, the address of the input / output correspondence management table 150 in which the request procedure identifier and the event identifier of the received RPC request multiplex message are equal to the request procedure identifier and the event identifier held in the execution result cache table 140 are set. As a result, the input / output correspondence table 150 corresponding to the received RPC request multiplex message is acquired.

【0140】ここで、図15を用いて、実行結果キャッ
シュテーブル140の構成について説明する。図15
は、本発明の一実施形態によるRPC処理部の中の実行
結果キャッシュテーブルの構成図である。
Here, the configuration of the execution result cache table 140 will be described with reference to FIG. FIG.
FIG. 6 is a configuration diagram of an execution result cache table in the RPC processing unit according to an embodiment of the present invention.

【0141】実行結果キャッシュテーブル140は、ネ
ストサーバ25側のネストサーバ処理手段21Dが、受
信するRPC要求メッセージの中からRPC要求多重メ
ッセージを判別するとともに、その受信数およびキャッ
シュ情報を管理するためのテーブルである。RPC処理
部20Aのネストサーバ処理手段21Dは、1つの実行
結果キャッシュテーブルを有している。
The execution result cache table 140 is used by the nest server processing means 21D of the nest server 25 to determine the RPC request multiplex message from the received RPC request messages, and to manage the number of received RPC request messages and the cache information. It is a table. The nest server processing unit 21D of the RPC processing unit 20A has one execution result cache table.

【0142】実行結果キャッシュテーブル140は、要
求プロシジャ識別子部141と,イベント識別子部14
2と,RPC発行数部143と,受付カウンタ部144
と,入力出力対応テーブル管理部145とから構成され
ている。
The execution result cache table 140 includes a request procedure identifier section 141 and an event identifier section 14.
2, RPC issuance number section 143, and reception counter section 144
And an input / output correspondence table management unit 145.

【0143】要求プロシジャ識別子部141には、ネス
トサーバ25が受信するRPC要求多重メッセージで処
理要求されたプロシジャの識別子が格納される。イベン
ト識別子部142には、ネストサーバ25が受信したR
PC要求メッセージに付せられたイベント識別子が格納
される。
The request procedure identifier section 141 stores the identifier of the procedure requested to be processed by the RPC request multiplex message received by the nest server 25. The event identifier 142 includes the R received by the nest server 25.
The event identifier attached to the PC request message is stored.

【0144】RPC発行数部143には、ネストサーバ
25が受信したRPC要求メッセージに付せられたRP
C発行数の値が格納される。ネストサーバ25は、この
RPC発行数分の、同一イベント識別子を持つRPC要
求多重メッセージを受信する。
The RPC issuance number section 143 includes the RP attached to the RPC request message received by the nest server 25.
The value of the number of issued C is stored. The nest server 25 receives RPC request multiplex messages having the same event identifier for the number of issued RPCs.

【0145】受付カウンタ部144には、同一イベント
識別子を持つRPC要求多重メッセージを受信した数を
カウントするカウンタ値を格納する。入力出力対応テー
ブル管理部145は、入力出力対応テーブル150のア
ドレスが格納される。
The reception counter 144 stores a counter value for counting the number of received RPC request multiplex messages having the same event identifier. The input / output correspondence table management unit 145 stores the address of the input / output correspondence table 150.

【0146】このように、実行結果キャッシュテーブル
140は、ネストサーバ25のプロシジャ識別子とイベ
ント識別子の組毎に1行が使用される。
As described above, in the execution result cache table 140, one row is used for each set of the procedure identifier and the event identifier of the nest server 25.

【0147】図15に示す例では、要求プロシジャ識別
子部141として、「QSORT」が格納され、イベン
ト識別子部142として、「960419:12321
5:0001」が格納され、RPC発行数部143とし
て、「2」が格納され、受付カウンタ部144として、
「1」が格納され、入力出力対応テーブル管理部145
として、「0x00208000」が格納されている状
態を示している。即ち、要求プロシジャ識別子が「QS
ORT」であり、イベント識別子部142が「9604
19:123215:0001」のプロシジャのRPC
発行数は、「2」でり、この2個のRPCの内、既に、
受付カウンタで示される「1」個のプロシジャを受信し
ており、プロシジャの実行結果として、アドレス「0x
00208000」に、入力出力対応テーブルが形成さ
れていることを示している。
In the example shown in FIG. 15, "QSORT" is stored as the request procedure identifier section 141, and "960419: 12321" is stored as the event identifier section 142.
5: 0001 ”is stored, and“ 2 ”is stored as the RPC issuance number part 143.
“1” is stored, and the input / output correspondence table management unit 145 is stored.
"0x00208000" is stored. That is, if the request procedure identifier is “QS
ORT "and the event identifier part 142 is" 9604 ".
19: 123215: 0001 "procedure
The number of issuance is "2", and out of these two RPCs,
“1” procedures indicated by the reception counter have been received, and as the execution result of the procedures, the address “0x
00208000 "indicates that an input / output correspondence table is formed.

【0148】次に、図16を用いて、入力出力対応テー
ブル150の構成について説明する。図16は、本発明
の一実施形態によるRPC処理部の中の入力出力対応テ
ーブルの構成図である。
Next, the configuration of the input / output correspondence table 150 will be described with reference to FIG. FIG. 16 is a configuration diagram of an input / output correspondence table in the RPC processing unit according to an embodiment of the present invention.

【0149】入力出力対応テーブル150は、キャッシ
ュ情報を格納するためのテーブルであり、RPC要求多
重メッセージの入力に対するネストサーバ実行結果を管
理するためのテーブルである。RPC処理部20Aのネ
ストサーバ処理手段21Dは、複数の入力出力対応テー
ブルを有している。
The input / output correspondence table 150 is a table for storing cache information, and is a table for managing a nest server execution result with respect to the input of the RPC request multiplex message. The nest server processing means 21D of the RPC processing unit 20A has a plurality of input / output correspondence tables.

【0150】入力出力対応テーブル150は、ある固定
数分あらかじめ用意され、必要時にそこから取得するよ
うにしてもよいが、必要になったときに動的にメモリを
確保しテーブルを作成してもよいものである。
The input / output correspondence table 150 may be prepared in advance for a fixed number, and may be obtained from the table when necessary. However, it is also possible to prepare a table by dynamically allocating memory when necessary. Good thing.

【0151】入力出力対応テーブル150は、必要でな
くなったとき、すなわち、ネストサーバ25のプロシジ
ャ識別子とイベント識別子の組で対応付けられるRPC
要求多重メッセージをすべて受信した際に解放される。
The input / output correspondence table 150 is used when the RPC is no longer needed, that is, the RPC associated with the set of the procedure identifier and the event identifier of the nest server 25.
Released when all request multiplex messages have been received.

【0152】入力出力対応テーブル150は、ネストサ
ーバ25のプロシジャ識別子とイベント識別子の組毎に
1つの入力出力対応テーブルが用いられる。入力出力対
応テーブル150は、同一RPC要求多重メッセージ毎
に1つが生成,管理される。
As the input / output correspondence table 150, one input / output correspondence table is used for each set of the procedure identifier and the event identifier of the nest server 25. One input-output correspondence table 150 is generated and managed for each identical RPC request multiplex message.

【0153】入力出力対応テーブル150は、入力引き
数を格納する入力引数部151と、それに対応するネス
トサーバ25の実行結果を格納する実行結果部152と
から構成される。
The input / output correspondence table 150 includes an input argument section 151 for storing an input argument and an execution result section 152 for storing the execution result of the nest server 25 corresponding to the input argument section.

【0154】ここで、図14に示したPAD図に戻っ
て、ステップ253において、ネストサーバ処理手段2
1Dは、実行結果キャッシュテーブル140に対応する
要求プロシジャ識別子とイベント識別子があるか無いか
を判断し、無ければ、ステップ254に進む。即ち、ネ
ストサーバ処理手段21Dは、受信したRPC要求多重
メッセージが、最初のRPC要求メッセージであるか、
それとも、2回目以降のRPC要求メッセージを判断
し、最初のRPC要求メッセージであれば、ステップ2
54に進む。
Here, returning to the PAD diagram shown in FIG. 14, in step 253, the nest server processing means 2
1D determines whether there is a request procedure identifier and an event identifier corresponding to the execution result cache table 140, and if not, proceeds to step 254. That is, the nest server processing means 21D determines whether the received RPC request multiplex message is the first RPC request message,
Alternatively, the second and subsequent RPC request messages are determined, and if it is the first RPC request message, step 2
Proceed to 54.

【0155】ステップ254において、ネストサーバ処
理手段21Dは、実行結果キャッシュテーブル140に
受信したRPC要求多重メッセージの要求プロシジャ識
別子とイベント識別子とRPC発行数の値を書き込む。
In step 254, the nest server processing means 21D writes the request procedure identifier, the event identifier, and the number of issued RPCs of the received RPC request multiplex message into the execution result cache table 140.

【0156】また、ステップ255において、ネストサ
ーバ処理手段21Dは、使用されていない入力出力対応
管理テーブル150を確保あるいは作成し、その先頭ア
ドレスを実行結果キャッシュテーブル140の入力出力
対応テーブル管理部145に書き込む。
In step 255, the nest server processing means 21 D secures or creates an unused input / output correspondence management table 150, and stores the leading address in the input / output correspondence table management unit 145 of the execution result cache table 140. Write.

【0157】次に、ステップ256において、ネストサ
ーバ処理手段21Dは、取得した入力出力対応テーブル
150を参照し、受信RPC多重要求メッセージのユー
ザデータ部166に格納されたプロシジャ入力引数と同
じ入力引数があるか否かを調べ、あればステップ257
へ進み、無ければステップ260へ進む。即ち、ネスト
サーバ処理手段21Dは、受信したRPC要求メッセー
ジが既にサーバ25において実行されているか否かを判
断する。2回目以降のRPC要求メッセージの受信時に
は、ステップ257へ進み、最初のRPC要求メッセー
ジの受信時には、ステップ260へ進むことになる。
Next, in step 256, the nest server processing means 21D refers to the obtained input / output correspondence table 150 and finds the same input argument as the procedure input argument stored in the user data section 166 of the received RPC multiplex request message. It is checked whether there is, and if so, step 257
If no, go to step 260. That is, the nest server processing unit 21D determines whether or not the received RPC request message has already been executed in the server 25. When the second and subsequent RPC request messages are received, the process proceeds to step 257, and when the first RPC request message is received, the process proceeds to step 260.

【0158】なお、ステップ256において、入力引数
が複数の引数の組である場合には、対応する引数の組が
すべて等しい入力引数があるか否かを調べる。
In step 256, if the input argument is a set of a plurality of arguments, it is checked whether or not there is an input argument in which all the corresponding sets of arguments are equal.

【0159】ステップ257において、ネストサーバ処
理手段21Dは、その入力引数に対応する実行結果が、
入力出力対応テーブル150の実行結果部152に書き
込まれているか否かを調べる。
At step 257, the nest server processing means 21D determines that the execution result corresponding to the input argument is
It is checked whether or not the data is written in the execution result section 152 of the input / output correspondence table 150.

【0160】ここで書き込まれていなければ、ステップ
258において、ネストサーバ処理手段21Dは、書き
込まれるまで待つことになる。即ち、この時点におい
て、既に、他のRPC要求メッセージを受信している
が、そのRPC要求メッセージに対するネストサーバ2
5の処理が終了していないため、実行結果が書き込まれ
るのを待つことになる。書き込まれるとステップ259
に進む。
If the data has not been written, the nest server processing means 21D waits at step 258 until the data has been written. In other words, at this point, although another RPC request message has already been received, the nest server 2 for that RPC request message has
Since the processing of No. 5 has not been completed, it waits for the execution result to be written. When written, step 259
Proceed to.

【0161】ステップ259において、ネストサーバ処
理手段21Dは、入力引数に対応する実行結果を取得す
る。即ち、2回目以降のRPC要求メッセージの受信時
には、ネストサーバ処理手段21Dは、同一の要求をサ
ーバ25に繰り返し実行されることなく、その実行結果
のみを取得する。
At step 259, the nest server processing means 21D acquires the execution result corresponding to the input argument. That is, when receiving the second and subsequent RPC request messages, the nest server processing means 21D acquires only the execution result without the server 25 repeatedly executing the same request.

【0162】一方、ステップ256で同じ入力引数が無
ければ、ステップ260において、ネストサーバ処理手
段21Dは、1組のRPC要求多重メッセージの中で最
初に到着したものであると判断し、入力出力対応テーブ
ル150の入力引数部151に受信RPC要求メッセー
ジに付された入力引数を書き込む。
On the other hand, if there is not the same input argument in step 256, in step 260, the nest server processing means 21D determines that the arriving message is the first of a set of RPC request multiplex messages, and The input argument attached to the received RPC request message is written into the input argument section 151 of the table 150.

【0163】ステップ261において、ネストサーバ2
5を実行する。ネストサーバ25の実行処理について
は、後述する。
In step 261, the nest server 2
Step 5 is executed. The execution process of the nest server 25 will be described later.

【0164】ステップ262において、ネストサーバ処
理手段21Dは、ネストサーバ25の実行結果を取得す
る。
In step 262, the nest server processing means 21D acquires the execution result of the nest server 25.

【0165】そして、ステップ263において、ネスト
サーバ処理手段21Dは、キャッシュ情報としてその実
行結果をステップ260で書き込んだ入力出力対応テー
ブル150の入力引数に対応する実行結果部152に書
き込む。
Then, in step 263, the nest server processing means 21D writes the execution result as cache information in the execution result section 152 corresponding to the input argument of the input / output correspondence table 150 written in step 260.

【0166】次に、ステップ264において、ネストサ
ーバ処理手段21Dは、ステップ259あるいはステッ
プ262で取得したネストサーバの実行結果を付加した
RPC応答メッセージを作成する。
Next, in step 264, the nest server processing means 21D creates an RPC response message to which the execution result of the nest server obtained in step 259 or 262 is added.

【0167】ステップ265において、ネストサーバ処
理手段21Dは、ネストサーバの実行結果を付加したR
PC応答メッセージをRPC要求元のサーバに対して送
信する。即ち、ここでは、受信したRPC要求メッセー
ジに応じて、サーバ処理手段21B若しくはサーバ処理
手段21CのいづれかにRPC応答メッセージを送信す
る。
In step 265, the nest server processing means 21D adds the nest server execution result to the R
A PC response message is transmitted to the server that issued the RPC request. That is, here, the RPC response message is transmitted to either the server processing unit 21B or the server processing unit 21C according to the received RPC request message.

【0168】次に、ステップ266において、ネストサ
ーバ処理手段21Dは、通信処理部21内のキャッシュ
情報の管理処理を行うため、まず実行結果キャッシュテ
ーブル140の受付カウンタ部144の値をインクリメ
ントして、同一イベントから発生するRPC要求多重メ
ッセージの受信数をカウントする。
Next, at step 266, the nest server processing means 21D increments the value of the reception counter 144 of the execution result cache table 140 in order to manage the cache information in the communication processing section 21. The number of received RPC request multiplex messages generated from the same event is counted.

【0169】次に、ステップ267において、ネストサ
ーバ処理手段21Dは、同一イベントから発生するRP
C要求多重メッセージをすべて受信したか否かを判定す
るため、ステップ266でインクリメントしたカウンタ
値と実行結果キャッシュテーブル140のRPC発行数
部143の値とを比較する。
Next, at step 267, the nest server processing means 21D checks the RP generated from the same event.
In order to determine whether or not all the C request multiplex messages have been received, the counter value incremented in step 266 is compared with the value of the RPC issue number section 143 of the execution result cache table 140.

【0170】もし等しければ、ステップ268におい
て、ネストサーバ処理手段21Dは、実行結果キャッシ
ュテーブル140のイベント識別子,RPC発行数,受
付カウンタ値をクリアする。
If they are equal, in step 268, the nest server processing means 21D clears the event identifier, the number of issued RPCs, and the reception counter value in the execution result cache table 140.

【0171】さらに、ステップ269において、ネスト
サーバ処理手段21Dは、入出力対応テーブル150を
解放する。
Further, in step 269, the nest server processing means 21D releases the input / output correspondence table 150.

【0172】以上のように、キャッシュ情報は、実行結
果キャッシュテーブル140と入力出力対応テーブル1
50とで管理され、1組のRPC要求多重メッセージの
うちの最初のメッセージの受信時に、実行結果キャッシ
ュテーブルの1行と入力出力対応テーブル1つが確保さ
れ、その組のすべてのRPC要求多重メッセージを受信
しその実行結果を返したのちにすぐさま解放される。
As described above, the cache information includes the execution result cache table 140 and the input / output correspondence table 1
50, one row of the execution result cache table and one input / output correspondence table are secured when the first message of the set of RPC request multiplex messages is received, and all RPC request multiplex messages of the set are stored. It is released immediately after receiving and returning the execution result.

【0173】RPC発行数部によって、いくつのRPC
要求メッセージを受信すればよいかを知ることができる
ので、その数の分だけ受信した時点で、キャッシュ情報
をすぐさま解放できるので、キャッシュ情報をいつまで
も保持してメモリを多く消費することを避けることがで
きる。
The number of RPCs depends on the number of RPCs issued.
Since it is possible to know whether to receive the request message, the cache information can be released immediately when the number of received request messages has been received, so that it is possible to avoid holding the cache information forever and consuming a lot of memory. it can.

【0174】[サーバの処理]次に、ネストサーバ25
の処理について説明する。
[Server Processing] Next, the nest server 25
Will be described.

【0175】ネストサーバ25は、既に説明したネスト
サーバ50と同様であり、サーバからの要求に対して自
らの処理を実行し、その実行結果をRPC処理部を介し
て呼出元のサーバに返すものである。また、必要に応
じ、処理のために必要な情報の参照を、クライアント2
2と同様に、他のサーバに要求してもよいものである。
ネストサーバ25の処理は、図11において説明したサ
ーバ23の処理と同様である。
The nest server 25 is the same as the nest server 50 described above, executes its own processing in response to a request from the server, and returns the execution result to the calling server via the RPC processing unit. It is. If necessary, the client 2 refers to information necessary for processing.
Similarly to 2, the request may be made to another server.
The processing of the nest server 25 is the same as the processing of the server 23 described in FIG.

【0176】[ネストサーバ処理手段の応答時の処理]
ネストサーバ25が実行され、実行結果が得られると、
ネストサーバ処理手段21Dは、実行結果をサーバ処理
手段21B,Cに返すが、その時の処理は、図14のス
テップ264,265において説明したとおりである。
[Process at the time of response from the nest server processing means]
When the nest server 25 is executed and an execution result is obtained,
The nest server processing unit 21D returns the execution result to the server processing units 21B and 21C, and the processing at that time is as described in steps 264 and 265 of FIG.

【0177】[サーバ処理手段の応答時の処理]次に、
ネストサーバ25からの実行結果を受信した時のサーバ
処理手段21B,Cの応答時の処理について、図12を
用いて説明する。
[Process at the time of response from server processing means]
The processing at the time of the response of the server processing means 21B and 21C when receiving the execution result from the nest server 25 will be described with reference to FIG.

【0178】ステップ246において、通信処理部21
のサーバ処理手段21B,21Cは、呼び出したネスト
サーバ25に対応するRPC応答メッセージを受信す
る。
In step 246, the communication processing unit 21
Receive the RPC response message corresponding to the called nest server 25.

【0179】ステップ247において、通信処理部21
のサーバ処理手段21B,21Cは、受信したRPC応
答メッセージに付加された実行結果を呼び出し元のサー
バ23に返す。
At step 247, the communication processing section 21
Server processing means 21B and 21C return the execution result added to the received RPC response message to the calling server 23.

【0180】また、サーバ23,24自体の実行が終了
した時のサーバ処理手段21B,2Cの応答時の処理
は、図9において説明したとおりである。
The processing at the time of the response of the server processing means 21B, 2C when the execution of the servers 23, 24 itself is completed is as described in FIG.

【0181】図9のステップ224において、サーバの
実行が終了すると、通信処理部21のRPCサーバ処理
手段21B,21Cは、その実行結果を受け取る。
In step 224 of FIG. 9, when the execution of the server is completed, the RPC server processing units 21B and 21C of the communication processing unit 21 receive the execution results.

【0182】ステップ225において、通信処理部21
のRPCサーバ処理手段21B,21Cは、その実行結
果を付加したRPC応答メッセージを作成する。
At step 225, the communication processing unit 21
RPC server processing means 21B and 21C create an RPC response message to which the execution result is added.

【0183】次に、ステップ226において、通信処理
部21のRPCサーバ処理手段21B,21Cは、依頼
元のクライアントに対してRPC応答メッセージを送信
する。
Next, in step 226, the RPC server processing means 21B, 21C of the communication processing section 21 transmits an RPC response message to the requesting client.

【0184】[クライアント処理手段の応答時の処理]
次に、サーバ23,24からの実行結果を受信した時の
クライアント処理手段21Aの応答時の処理について、
図10を用いて説明する。
[Processing at Response of Client Processing Unit]
Next, the processing at the time of response of the client processing means 21A when receiving the execution result from the servers 23 and 24 will be described.
This will be described with reference to FIG.

【0185】ステップ216において、呼び出したサー
バ数分のRPC応答メッセージをすべて受信する。
At step 216, all RPC response messages for the number of called servers are received.

【0186】ステップ217において、すべてRPC応
答メッセージを受信した後、受信RPC応答メッセージ
の中から、例えば、ランダムに1つを選択する。
In step 217, after all the RPC response messages have been received, one of the received RPC response messages is selected at random, for example.

【0187】さらに、ステップ218において、要求元
であるクライアント22にそのメッセージに付せられた
サーバの実行結果を返す。
Further, in step 218, the result of execution of the server attached to the message is returned to the requesting client 22.

【0188】ステップ216におけるRPC応答メッセ
ージの待ち方,およびステップ217におけるRPC応
答メッセージの選択の方法としては、これに限ることな
く、例えば先着のもの1つを返す方法や、ある一定時間
内に受信した中から応答の内容によって多数決論理を用
いて1つを選択するなどの種々の方法を用いることがで
きる。
The method of waiting for the RPC response message in step 216 and the method of selecting the RPC response message in step 217 are not limited to the above. For example, a method of returning one of the first received messages or a method of receiving an RPC response message within a certain time period Various methods such as selecting one using majority logic according to the contents of the response can be used.

【0189】[クライアントの応答時の処理]次に、ク
ライアント処理手段21Aがサーバ23,24からの実
行結果を受信した時のクライアント22の応答時の処理
について説明する。
[Processing when Client Responds] Next, processing when the client 22 responds when the client processing means 21A receives execution results from the servers 23 and 24 will be described.

【0190】図5において説明したように、ステップ2
02において、クライアント22は、その実行結果をR
PC処理部20Aを介して受け取る。
As described with reference to FIG.
02, the client 22 returns the execution result to R
Received via PC processing unit 20A.

【0191】以上説明したように、本実施形態において
は、ネストサーバ側の処理装置(RPC処理部20Aの
通信処理部21のネストサーバ処理手段)は、検出した
同一処理に関するメッセージとその実行結果を自身で管
理することによって、ネストサーバの実行回数を抑制す
ることができる。したがって、例えば、故障性の実現の
ため、サーバの多重化あるいはサーバのN−versi
onプログラミング手法による多重化を行ないネストサ
ーバを並列的に呼び出した場合、多重化されたそのサー
バから別のプロシジャ要求が発行されると、そのプロシ
ジャ要求を受け付けるネストサーバ側は、要求内容に応
じてその実際のプロシジャ実行回数を削減し、ネストサ
ーバ側処理装置の負荷の抑制を行なうことができる。
As described above, in the present embodiment, the processing device on the nest server side (the nest server processing means of the communication processing unit 21 of the RPC processing unit 20A) transmits the detected message relating to the same process and the execution result. By managing the nest server itself, the number of executions of the nest server can be suppressed. Therefore, for example, in order to realize a fault, the multiplexing of servers or the N-version of servers are performed.
When nesting servers are called in parallel by multiplexing using the on-programming technique, and another procedure request is issued from the multiplexed server, the nest server that receives the procedure request receives the procedure request according to the request content. The actual number of procedure executions can be reduced, and the load on the nest server-side processing device can be reduced.

【0192】また、その結果、RPCのレスポンス時間
を短縮することができる。
As a result, the RPC response time can be shortened.

【0193】また、多重化サーバからのプロシジャ実行
要求を受け付けるネストサーバ側は、同一処理に属す
る、受信する多重メッセージの数をあらかじめ知ること
ができるので、多重度に応じて自分自身のキャッシュ内
容の保存期間およびキャッシュメモリの大きさを効果的
に制御することができる。とりわけ、クライアント/サ
ーバ型システムのシステム構築モデルとして普及しつつ
ある3層構造クライアント/サーバモデルを実現する場
合、そのファンクション層の役割を果たすプロシジャ実
行部(サーバ)を多重化する場合に、レスポンス時間の
短縮、データ層のプロシジャ実行部(サーバ)の負荷の
抑制に有効であり、また、キャッシュ内容の保存期間、
キャッシュメモリの大きさを好適に制御することができ
る。
Further, the nest server which receives the procedure execution request from the multiplexing server can know in advance the number of multiplexed messages to be received belonging to the same process. The storage period and the size of the cache memory can be effectively controlled. In particular, when realizing a three-layer client / server model that is becoming popular as a system construction model of a client / server type system, when multiplexing a procedure execution unit (server) that plays a role of its function layer, a response time is required. This is effective in reducing the load on the procedure execution unit (server) in the data layer, and also in the storage period of the cache contents,
The size of the cache memory can be suitably controlled.

【0194】また、ネストサーバ25は、同一処理に関
する多重メッセージを送信してくる送信元の処理装置の
数(多重度)を意識することなく、自らの処理を行える
ので、ネストサーバのプログラム開発効率が向上する。
Further, the nest server 25 can perform its own processing without being aware of the number (multiplicity) of processing units of the transmission source that transmits multiplex messages related to the same processing. Is improved.

【0195】また、オンライン稼働中にサーバの多重度
を変更しても、ネストサーバに影響がないため、必要な
ときに必要な多重度でサーバを多重化でき、信頼性を向
上させることができる。即ち、従来の方式では、ファン
クション層のサーバの数をあらかじめ考慮して、プレゼ
ンテーション層のクライアントあるいはデータ層のサー
バのプログラムを設計する必要があった。しかしなが
ら、ファンクション層のサーバの多重度を増やしたり減
らしたりして、その数に変動が生じた場合には、それを
考慮してプレゼンテーション層のクライアントあるいは
データ層のサーバのプログラムを再設計する必要があっ
た。また、ファンクション層のサーバに故障が生じた場
合でも、その数に変動が生じるので、プレゼンテーショ
ン層のクライアントあるいはデータ層のサーバのプログ
ラムは、あらかじめその数に変動を考慮したプログラム
設計をしておく必要があり、プログラム設計が複雑で開
発効率が悪くなるという問題点があった。しかしなが
ら、上述したように、オンライン稼働中にサーバの多重
度を変更しても、ネストサーバに影響がないため、必要
なときに必要な多重度でサーバを多重化でき、信頼性を
向上させることができる。
Further, even if the multiplicity of the server is changed during online operation, the nest server is not affected. Therefore, the server can be multiplexed at the required multiplicity when necessary, and the reliability can be improved. . That is, in the conventional method, it is necessary to design the client of the presentation layer or the server program of the data layer in consideration of the number of servers of the function layer in advance. However, if the number of functions in the function layer server is increased or decreased and the number changes, it is necessary to redesign the presentation layer client or data layer server program in consideration of the fluctuation. there were. In addition, even if a failure occurs in the function layer server, the number will fluctuate. Therefore, it is necessary to design the program of the presentation layer client or the data layer server in advance in consideration of the fluctuation in the number. There has been a problem that the program design is complicated and development efficiency is deteriorated. However, as described above, even if the multiplicity of a server is changed during online operation, the nested server is not affected, so that the server can be multiplexed at the required multiplicity when necessary, thereby improving reliability. Can be.

【0196】また、このとき、同じ入力引数を持つRP
C要求メッセージを送出する多重化サーバは、同じ処理
結果をもらうことができるので、多重化サーバの非同期
並列実行が可能となり、信頼性と保守性が向上する。
At this time, RPs having the same input argument
Since the multiplexing server that sends the C request message can receive the same processing result, asynchronous parallel execution of the multiplexing server becomes possible, and reliability and maintainability are improved.

【0197】なお、上述する説明では、サーバ23,2
4は多重化されたサーバであることとしたが、これに限
定することなく、例えば、異なるバージョンのサーバで
あってもよいものである。例えば、古いバージョンのサ
ーバ1つのみを用いていたところへ、新しいバージョン
のサーバを追加し、その後古いバージョンのサーバを削
除するといったシステム運用を行いたい場合に、呼び出
し側のクライアント22,サーバ23,24,ネストサ
ーバ25は、サーバ23,24が上記のように運用され
ていることを意識することなく、自らの処理を行えばよ
く、上記運用形態を考慮したプログラム設計をあらかじ
め行う必要はない。したがって、このようなサーバの運
用をすることが可能となり、プログラムの開発効率およ
びシステムのオンライン保守性を向上させることができ
る。
In the above description, the servers 23, 2
4 is a multiplexed server, but the present invention is not limited to this. For example, servers of different versions may be used. For example, when it is desired to perform a system operation in which a new version server is added and an old version server is deleted after using only one old version server, the caller client 22, server 23, The nest server 24 and the nest server 25 may perform their own processes without being aware that the servers 23 and 24 are operating as described above, and it is not necessary to design a program in consideration of the operation mode in advance. Therefore, it becomes possible to operate such a server, and it is possible to improve program development efficiency and system online maintainability.

【0198】なお、サーバでは、ネストサーバから受信
した情報を加工あるいは統合した情報をクライアントに
返すが、新しいバージョンのサーバでは、新たな加工方
法あるいは新たな統合方法を用いて新たな質の情報を作
成し、クライアントに返すようにしてもよいものであ
る。このとき、上述した新旧のバージョンのサーバを入
れ替えることにより、クライアントは新たな質の情報を
取得できるようになる。この場合であっても、クライア
ント,サーバ,ネストサーバのそれぞれは、上述した新
旧のバージョンのサーバを入れ替えることを意識したプ
ログラム設計をあらかじめ行う必要はないものである。
また、オンライン処理中であっても、クライアント,サ
ーバ,ネストサーバのそれぞれは、上述した新旧のバー
ジョンのサーバを入れ替えることを全く意識する必要は
なく、その実行を継続できる。
Note that the server returns information obtained by processing or integrating information received from the nest server to the client, while a new version of the server transmits new quality information using a new processing method or a new integration method. It may be created and returned to the client. At this time, by replacing the old and new versions of the server described above, the client can acquire new quality information. Even in this case, each of the client, the server, and the nest server does not need to carry out a program design in advance in consideration of replacing the server of the new and old versions described above.
Even during the online processing, each of the client, the server, and the nest server does not need to be conscious of replacing the server of the old and new versions, and can continue the execution.

【0199】なお、図16に示した入力出力対応テーブ
ル150の行は1行のみとし、図14に示したネストサ
ーバ処理では、このテーブルの行数を超えて入力引数の
書き込みをしなければならなくなった場合には、そのR
PC要求はエラーとして要求元のサーバの処理装置に返
すことにしてもよいものである。したがって、図14で
は、ステップ260からステップ263の処理を削除
し、代わりに、RPC要求をエラーとして返すため、実
行結果として例えばエラーコードを取得する処理を行う
ものである。これによって、同一処理に属するRPC要
求多重メッセージ間で入力引数が異なっていても、その
うちの1つのみを用いてネストサーバを実行できるた
め、サーバの多重度に変更が生じてもネストサーバ内の
処理に影響は生じなくなる。したがって、この場合に
も、多重化サーバの非同期並列実行が可能となり、信頼
性と保守性が向上する。
Note that the input / output correspondence table 150 shown in FIG. 16 has only one row, and in the nest server processing shown in FIG. 14, input arguments must be written exceeding the number of rows in this table. When it is gone, its R
The PC request may be returned to the processing device of the requesting server as an error. Therefore, in FIG. 14, the processing from step 260 to step 263 is deleted, and instead, the RPC request is returned as an error, so that, for example, processing for acquiring an error code as an execution result is performed. With this, even if the input arguments are different between the RPC request multiplex messages belonging to the same process, the nest server can be executed using only one of them, so that even if the multiplicity of the server is changed, the nest server will The processing will not be affected. Therefore, also in this case, asynchronous parallel execution of the multiplex server becomes possible, and reliability and maintainability are improved.

【0200】また、サーバやネストサーバのアドレス管
理のための処理装置であるネームサーバを本システム内
に用意してもよいものである。このネームサーバは、シ
ステム内のサーバやネストサーバのプロシジャ識別子と
アドレスの対応を管理しており、クライアントなどのプ
ログラムからの要求によって、サーバやネストサーバの
アドレスを登録したり、要求に応じてアドレスを返す機
能をもつものとなる。
A name server, which is a processing device for managing addresses of servers and nest servers, may be provided in the present system. This name server manages the correspondence between the procedure identifiers of the servers and nest servers in the system and the addresses, and registers the addresses of the servers and nest servers according to requests from programs such as clients, and addresses according to requests. Has the function to return.

【0201】これを用いて図1に示すシステム構成で、
新規サーバを追加する手順は次のようになる。まず、ネ
ームサーバにこの追加サーバのプロシジャ識別子とその
アドレスを登録する。このプロシジャ識別子は、今サー
バ23,24と同一であるとする。次に、クライアント
22からRPC要求が発生すると、RPC処理部20A
は、ネームサーバから要求する処理に対応するプロシジ
ャ識別子をもつサーバのアドレスをすべて取得する。R
PC処理部20Aは、取得したすべてのサーバの処理装
置に対してRPC要求メッセージを送出する。以下、こ
こまでに説明してきた処理を行うことにより、一連のR
PC処理が実行される。
Using this, in the system configuration shown in FIG.
The procedure for adding a new server is as follows. First, the procedure identifier of this additional server and its address are registered in the name server. This procedure identifier is assumed to be the same as that of the servers 23 and 24 now. Next, when an RPC request is issued from the client 22, the RPC processing unit 20A
Obtains all the addresses of the server having the procedure identifier corresponding to the process requested from the name server. R
The PC processing unit 20A sends an RPC request message to the acquired processing devices of all servers. Hereinafter, by performing the processing described so far, a series of R
PC processing is executed.

【0202】さらに、図14に示したネストサーバ処理
手段21Dにおけるネストサーバ処理において、2回目
以降のRPC要求に対して、ステップ256においてY
ESと判断された時、ステップ257〜259におい
て、最初のRPC要求に対する実行結果を取得し、この
実行結果をステップ265において送信するようにして
たが、2回目以降のRPC要求に対して要求された処理
を実行せず、ステップ265におけるRPC応答メッセ
ージの中には、実行されなかったことを示す情報を入れ
るようにしてもよいものである。
Further, in the nest server processing in the nest server processing means 21D shown in FIG.
When the ES is determined to be ES, in steps 257 to 259, the execution result for the first RPC request is obtained, and this execution result is transmitted in step 265. Alternatively, the information indicating that the process was not executed may be included in the RPC response message in step 265 without executing the process.

【0203】本実施形態によれば、ネストサーバ側処理
装置の負荷の抑制を行なうことができる。
According to the present embodiment, the load on the nest server-side processing device can be reduced.

【0204】また、その結果、RPCのレスポンス時間
を短縮することができる。
As a result, the RPC response time can be shortened.

【0205】また、プロシジャ実行部(サーバ)を多重
化する場合に、レスポンス時間の短縮、データ層のプロ
シジャ実行部(サーバ)の負荷の抑制に有効であり、ま
た、キャッシュ内容の保存期間、キャッシュメモリの大
きさを好適に制御することができる。
When the procedure execution unit (server) is multiplexed, it is effective for shortening the response time and suppressing the load on the procedure execution unit (server) in the data layer. The size of the memory can be suitably controlled.

【0206】また、ネストサーバのプログラム開発効率
が向上する。
Also, the program development efficiency of the nest server is improved.

【0207】また、必要なときに必要な多重度でサーバ
を多重化でき、信頼性を向上させることができる。
Further, the servers can be multiplexed at the required multiplicity when necessary, and the reliability can be improved.

【0208】また、多重化サーバの非同期並列実行が可
能となり、信頼性と保守性が向上する。
Further, asynchronous parallel execution of the multiplex server becomes possible, and reliability and maintainability are improved.

【0209】次に、図17〜図20を用いて、本発明の
他の実施形態によるリモートプロシジャコール処理方式
について説明する。上述した実施形態によるリモートプ
ロシジャコール処理方式においては、クライアントが呼
び出すサーバが複数あった場合に、クライアントの処理
装置(処理手段)がこの複数のサーバの処理装置(処理
手段)に直接RPC要求メッセージを送信する「マルチ
キャスト方式」を用いていた。しかしながら、本実施形
態においては、クライアントの処理装置(処理手段)
は、複数のサーバの処理装置(処理手段)のうちの任意
の1つの処理装置(処理手段)にRPC要求メッセージ
を送信し、このメッセージを受信した処理装置(処理手
段)が、残りのサーバの処理装置(処理手段)にRPC
要求メッセージをディスパッチするマルチキャスト方式
(以下、「間接マルチキャスト方式」と称する)を用い
るようにしている。この間接マルチキャスト方式は、例
えば、多重化されたサーバ間でマスター/スレーブの関
係がある場合に有効である。間接マルチキャスト方式で
は、すべてのクライアントは、マスターサーバのみへR
PC要求メッセージを送信し、マスターサーバは、自分
のすべてのスレーブサーバに対して、受信したRPC要
求メッセージを送信することにより、クライアントから
送出されたRPC要求メッセージがすべての多重化サー
バに届けられ、サーバの多重実行が可能となる。このよ
うに、間接マルチキャスト方式では、クライアント側で
はサーバの多重度を意識することなく、サーバがただ1
つであるかのようにRPC要求メッセージを送信したり
RPC応答メッセージを受信したりすることができると
いう利点がある。
Next, a remote procedure call processing method according to another embodiment of the present invention will be described with reference to FIGS. In the remote procedure call processing method according to the above-described embodiment, when there are a plurality of servers called by a client, the processing device (processing means) of the client sends an RPC request message directly to the processing devices (processing means) of the plurality of servers. The "multicast method" for transmission was used. However, in the present embodiment, the processing device (processing means) of the client
Transmits an RPC request message to an arbitrary one of the processing devices (processing means) of the plurality of servers, and the processing device (processing means) receiving the message transmits the RPC request message to the remaining server. RPC for processing equipment (processing means)
A multicast method for dispatching a request message (hereinafter referred to as an "indirect multicast method") is used. This indirect multicast method is effective, for example, when there is a master / slave relationship between multiplexed servers. In the indirect multicast scheme, all clients send only the master server
The master server sends a PC request message, and the master server sends the received RPC request message to all its slave servers, so that the RPC request message sent from the client is delivered to all the multiplexing servers, Multiple execution of servers becomes possible. As described above, in the indirect multicast method, the server is only one, without the client being aware of the multiplicity of the server.
There is an advantage that the RPC request message can be transmitted and the RPC response message can be received as if it were one.

【0210】ここで、図17を用いて、本発明の他の実
施形態によるリモートプロシジャコール処理方式を用い
る分散システムについて説明する。図17は、本発明の
他の実施形態によるリモートプロシジャコール処理方式
を用いる分散システムの全体構成を示すブロック図であ
る。なお、図1と同一符号は、同一部分を示している。
Here, a distributed system using a remote procedure call processing method according to another embodiment of the present invention will be described with reference to FIG. FIG. 17 is a block diagram showing the overall configuration of a distributed system using a remote procedure call processing method according to another embodiment of the present invention. The same reference numerals as those in FIG. 1 indicate the same parts.

【0211】図17において、通信媒体1,処理装置2
〜5,クライアント22,サーバ33,43,ネストサ
ーバ53,RPC処理部20,30,40,50は、図
1のものと同様である。また、通信媒体1,処理装置2
〜5,クライアント22,サーバ33,43,ネストサ
ーバ53,RPC処理部20,30,40,50は、図
4において説明したように、1つの処理装置内に集約し
て配置することができるものである。
In FIG. 17, communication medium 1, processing device 2
5, client 22, servers 33 and 43, nest server 53, and RPC processors 20, 30, 40 and 50 are the same as those in FIG. A communication medium 1 and a processing device 2
5, the client 22, the servers 33 and 43, the nest server 53, and the RPC processing units 20, 30, 40 and 50 can be collectively arranged in one processing device as described in FIG. It is.

【0212】図中の矢印は、クライアント22から発生
したRPC要求によってRPC要求メッセージが間接マ
ルチキャストされてサーバ33,43が実行され、さら
にそのそれぞれのサーバ33,43の実行中に発生した
RPC要求によってネストサーバ53が実行されるとい
う一連のRPC要求の流れを示している。
[0212] The arrows in the figure indicate that the RPC request message generated from the client 22 indirectly multicasts the RPC request message to execute the servers 33 and 43, and the RPC request generated during the execution of the respective servers 33 and 43. The flow of a series of RPC requests that the nest server 53 is executed is shown.

【0213】図17においては、サーバ33,43がマ
スタ/スレーブの関係にあり、サーバ33がマスタサー
バ、サーバ43がスレーブサーバとした場合のRPC要
求の流れを示している。
FIG. 17 shows the flow of an RPC request when the servers 33 and 43 are in a master / slave relationship, and the server 33 is a master server and the server 43 is a slave server.

【0214】ここで、図17示した矢印を用いて、本実
施形態によるリモートプロシジャコール処理方式におけ
るRPC実行要求時の全体的な流れについて説明する。
クライアント22からRPC要求が発行されると(矢印
81)、RPC処理部20は、その処理を実行可能なサ
ーバの処理装置のアドレスを取得する。本実施形態では
該当する処理装置3,4が2つ存在するが、このうちの
1つの処理装置3のみをマスタサーバのアドレスとして
取得し、そのサーバに対してRPC要求メッセージが送
信される(矢印82a)。
Here, the overall flow at the time of an RPC execution request in the remote procedure call processing method according to the present embodiment will be described using the arrows shown in FIG.
When an RPC request is issued from the client 22 (arrow 81), the RPC processing unit 20 acquires an address of a processing device of a server that can execute the processing. In the present embodiment, there are two corresponding processing devices 3 and 4, but only one of the processing devices 3 is acquired as the address of the master server, and an RPC request message is transmitted to that server (arrow). 82a).

【0215】ここで、このRPC要求メッセージは、ク
ライアントからRPC要求が発生したイベントを識別す
るためのイベント識別子やRPC発行数やマスタサーバ
へのRPC要求メッセージであることを示すディスパッ
チフラグといった情報を含んでいる。ディスパッチフラ
グについては、図19を用いて後述する。
Here, this RPC request message includes information such as an event identifier for identifying an event in which an RPC request has been issued from the client, the number of issued RPCs, and a dispatch flag indicating that the message is an RPC request message to the master server. In. The dispatch flag will be described later with reference to FIG.

【0216】このRPC要求メッセージを受信した処理
装置3のRPC処理部30は、受信したディスパッチフ
ラグを調べ、マスタサーバ33への送信であることを知
ると、そのRPC要求メッセージの内容をコピーし、ス
レーブサーバ43に送信する(矢印82b)。こうし
て、マスタサーバ33とスレーブサーバ43にRPC要
求メッセージが渡り、各々のサーバでは、メッセージ付
せられたイベント識別子とRPC発行を記憶したのち、
サーバ33,43を実行する(矢印83a、83b)。
Upon receiving the RPC request message, the RPC processing unit 30 of the processing device 3 checks the received dispatch flag, and if it knows that the message is to be transmitted to the master server 33, copies the contents of the RPC request message. The data is transmitted to the slave server 43 (arrow 82b). Thus, the RPC request message is passed to the master server 33 and the slave server 43, and each server stores the event identifier and the RPC issuance attached to the message,
The servers 33 and 43 are executed (arrows 83a and 83b).

【0217】各々のサーバ33,43が、さらに別のサ
ーバ(ネストサーバ53)へRPC要求を発行すると
(矢印84a、84b)、RPC処理部30,40は、
記憶しておいたイベント識別子とRPC発行数とを、R
PC要求多重メッセージに付加して、そのメッセージを
ネストサーバの処理装置5へ送信する(矢印85a、8
5b)。
When each of the servers 33 and 43 issues an RPC request to another server (nest server 53) (arrows 84a and 84b), the RPC processing units 30 and 40
The stored event identifier and the number of issued RPCs are
The message is added to the PC request multiplex message and transmitted to the processing device 5 of the nest server (arrows 85a, 8a).
5b).

【0218】このRPC要求多重メッセージを受信する
処理装置5では、RPC処理部50が送られてくるRP
C要求多重メッセージの中から、イベント識別子を基に
クライアントからの同一イベントによって発生したRP
C要求多重メッセージを判別し、その中から先着のもの
を選択してネストサーバ53を実行する(矢印86)。
In the processing device 5 that receives this RPC request multiplex message, the RPC processing unit 50 sends the RP
RP generated by the same event from the client based on the event identifier from the C request multiplex message
The C request multiplex message is determined, and the first one is selected from among them, and the nest server 53 is executed (arrow 86).

【0219】次に、図18を用いて、本実施形態による
リモートプロシジャコール処理方式におけるRPC応答
時の全体的な流れについて説明する。図18は、本発明
の他の実施形態によるリモートプロシジャコール処理方
式を用いる分散システムの全体構成を示すブロック図で
ある。
Next, the overall flow of an RPC response in the remote procedure call processing method according to the present embodiment will be described with reference to FIG. FIG. 18 is a block diagram showing the overall configuration of a distributed system using a remote procedure call processing method according to another embodiment of the present invention.

【0220】ネストサーバ53の実行結果とそのための
入力引数が、ネストサーバのキャッシュ情報となり、R
PC処理部50に格納される(矢印87)。残りのRP
C要求多重メッセージではネストサーバ53は実行され
ず、この実行結果のキャッシュ情報をみて、等しい入力
引数があれば、その実行結果情報をそのままその実行結
果として呼び出し元に返すものである。等しい入力引数
がなければ、その入力引数を用いてネストサーバを実行
する。その実行結果もまたキャッシュ情報となる。ただ
し、クライアント側で発行したRPC発行数分だけのR
PC要求多重メッセージ(同一イベント識別子をもつ)
を受信すると、上記キャッシュ情報をクリアする。
The execution result of the nest server 53 and the input argument therefor become cache information of the nest server.
It is stored in the PC processing unit 50 (arrow 87). Remaining RP
The nest server 53 is not executed in the C-request multiplex message. When the cache information of the execution result is found and there is an equal input argument, the execution result information is returned to the caller as the execution result as it is. If there is no equal input argument, execute the nest server using that input argument. The execution result also becomes cache information. However, R for the number of RPCs issued on the client side
PC request multiplex message (has the same event identifier)
Is received, the cache information is cleared.

【0221】RPC応答メッセージは呼び出し元のサー
バ33,43のRPC処理部30,40に渡され(矢印
88a,88b)、実行中のサーバ33,43に実行結
果が渡される(矢印89a,89b)。サーバの実行結
果は、呼び出し元のクライアント61に返すため、一旦
RPC処理部30,40に返される(矢印90a,90
b)。
The RPC response message is passed to the RPC processing units 30 and 40 of the calling servers 33 and 43 (arrows 88a and 88b), and the execution result is passed to the servers 33 and 43 being executed (arrows 89a and 89b). . The execution result of the server is returned to the RPC processing units 30 and 40 for returning to the calling client 61 (arrows 90a and 90).
b).

【0222】ここで、スレーブサーバ43のRPC処理
部40は、RPC応答メッセージをマスタサーバ33の
RPC処理部30へ返すため、RPC処理部40はRP
C応答メッセージを作成し、RPC処理部30の処理装
置へ返信される。RPC処理部30は、自己のサーバの
実行結果と受信したRPC応答メッセージに付せられた
実行結果との中からあらかじめ決められた選択手段によ
って1つを選択し、それをクライアントに返す実行結果
としてRPC応答メッセージを作成し、呼び出し元のク
ライアント22の処理装置に返信する(矢印71a、7
1b)。この選択の論理としては、図16のステップ2
17で説明した選択論理を用いることができる。
Here, the RPC processing unit 40 of the slave server 43 returns an RPC response message to the RPC processing unit 30 of the master server 33.
A C response message is created and returned to the processing device of the RPC processing unit 30. The RPC processing unit 30 selects one of the execution result of its own server and the execution result attached to the received RPC response message by a predetermined selection unit, and returns it to the client as an execution result. An RPC response message is created and returned to the processing device of the calling client 22 (arrows 71a, 71).
1b). The logic of this selection is step 2 in FIG.
The selection logic described in 17 can be used.

【0223】次に、図19を用いて、処理装置2,3,
4,5の間で通信媒体1を介して伝送されるRPC要求
メッセージのフォーマットについて説明する。図19
は、本発明の他の実施形態によるリモートプロシジャコ
ール処理方式において伝送されるRPC要求メッセージ
のフォーマットの説明図である。
Next, referring to FIG. 19, the processing units 2, 3,
The format of the RPC request message transmitted between the communication media 4 and 5 via the communication medium 1 will be described. FIG.
FIG. 7 is an explanatory diagram of a format of an RPC request message transmitted in a remote procedure call processing method according to another embodiment of the present invention.

【0224】RPC要求メッセージフォーマット160
は、RPC制御ヘッダ161と、イベント識別子部16
3と、発行数部164と、通番部165と、ユーザデー
タ部166とから構成されている。
RPC request message format 160
Is the RPC control header 161 and the event identifier 16
3, an issue number part 164, a serial number part 165, and a user data part 166.

【0225】さらに、本実施形態においては、RPC要
求メッセージフォーマット160は、RPC制御ヘッダ
161の中に、新たにディスパッチフラグ部167を設
けている。ディスパッチフラグ部167には、RPC要
求メッセージが、クライアントからマスタサーバへ送信
されるRPC要求メッセージなのか、あるいはマスタサ
ーバからスレーブサーバへディスパッチして送信される
RPC要求メッセージなのかを識別するためのフラグが
格納される。
Further, in the present embodiment, in the RPC request message format 160, a dispatch flag section 167 is newly provided in the RPC control header 161. The dispatch flag unit 167 has a flag for identifying whether the RPC request message is an RPC request message transmitted from the client to the master server or an RPC request message transmitted from the master server to the slave server. Is stored.

【0226】すなわち、例えば、クライアント22から
サーバ33へ送信されるRPC要求メッセージに対して
は、マスタサーバへの送信メッセージなので、RPC要
求メッセージのディスパッチフラグ部167には、
「1」を格納する。このRPC要求メッセージを受信し
た処理装置3のRPC処理部30からサーバ43へ送信
されるRPC要求メッセージに対しては、スレーブサー
バへの送信メッセージなので、RPC要求メッセージの
ディスパッチフラグ部167には、「0」が格納され
る。受信側サーバのRPC処理部は、受信RPC要求メ
ッセージのこのディスパッチ部167の内容をみて、ス
レーブサーバへのディスパッチ送信が必要な否かを判定
する。
That is, for example, an RPC request message transmitted from the client 22 to the server 33 is a transmission message to the master server. Therefore, the dispatch flag section 167 of the RPC request message includes
"1" is stored. Since the RPC request message transmitted from the RPC processing unit 30 of the processing device 3 that has received the RPC request message to the server 43 is a message transmitted to the slave server, the dispatch flag unit 167 of the RPC request message includes “ "0" is stored. The RPC processing unit of the receiving server determines whether or not dispatch transmission to the slave server is necessary, based on the contents of the dispatch unit 167 of the received RPC request message.

【0227】次に、RPC処理部の中の通信処理部の処
理について、図4に示した実施形態と異なる部分のみを
説明する。図4に示した通信処理部20Aは、RPCク
ライアント処理手段21A、RPCサーバ処理手段21
B,21C、RPCネストサーバ処理手段21Dを有し
ていた。本実施形態では、このうちRPCクライアント
処理手段とRPCサーバ処理手段の処理が若干異なって
いる。
Next, with respect to the processing of the communication processing unit in the RPC processing unit, only the parts different from the embodiment shown in FIG. 4 will be described. The communication processing unit 20A shown in FIG. 4 includes an RPC client processing unit 21A and an RPC server processing unit 21.
B, 21C and RPC nest server processing means 21D. In this embodiment, the processing of the RPC client processing unit and the processing of the RPC server processing unit are slightly different.

【0228】まず、RPCクライアント処理手段21A
の変更部分について説明する。図60は、通信処理部の
RPCクライアント処理手段21Aが行うRPCクライ
アント処理内容を示したPAD図であったが、これを用
いて説明する。
First, the RPC client processing means 21A
The changed part of will be described. FIG. 60 is a PAD showing the contents of the RPC client processing performed by the RPC client processing means 21A of the communication processing unit, which will be described with reference to FIG.

【0229】本実施形態では、ステップ212におい
て、RPCクライアント処理手段21Aは、ただ1つの
サーバのアドレスを取得する。この取得のためのサーバ
選択の方法は種々あるが、例えばランダムに選択しても
よいし、あらかじめ一意に決めておいてもよいものであ
る。
In this embodiment, in step 212, the RPC client processing means 21A acquires the address of only one server. There are various server selection methods for this acquisition. For example, they may be selected randomly or may be uniquely determined in advance.

【0230】そして、ステップ214において、RPC
クライアント処理手段21Aは、そのサーバに対しての
送出されるRPC要求メッセージを作成するわけである
が、このときRPC要求メッセージのディスパッチフラ
グ部167には、クライアントからマスタサーバへの送
信であることを示す値「1」を格納する。
At step 214, RPC
The client processing unit 21A creates an RPC request message to be sent to the server. At this time, the dispatch flag unit 167 of the RPC request message indicates that the transmission is from the client to the master server. The value “1” is stored.

【0231】そして、ステップ215において、RPC
クライアント処理手段21Aは、その1つのサーバに対
してのみRPC要求メッセージが送信される。
At step 215, RPC
The client processing means 21A transmits the RPC request message only to the one server.

【0232】ステップ216において、RPCクライア
ント処理手段21Aは、1つのRPC応答メッセージを
受信し、ステップ217は実行されることなく、ステッ
プ218で実行結果をクライアントに返すものである。
At step 216, the RPC client processing means 21A receives one RPC response message, and returns the execution result to the client at step 218 without executing step 217.

【0233】次に、RPCサーバ処理手段21B,21
Cの変更部分について説明する。図9は、通信処理部の
RPCサーバ処理手段21B,21Cが行うRPCサー
バ処理内容を示したPAD図であったが、これを用いて
説明する。ここでは、RPCサーバ処理手段21Bをマ
スターサーバの処理手段とし、RPCサーバ処理手段2
1Cをスレーブサーバの処理手段として説明する。
Next, the RPC server processing means 21B, 21
The changed part of C will be described. FIG. 9 is a PAD showing the contents of the RPC server processing performed by the RPC server processing means 21B and 21C of the communication processing unit, and will be described with reference to FIG. Here, the RPC server processing means 21B is the processing means of the master server, and the RPC server processing means 2
1C will be described as processing means of the slave server.

【0234】ステップ221において、RPCサーバ処
理手段21Bは、RPC要求メッセージを受信すると、
まずRPC要求メッセージのディスパッチフラグ部16
7の内容を調べ、クライアントからマスタサーバへの送
信であるのか、マスタサーバからスレーブサーバへの送
信であるのかを判定する。
At step 221, upon receiving the RPC request message, RPC server processing means 21B
First, the dispatch flag unit 16 of the RPC request message
7 to determine whether the transmission is from the client to the master server or from the master server to the slave server.

【0235】もし、クライアントからマスタサーバへの
送信であると判定されたならば、受信したRPC要求メ
ッセージのイベント識別子部163,発行数部164,
ユーザデータ部166,実行要求プロシジャ部162の
内容をそのまま複製し、さらにディスパッチフラグ部1
67の内容をマスタサーバからスレーブサーバへの送信
であることを示す「0」に書き換えた新たなRPC要求
メッセージを、RPCサーバ処理手段21Cに送信す
る。送信の宛先は、自己が管理するアドレステーブル1
00を用いて決定する。
If it is determined that the transmission is from the client to the master server, the event identifier section 163, the number of issued sections 164,
The contents of the user data section 166 and the execution request procedure section 162 are copied as they are, and the dispatch flag section 1
A new RPC request message in which the content of 67 is rewritten to “0” indicating transmission from the master server to the slave server is transmitted to the RPC server processing unit 21C. The transmission destination is the address table 1 managed by itself.
Determined using 00.

【0236】その後、次のステップ222へ進むもので
ある。
Thereafter, the flow advances to the next step 222.

【0237】さらに、ステップ224の後の追加された
ステップにおいて、RPCサーバ処理手段21Bは、ス
テップ221でRPC要求メッセージを送信したスレー
ブサーバのRPCサーバ処理手段21CからのRPC応
答メッセージをすべて受信し、自己のサーバの実行結果
と受信したRPC応答メッセージとの中からあらかじめ
決められた選択論理に基づいて1つの実行結果を選択す
る。
Further, in an added step after step 224, RPC server processing means 21B receives all the RPC response messages from RPC server processing means 21C of the slave server which transmitted the RPC request message in step 221. One execution result is selected from the execution result of its own server and the received RPC response message based on a predetermined selection logic.

【0238】ステップ225において、RPCサーバ処
理手段21Bは、選択された実行結果をクライアントに
返すRPC応答メッセージに付加する。
At step 225, the RPC server processing means 21B adds the selected execution result to the RPC response message returned to the client.

【0239】RPCサーバ処理手段21Cにおける処理
の流れは、図9に示したPAD図のとおりであり、ステ
ップ221で、もしマスタサーバからスレーブサーバへ
の送信であると判定されたならば、そのままステップ2
22へ進むものである。
The flow of processing in the RPC server processing means 21C is as shown in the PAD diagram of FIG. 9. If it is determined in step 221 that the transmission is from the master server to the slave server, the flow proceeds to step S221. 2
Go to 22.

【0240】以上述べた処理により、本実施形態による
リモートプロシジャコール処理が実施される。
With the above-described processing, the remote procedure call processing according to the present embodiment is performed.

【0241】本実施形態によれば、ネストサーバ側処理
装置の負荷の抑制を行なうことができる。
According to the present embodiment, the load on the nest server-side processing device can be reduced.

【0242】また、その結果、RPCのレスポンス時間
を短縮することができる。
As a result, the RPC response time can be shortened.

【0243】また、プロシジャ実行部(サーバ)を多重
化する場合に、レスポンス時間の短縮、データ層のプロ
シジャ実行部(サーバ)の負荷の抑制に有効であり、ま
た、キャッシュ内容の保存期間、キャッシュメモリの大
きさを好適に制御することができる。
When the procedure execution unit (server) is multiplexed, it is effective to reduce the response time and the load on the procedure execution unit (server) in the data layer. The size of the memory can be suitably controlled.

【0244】また、ネストサーバのプログラム開発効率
が向上する。
In addition, the program development efficiency of the nest server is improved.

【0245】また、必要なときに必要な多重度でサーバ
を多重化でき、信頼性を向上させることができる。
Further, servers can be multiplexed at a required multiplicity when required, and reliability can be improved.

【0246】また、多重化サーバの非同期並列実行が可
能となり、信頼性と保守性が向上する。
In addition, asynchronous parallel execution of the multiplex server becomes possible, improving reliability and maintainability.

【0247】さらに、実施形態では、特に、サーバの多
重化形態としてマスタ/スレーブ式の多重化サーバにで
も本発明を適用することができるものである。
Further, in the embodiment, the present invention can be applied particularly to a master / slave type multiplex server as a server multiplex mode.

【0248】なお、本実施形態においても、サーバ3
3,43は多重化されたサーバであることとしたが、こ
れに限定することなく、例えば、異なるバージョンのサ
ーバであってもよいものである。本実施形態において
も、古いバージョンのサーバ1つのみを用いていたとこ
ろへ、新しいバージョンのサーバを追加し、その後古い
バージョンのサーバを削除するといったシステム運用を
行いたい場合に、呼び出し側のクライアント22、サー
バ33,43、ネストサーバ53は、サーバ43,53
が上記のように運用されていることを意識することなく
自らの処理を行えばよく、上記運用形態を考慮したプロ
グラム設計をあらかじめ行う必要はない。これにより、
プログラムの開発効率を向上することができる。
In this embodiment, the server 3
Although the servers 3 and 43 are multiplexed servers, the present invention is not limited to this. For example, servers of different versions may be used. Also in the present embodiment, when it is desired to perform a system operation in which a new version server is added and an old version server is deleted after using only one old version server, the client 22 on the calling side is used. , Servers 33 and 43, and nest server 53
It is only necessary to perform its own processing without being aware that the program is operated as described above, and it is not necessary to design a program in consideration of the above-mentioned operation mode in advance. This allows
Program development efficiency can be improved.

【0249】また、本実施形態においても、サーバやネ
ストサーバのアドレス管理のための処理装置であるネー
ムサーバを本システム内に用意してもよいものである。
Also in the present embodiment, a name server which is a processing device for managing addresses of servers and nest servers may be provided in the present system.

【0250】以上、本発明の各実施形態について詳細に
説明したが、本発明の実施の形態はここで説明したもの
に限定されるものではなく、本発明の主旨を変えない範
囲で種々変更し得ることは言うまでもないものである。
例えば、処理装置間の通信方式としてリモートプロシジ
ャコールを用いた実施形態を説明してきたが、リモート
プロシジャコールの代わりに、依頼・応答を行うあらゆ
る通信手段を用いることができる。
Although the embodiments of the present invention have been described in detail, the embodiments of the present invention are not limited to those described here, and various modifications may be made without departing from the spirit of the present invention. Obviously, you get it.
For example, although the embodiment using the remote procedure call as the communication method between the processing devices has been described, any communication means that performs a request / response can be used instead of the remote procedure call.

【0251】また、ネストサーバはプロシジャの形で提
供されることとしてきたが、要求に応じて自らの処理を
行いその実行結果を返すプログラムであれば、プロシジ
ャの形でなくてもよいものである。また、実行結果を返
さないものであってもよいものである。
Although the nest server has been provided in the form of a procedure, the nest server need not be in the form of a procedure as long as the program performs its own processing in response to a request and returns the execution result. . Further, the execution result may not be returned.

【0252】なお、本発明の実施態様としては、以下の
ものが挙げられる。
The embodiments of the present invention include the following.

【0253】1)複数の処理手段を3層以上の階層構造
とし、プロシジャ実行側の処理手段を多重化し、これら
の処理手段を伝送ネットワークにより接続した分散シス
テムにおけるリモートプロシジャコール処理方式におい
て、リモートプロシジャコール要求メッセージを受信し
た処理手段は、上記リモートプロシジャコール要求メッ
セージの中に含まれるユーザデータ部の内容に基づい
て、多重要求メッセージを検出し、そのうちの1つを選
択し、選択された多重要求メッセージを用いて自らの処
理を実行し、その実行結果を選択された多重要求メッセ
ージの送信元処理装置に返すとともに、前記選択で選択
されたかった多重要求メッセージの送信元処理装置に対
して、要求された処理が実行されなかったことを示す情
報を返すとともに、上記リモートプロシジャコール要求
メッセージの中に含まれるリモートプロシジャコールを
要求された宛先の処理手段の数の情報に基づいて、多重
化されたリモートプロシジャコール要求に対するキャッ
シュ情報を管理することを特徴とするリモートプロシジ
ャコール処理方式。
1) In a remote procedure call processing method in a distributed system in which a plurality of processing means have a hierarchical structure of three or more layers, processing means on the procedure execution side are multiplexed, and these processing means are connected by a transmission network, The processing means having received the call request message detects a multiplex request message based on the contents of the user data portion included in the remote procedure call request message, selects one of the multiplex request messages, and selects the selected multiplex request message. Executes its own process using the message, returns the execution result to the transmission source processing device of the selected multiplex request message, and sends a request to the transmission source processing device of the multiplex request message selected by the selection. Returns information that the requested operation was not performed, Remote information managing the cache information for the multiplexed remote procedure call request based on information on the number of processing means of the destination requesting the remote procedure call included in the remote procedure call request message. Procedure call processing method.

【0254】2)上記1)記載のリモートプロシジャコ
ール処理方式において、オンラインでサーバプログラム
を備える処理手段を追加あるいは削除することによって
サーバプログラムの多重度を変更することを特徴とする
プログラム多重度変更方式。
2) In the remote procedure call processing method described in 1) above, the multiplicity of the server program is changed by adding or deleting processing means having the server program online. .

【0255】3)上記1)記載のリモートプロシジャコ
ール処理方式において、上記リモートプロシジャコール
を要求する処理手段からのリモートプロシジャコールに
応じて自らの処理を実行する処理手段が有する第1のサ
ーバプログラムと同一の処理を行う第2のサーバプログ
ラムを、上記分散処理システム内のいずれかの処理手段
に追加し、その後、上記第1のサーバプログラムを上記
分散処理システムから削除することによって、サーバプ
ログラムの入れ替えを行うことを特徴とするプログラム
オンライン入れ替え方式。
3) In the remote procedure call processing method described in 1) above, the first server program included in the processing means for executing its own processing in response to the remote procedure call from the processing means requesting the remote procedure call; A second server program that performs the same processing is added to any of the processing units in the distributed processing system, and then the first server program is deleted from the distributed processing system, thereby replacing the server program. A program online replacement method characterized by performing the following.

【0256】4)上記3)記載のリモートプロシジャコ
ール処理方式において、上記第2のサーバプログラム
は、上記第1のサーバプログラムに対して新しいバージ
ョンのサーバプログラムであることを特徴とするプログ
ラムバージョンアップ方式。
4) The remote procedure call processing method described in 3) above, wherein the second server program is a newer version of the first server program than the first server program. .

【0257】5)上記1)記載のリモートプロシジャコ
ール処理方式において、上記分散システムは、情報取得
を行う複数の処理手段と、情報提供を行う複数の処理手
段と、情報取得を行う複数の処理手段と情報提供を行う
複数の処理手段との間に介在する少なくとも1つの処理
手段が伝送ネットワークを介して相互に接続され、上記
介在する処理手段は、上記情報取得を行う処理手段の要
求内容を受信し、その要求内容に基づき、少なくとも1
つの上記情報提供を行う処理手段に対し情報提供依頼を
行い、上記介在する処理手段は、上記少なくとも1つの
情報提供を行う処理手段が提供した情報を受信し、上記
情報取得を行う処理手段の要求内容に基づいて上記受信
した情報を統合し、上記情報取得を行う処理手段に上記
統合した情報を送信するサービス提供システムであるこ
とを特徴とするサービス提供システム。
5) In the remote procedure call processing method described in 1), the distributed system includes a plurality of processing units for acquiring information, a plurality of processing units for providing information, and a plurality of processing units for acquiring information. And at least one processing means interposed between the information processing means and the plurality of processing means for providing information are connected to each other via a transmission network, and the interposed processing means receives the request content of the processing means for obtaining the information. And at least one
Requesting information provision to the two processing means for providing information, the intervening processing means receiving the information provided by the processing means for providing at least one information, and requesting the processing means for obtaining the information A service providing system, which is a service providing system that integrates the received information based on contents and transmits the integrated information to a processing unit that acquires the information.

【0258】6)上記5)記載のサービス提供システム
において、上記介在する処理手段とは別の新たな介在す
る処理手段を追加し、上記新たな介在する処理手段が、
新たな情報統合方法を用いて上記情報取得を行う処理手
段の要求内容に基づいて情報を統合して新たな質の情報
を作成し、上記情報取得を行う処理手段に上記統合した
新たな質の情報を送信することを特徴とするサービス提
供システム。
6) In the service providing system as described in 5) above, a new intervening processing unit different from the intervening processing unit is added, and the new intervening processing unit is
A new quality information is created by integrating the information based on the request content of the processing means for performing the information acquisition using the new information integration method, and the integrated new quality is processed by the processing means for performing the information acquisition. A service providing system for transmitting information.

【0259】[0259]

【発明の効果】本発明によれば、3層構造クライアント
/サーバモデルのプロシジャ実行側を多重化した場合の
リモートプロシジャコール処理方式において、このプロ
シジャ実行側が発行する多重実行要求に対して他のプロ
シジャ実行側が効率的に処理負担の軽減を図れ、さら
に、キャッシュ内容の保存期間およびキャッシュメモリ
の大きさを効果的に制御することができるものとなる。
According to the present invention, in a remote procedure call processing system in which a procedure execution side of a three-tiered client / server model is multiplexed, another procedure execution request issued by the procedure execution side is transmitted to another procedure. The execution side can efficiently reduce the processing load, and can effectively control the storage period of the cache contents and the size of the cache memory.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態によるリモートプロシジャ
コール処理方式を用いる分散システムの全体構成を示す
ブロック図である。
FIG. 1 is a block diagram showing an overall configuration of a distributed system using a remote procedure call processing method according to an embodiment of the present invention.

【図2】本発明の一実施形態によるリモートプロシジャ
コール処理方式を用いる分散システムの全体構成を示す
ブロック図である。
FIG. 2 is a block diagram showing an overall configuration of a distributed system using a remote procedure call processing method according to an embodiment of the present invention.

【図3】本発明の一実施形態によるリモートプロシジャ
コール処理方式において伝送されるRPC要求メッセー
ジのフォーマットの説明図である。
FIG. 3 is an explanatory diagram of a format of an RPC request message transmitted in a remote procedure call processing method according to an embodiment of the present invention.

【図4】本発明の一実施形態によるリモートプロシジャ
コール処理方式を用いる分散システムを構成する処理装
置のブロック図である。
FIG. 4 is a block diagram of a processing device configuring a distributed system using a remote procedure call processing method according to an embodiment of the present invention.

【図5】本発明の一実施形態によるクライアントのRP
C要求処理を示したPAD図である。
FIG. 5 illustrates a client RP according to an embodiment of the present invention.
It is a PAD diagram showing C request processing.

【図6】本発明の一実施形態による通信処理部のRPC
クライアント処理手段の処理の一例を示したPAD図で
ある。
FIG. 6 is an RPC of a communication processing unit according to an embodiment of the present invention;
FIG. 9 is a PAD diagram illustrating an example of processing of a client processing unit.

【図7】本発明の一実施形態によるRPC処理部の中の
アドレステーブルの構成図である。
FIG. 7 is a configuration diagram of an address table in an RPC processing unit according to an embodiment of the present invention.

【図8】本発明の一実施形態によるRPC処理部の中の
送信情報テーブルの構成図である。
FIG. 8 is a configuration diagram of a transmission information table in an RPC processing unit according to an embodiment of the present invention.

【図9】本発明の一実施形態による通信処理部のRPC
サーバ処理手段の受信時の処理の一例を示したPAD図
である。
FIG. 9 is an RPC of a communication processing unit according to an embodiment of the present invention;
FIG. 9 is a PAD diagram illustrating an example of a process at the time of reception of a server processing unit.

【図10】本発明の一実施形態によるRPC処理部の中
の送受信情報テーブルの構成図である。
FIG. 10 is a configuration diagram of a transmission / reception information table in an RPC processing unit according to an embodiment of the present invention.

【図11】本発明の一実施形態による処理装置内のサー
バの処理内容を示すPAD図である。
FIG. 11 is a PAD diagram showing processing contents of a server in a processing device according to an embodiment of the present invention.

【図12】本発明の一実施形態による通信処理部のRP
Cサーバ処理手段の送信時の処理の一例を示したPAD
図である。
FIG. 12 is a diagram illustrating an RP of a communication processing unit according to an embodiment of the present invention;
PAD showing an example of processing at the time of transmission by C server processing means
FIG.

【図13】本発明の一実施形態によるRPC処理部の中
のネストプロシジャ管理テーブルの構成図である。
FIG. 13 is a configuration diagram of a nest procedure management table in the RPC processing unit according to an embodiment of the present invention.

【図14】本発明の一実施形態による通信処理部のネス
トサーバ処理手段がRPC要求多重メッセージを受信し
た際に行う処理の一例を示したPAD図である。
FIG. 14 is a PAD diagram showing an example of a process performed when the nest server processing means of the communication processing unit receives the RPC request multiplex message according to the embodiment of the present invention.

【図15】本発明の一実施形態によるRPC処理部の中
の実行結果キャッシュテーブルの構成図である。
FIG. 15 is a configuration diagram of an execution result cache table in the RPC processing unit according to an embodiment of the present invention.

【図16】本発明の一実施形態によるRPC処理部の中
の入力出力対応テーブルの構成図である。
FIG. 16 is a configuration diagram of an input / output correspondence table in the RPC processing unit according to an embodiment of the present invention.

【図17】本発明の他の実施形態によるリモートプロシ
ジャコール処理方式を用いる分散システムの全体構成を
示すブロック図である。
FIG. 17 is a block diagram showing an overall configuration of a distributed system using a remote procedure call processing method according to another embodiment of the present invention.

【図18】本発明の他の実施形態によるリモートプロシ
ジャコール処理方式を用いる分散システムの全体構成を
示すブロック図である。
FIG. 18 is a block diagram showing an overall configuration of a distributed system using a remote procedure call processing method according to another embodiment of the present invention.

【図19】本発明の他の実施形態によるリモートプロシ
ジャコール処理方式において伝送されるRPC要求メッ
セージのフォーマットの説明図である。
FIG. 19 is an explanatory diagram of a format of an RPC request message transmitted in a remote procedure call processing method according to another embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1…通信媒体 2,3,4,5…処理装置 20,30,40,50…RPC処理部 21…通信処理部 21A…RPCクライアント処理手段 21B,21C…RPCサーバ処理手段 21D…RPCネストサーバ処理手段 22…クライアント 23,24,33…サーバ 24,53…ネストサーバ 100…アドレステーブル 110…送信情報テーブル 120…送受信情報テーブル 130…ネストプロシジャ管理テーブル 140…実行結果キャッシュテーブル 150…入力出力対応テーブル DESCRIPTION OF SYMBOLS 1 ... Communication medium 2, 3, 4, 5 ... Processing apparatus 20, 30, 40, 50 ... RPC processing part 21 ... Communication processing part 21A ... RPC client processing means 21B, 21C ... RPC server processing means 21D ... RPC nest server processing Means 22 Client 23 24 24 33 Server 24 53 Nest server 100 Address table 110 Transmission information table 120 Transmission / reception information table 130 Nest procedure management table 140 Execution result cache table 150 Input / output correspondence table

フロントページの続き (72)発明者 橋本 尚 神奈川県横浜市戸塚区戸塚町5030番地 株 式会社日立製作所ソフトウェア開発本部内(72) Inventor Takashi Hashimoto 5030 Totsuka-cho, Totsuka-ku, Yokohama-shi, Kanagawa Prefecture Software Development Division, Hitachi, Ltd.

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 複数の処理手段を3層以上の階層構造と
し、プロシジャ実行側の処理手段を多重化し、これらの
処理手段を伝送ネットワークにより接続した分散システ
ムにおけるリモートプロシジャコール処理方式におい
て、 リモートプロシジャコール要求メッセージを受信した処
理手段は、 上記リモートプロシジャコール要求メッセージの中に含
まれるユーザデータ部の内容に基づいて、多重要求メッ
セージを検出し、そのうちの1つを選択し、選択された
多重要求メッセージを用いて自らの処理を実行し、その
実行結果を選択された多重要求メッセージの送信元処理
手段に返すとともに、その実行結果を複製した情報を選
択されなかった多重要求メッセージの送信元処理手段に
返すとともに、 上記リモートプロシジャコール要求メッセージの中に含
まれるリモートプロシジャコールを要求された宛先の処
理手段の数の情報に基づいて、多重化されたリモートプ
ロシジャコール要求に対するキャッシュ情報を管理する
ことを特徴とするリモートプロシジャコール処理方式。
In a remote procedure call processing method in a distributed system in which a plurality of processing means have a hierarchical structure of three or more layers, processing means on a procedure execution side are multiplexed, and these processing means are connected by a transmission network, The processing means having received the call request message detects a multiplex request message based on the contents of the user data portion included in the remote procedure call request message, selects one of the multiplex request messages, and selects the selected multiplex request message. Executing its own process using the message, returning the execution result to the transmission source processing means of the selected multiplex request message, and transmitting the processing result of the multiplex request message whose information obtained by duplicating the execution result was not selected. To the remote procedure call request message A remote procedure call processing method for managing cache information for a multiplexed remote procedure call request based on information on the number of processing means of a destination requested for a remote procedure call included in a remote procedure call.
【請求項2】 請求項1記載のリモートプロシジャコー
ル処理方式において、 リモートプロシジャコールを要求する処理手段は、自処
理手段及びその要求の発生順を示すイベント識別子の情
報とリモートプロシジャコールを要求する下位の宛先の
処理手段の数の情報を付加した第1のリモートプロシジ
ャコール要求メッセージを伝送ネットワークに送出し、 上記宛先の処理手段は、多重化された処理手段であっ
て、受信した上記第1のリモートプロシジャコール要求
メッセージに基づき開始した自らの処理中に発生したさ
らに下位の処理手段に対するリモートプロシジャコール
要求のリモートプロシジャコール要求メッセージに、上
記第1のリモートプロシジャコール要求メッセージの上
記イベント識別子と上記宛先の処理装置数とを付加し
て、第2のリモートプロシジャコール要求メッセージを
伝送ネットワークに送出し、 上記第2のリモートプロシジャコール要求メッセージを
受信した上記さらに下位の処理手段は、上記リモートプ
ロシジャコール要求メッセージの中の上記宛先の処理装
置数に基づいて、多重化されたリモートプロシジャコー
ル要求に対する上記キャッシュ情報を管理することを特
徴とするリモートプロシジャコール処理方式。
2. The remote procedure call processing method according to claim 1, wherein the processing means for requesting the remote procedure call includes information on the own processing means, an event identifier indicating the order of generation of the request, and a lower order requesting the remote procedure call. Sending a first remote procedure call request message to the transmission network to which information of the number of destination processing units is added, wherein the destination processing unit is a multiplexed processing unit, and The event identifier and the destination of the first remote procedure call request message are included in a remote procedure call request message of a remote procedure call request for a lower-level processing means generated during its own processing started based on the remote procedure call request message. And the number of processing units Sending the second remote procedure call request message to the transmission network, and receiving the second remote procedure call request message, the further lower processing means comprises the processing device of the destination in the remote procedure call request message A remote procedure call processing method for managing the cache information for a multiplexed remote procedure call request based on a number.
【請求項3】 請求項1記載のリモートプロシジャコー
ル処理方式において、 リモートプロシジャコールを要求する処理手段は、 1つのリモートプロシジャコール要求に対応して同一処
理に属する複数の処理手段を呼び出すにあたり、同一処
理に属する複数の処理手段の中から要求元によって任意
に選択した1つの処理手段を呼び出し、 自処理手段及びその要求の発生順を示すイベント識別子
の情報とリモートプロシジャコールを要求する下位の宛
先の処理手段の数の情報を付加した第1のリモートプロ
シジャコール要求メッセージを伝送ネットワークに送出
し、 呼び出された処理手段(代行処理手段)は、自らの処理
を実行するとともに、上記要求元から要求された内容を
複製して残りの処理手段を呼び出し、 受信した上記第1のリモートプロシジャコール要求メッ
セージを複製して伝送ネットワークに送出し、 上記第1のリモートプロシジャコール要求メッセージを
受信したそれぞれの処理手段は、受信した上記第第1の
リモートプロシジャコール要求メッセージに基づき開始
した自らの処理中に発生したさらに下位の処理手段に対
するリモートプロシジャコール要求のリモートプロシジ
ャコール要求メッセージに、上記第1のリモートプロシ
ジャコール要求メッセージの上記イベント識別子と上記
宛先の処理装置数とを付加して、第2のリモートプロシ
ジャコール要求メッセージを伝送ネットワークに送出
し、 上記第2のリモートプロシジャコール要求メッセージを
受信した上記さらに下位の処理手段は、上記リモートプ
ロシジャコール要求メッセージの中の上記宛先の処理装
置数に基づいて、多重化されたリモートプロシジャコー
ル要求に対する上記キャッシュ情報を管理することを特
徴とするリモートプロシジャコール処理方式。
3. The remote procedure call processing method according to claim 1, wherein said processing means for requesting a remote procedure call calls a plurality of processing means belonging to the same processing in response to one remote procedure call request. One of the plurality of processing means belonging to the process is arbitrarily selected by the request source, and the information of the own processing means and the event identifier indicating the order of occurrence of the request and the lower order destination requesting the remote procedure call are called. A first remote procedure call request message to which information on the number of processing means is added is sent to the transmission network. The called processing means (proxy processing means) executes its own processing and receives a request from the request source. The first processing unit calls the remaining processing means by copying the The respective processing means, which has duplicated the procedure call request message and transmitted it to the transmission network, have received the first remote procedure call request message, have their own processing units started based on the received first remote procedure call request message. The event identifier and the number of destination processing units of the first remote procedure call request message are added to a remote procedure call request message of a remote procedure call request for lower-level processing means generated during processing, and The second lower level processing means, which has transmitted the second remote procedure call request message to the transmission network, receives the second remote procedure call request message, and processes the destination in the remote procedure call request message. A remote procedure call processing method for managing the cache information for a multiplexed remote procedure call request based on the number of processing devices.
【請求項4】 請求項2若しくは3のいづれかに記載の
リモートプロシジャコール処理方式において、 上記第1のリモートプロシジャコール要求メッセージを
受信した処理手段は、 上記第1のリモートプロシジャコール要求メッセージに
基づき開始した自らの処理中に発生したリモートプロシ
ジャコール要求の第2のリモートプロシジャコール要求
メッセージに、さらに、自らの処理中に発生した要求の
発生順を示すネストイベント通番とを付加して伝送ネッ
トワークに送出することを特徴とするリモートプロシジ
ャコール処理方式。
4. The remote procedure call processing method according to claim 2, wherein said processing means having received said first remote procedure call request message starts on the basis of said first remote procedure call request message. The second remote procedure call request message of the remote procedure call request generated during its own processing is further added with a nested event serial number indicating the order in which the requests generated during its own processing are generated and transmitted to the transmission network. A remote procedure call processing method.
【請求項5】 請求項1若しくは4のいづれかに記載の
リモートプロシジャコール処理方式において、 同一の上記イベント識別子を持つ同一処理に属する多重
要求メッセージの検出処理、あるいは同一の上記イベン
ト識別子と同一の上記ネストイベント通番を持つ同一処
理に属する多重要求メッセージの検出処理を行う期間
を、上記宛先処理装置数に等しい数の前記多重要求メッ
セージの取り込みが終了するまでとすることを特徴とす
るリモートプロシジャコール処理方式。
5. The remote procedure call processing method according to claim 1, wherein detection processing of a multiplex request message belonging to the same processing having the same event identifier or the same processing as the same event identifier is performed. A remote procedure call process, wherein a period during which a process of detecting a multiplex request message belonging to the same process having a nested event serial number is performed is completed until the number of the multiplex request messages equal to the number of the destination processing devices has been fetched. method.
JP25345396A 1996-09-25 1996-09-25 Remote procedure call processing method Pending JPH10105420A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25345396A JPH10105420A (en) 1996-09-25 1996-09-25 Remote procedure call processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25345396A JPH10105420A (en) 1996-09-25 1996-09-25 Remote procedure call processing method

Publications (1)

Publication Number Publication Date
JPH10105420A true JPH10105420A (en) 1998-04-24

Family

ID=17251613

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25345396A Pending JPH10105420A (en) 1996-09-25 1996-09-25 Remote procedure call processing method

Country Status (1)

Country Link
JP (1) JPH10105420A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011086206A (en) * 2009-10-16 2011-04-28 Canon Inc Information processing system, information processing method, and computer program
JP2012242972A (en) * 2011-05-17 2012-12-10 Nippon Telegr & Teleph Corp <Ntt> Aggregation system and method, resource management node, calculation node and aggregation processing program
JP2012242975A (en) * 2011-05-17 2012-12-10 Nippon Telegr & Teleph Corp <Ntt> Distributed parallel processing cache device and method, resource management node and program
US9436519B2 (en) 2014-04-21 2016-09-06 Fujitsu Limited Process cooperation method, process cooperation program, and process cooperation system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011086206A (en) * 2009-10-16 2011-04-28 Canon Inc Information processing system, information processing method, and computer program
US8893161B2 (en) 2009-10-16 2014-11-18 Canon Kabushiki Kaisha Information processing system, information processing method and computer-readable storage medium
JP2012242972A (en) * 2011-05-17 2012-12-10 Nippon Telegr & Teleph Corp <Ntt> Aggregation system and method, resource management node, calculation node and aggregation processing program
JP2012242975A (en) * 2011-05-17 2012-12-10 Nippon Telegr & Teleph Corp <Ntt> Distributed parallel processing cache device and method, resource management node and program
US9436519B2 (en) 2014-04-21 2016-09-06 Fujitsu Limited Process cooperation method, process cooperation program, and process cooperation system

Similar Documents

Publication Publication Date Title
US7155438B2 (en) High availability for event forwarding
JP4094752B2 (en) Transaction processing method, apparatus for executing the same, and medium storing the processing program
JP3526474B2 (en) Distribution information management system in network
US6424988B2 (en) Multicomputer system
JPH0944342A (en) Computer network system and version management method of its operating system
JPH10124470A (en) A paging mechanism for multiplexed messages with low low context switching overhead.
US6470346B2 (en) Remote computation framework
JP2005025432A (en) Transaction processing method, transaction control device, and transaction control program
JPH10326284A (en) Database system and program storage medium
JPH11328066A (en) Apparatus, method, and computer program product for supporting transactions in network management operations
JP4132738B2 (en) A computerized method of determining application server availability
JP2001184248A (en) Data access management device in distributed processing system
JPH10105420A (en) Remote procedure call processing method
CN110928911A (en) Review request processing system, method, apparatus, computer readable storage medium
CN117149381A (en) Distributed task management method, system, computing device and storage medium
JP7527404B2 (en) Data transfer device, data transfer method, and data transfer program
US8180846B1 (en) Method and apparatus for obtaining agent status in a network management application
JPH08272614A (en) Cooperative reasoning device
JPH04213126A (en) Software testing method
JP3660564B2 (en) Method for monitoring communication contents between agents, method for generating community, method for managing community, and medium recording those programs
JP2001306364A (en) Transaction processing system and recording medium thereof
CN120631267A (en) Cross-storage cluster object copying method and device, electronic device and storage medium
CN117354141A (en) Application service management method, apparatus and computer readable storage medium
CN119127903A (en) Data updating method and device, storage medium and program product
CN121029869A (en) A distributed storage middleware based on data consistency copying and consensus algorithms.