JPH06243077A - Distributed transaction processing system - Google Patents

Distributed transaction processing system

Info

Publication number
JPH06243077A
JPH06243077A JP5030984A JP3098493A JPH06243077A JP H06243077 A JPH06243077 A JP H06243077A JP 5030984 A JP5030984 A JP 5030984A JP 3098493 A JP3098493 A JP 3098493A JP H06243077 A JPH06243077 A JP H06243077A
Authority
JP
Japan
Prior art keywords
server system
processing
processing process
control program
time
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
JP5030984A
Other languages
Japanese (ja)
Inventor
Naoyuki Take
直行 武
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 JP5030984A priority Critical patent/JPH06243077A/en
Publication of JPH06243077A publication Critical patent/JPH06243077A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve reliability by preventing the generation of the shortage of processing processes when calls to the same server system are generated frequently by assigning a processing process assigned at the time of a first calling again at the time of the second and succeeding callings to the server system. CONSTITUTION:A server system control program 15 receives a service requirement from a client system control program 13 and selects one of service processing processes 16a to 16d. For example, the server system control program 15 selects the service processing process 16a to schedule. Namely, at the point of time when one server system is called first time and the processing process 16a is assigned within one global transaction, the global transaction and the processing process 16a are made to correspond to each other. Hereafter, when the same server system is called again within the same global transaction, the processing process assigned at the time of the first call is assigned again.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、クライアント・サーバ
型の分散トランザクション処理方式に関し、特に複数の
処理プロセスを有するサーバシステムの処理プロセスの
割り当て方式に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a client / server type distributed transaction processing method, and more particularly to a method for allocating processing processes in a server system having a plurality of processing processes.

【0002】[0002]

【従来の技術】従来において、この種の分散トランザク
ション処理方式として、例えば特開平2−113362
号公報に開示されたものがある。
2. Description of the Related Art Conventionally, as a distributed transaction processing system of this type, for example, Japanese Patent Laid-Open No. 113362/1990.
There is one disclosed in the publication.

【0003】この従来のクライアント・サーバ型の分散
トランザクション処理方式においては、クライアントシ
ステムから送信されたメッセージの優先度の順にサーバ
システム内に用意された複数の処理プロセスの中の空き
処理プロセスを割り当てる方式が採られていた。
In this conventional client-server type distributed transaction processing method, a free processing process among a plurality of processing processes prepared in the server system is assigned in the order of the priority of the message sent from the client system. Was taken.

【0004】すなわち、1つのグローバルトランザクシ
ョン内で同一サーバシステムが複数回コールされると、
当該サーバシステムが複数の処理プロセスを有している
場合、その時点での空き処理プロセスの1つをそれぞれ
割り当てる方式が採用されていた。
That is, when the same server system is called multiple times within one global transaction,
When the server system has a plurality of processing processes, a method of allocating one of the empty processing processes at that time has been adopted.

【0005】一方、1相または2相コミットプロトコル
を採用している分散トランザクション処理システムで
は、1つのグローバルトランザクション内で既に使用さ
れた処理プロセスは、コミット指示、またはコミット準
備指示待ちの状態となっている。従って、同一グローバ
ルトランザクション内で再度同一サーバシステムがコー
ルされた場合、既に使用された処理プロセスは割り当て
の対象とならず、別の新たな処理プロセスが割り当てら
れる。
On the other hand, in the distributed transaction processing system adopting the one-phase or two-phase commit protocol, the processing process already used in one global transaction is in a state of waiting for a commit instruction or a commit preparation instruction. There is. Therefore, when the same server system is called again within the same global transaction, the processing process that has already been used is not the target of allocation, and another new processing process is allocated.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、上記従
来の分散トランザクション処理方式においては、高負荷
のトランザクション処理時に同一サーバシステムに対す
るコールが多発した場合、処理プロセスが不足するとい
った事態が発生し、それによるトランザクション処理の
異常終了が発生し、システムの信頼性が低下するという
問題があった。
However, in the above-mentioned conventional distributed transaction processing method, when a large number of calls are made to the same server system during transaction processing with a high load, a situation occurs in which the processing process becomes insufficient, which causes a problem. There is a problem in that the transaction processing ends abnormally and the system reliability decreases.

【0007】本発明の目的は、同一サーバシステムに対
するコールが多発した場合の処理プロセス不足の発生を
防止し、システムの信頼性を向上させることができる分
散トランザクション処理方式を提供することにある。
It is an object of the present invention to provide a distributed transaction processing method capable of preventing the occurrence of a shortage of processing processes when calls to the same server system occur frequently and improving the reliability of the system.

【0008】[0008]

【課題を解決するための手段】上記目的を達成するため
に、本発明は、1つのグローバルトランザクション内で
複数の処理プロセスを有するサーバシステムが1回目に
呼び出されていずれかの処理プロセスを割り当てた時点
で当該グローバルトランザクションと当該処理プロセス
とを対応付ける手段を設け、同一グローバルトランザク
ション内での当該サーバシステムの2回目以降の呼出し
時には1回目の呼出し時に割り当てた処理プロセスを再
度割り当てるようにしたものである。
In order to achieve the above object, according to the present invention, a server system having a plurality of processing processes in one global transaction is called for the first time and any processing process is allocated. At this time, means for associating the global transaction with the processing process is provided, and the processing process assigned at the first invocation is reassigned at the second and subsequent invocations of the server system in the same global transaction. .

【0009】[0009]

【作用】上記手段によれば、あるグローバルトランザク
ション内で、あるサーバシステムが1回目にコールされ
て処理プロセスを割り当てた時点で、当該グローバルト
ランザクションと当該処理プロセスとが対応付けられ、
以後同一グローバルトランザクション内で同一サーバシ
ステムが再度コールされた場合に、1回目のコール時に
割り当てた処理プロセスが再度割り当てられ。
According to the above means, when a certain server system is first called and a processing process is allocated in a certain global transaction, the global transaction and the processing process are associated with each other,
After that, when the same server system is called again within the same global transaction, the processing process assigned at the time of the first call is reallocated.

【0010】これにより、処理プロセスの有効利用が図
れ、高負荷トランザクション処理時に同一サーバシステ
ムに対するコールが多発した場合の処理プロセス不足の
発生を防止できる。
As a result, it is possible to effectively use the processing processes, and it is possible to prevent a shortage of the processing processes when a large number of calls are made to the same server system during high-load transaction processing.

【0011】[0011]

【実施例】以下、本発明の一実施例について図面で説明
する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings.

【0012】図1は本発明を適用したによるクライアン
ト・サーバ型の分散トランザクション処理システムの一
実施例を示すシステム構成図である。
FIG. 1 is a system configuration diagram showing an embodiment of a client / server type distributed transaction processing system according to the present invention.

【0013】図において、複数のクライアントコンピュ
ータ10a〜10dと、サーバコンピュータ11とは、
ネットワーク12で接続されており、クライアントコン
ピュータ10a〜10dにはクライアントシステム制御
プログラム13とクライアントプログラム14とが、ま
たサーバコンピュータ11にはサーバシステム制御プロ
グラム15と複数のサービス処理プロセス16a〜16
dがそれぞれ設けられている。
In the figure, a plurality of client computers 10a to 10d and a server computer 11 are shown.
They are connected by a network 12, client computer control programs 13 and client programs 14 are provided to the client computers 10a to 10d, and server system control program 15 and a plurality of service processing processes 16a to 16 are provided to the server computer 11.
d are provided respectively.

【0014】クライアントシステム制御プログラム13
は、クライアントプログラム14からのサービス要求を
受け、ネットワーク12を介してその要求をサーバシス
テム制御プログラム15に伝える。
Client system control program 13
Receives a service request from the client program 14, and transmits the request to the server system control program 15 via the network 12.

【0015】サーバシステム制御プログラム15は、ク
ライアントシステム制御プログラム13からの要求を受
け、サービス処理プロセス16a〜16dのいずれかを
選択する。例えばサービス処理プロセス16aを選択
し、スケジュールする。
The server system control program 15 receives a request from the client system control program 13 and selects one of the service processing processes 16a to 16d. For example, the service processing process 16a is selected and scheduled.

【0016】サービス処理プロセス16aにより実行さ
れたサービスの結果は、サーバシステム制御プログラム
15とクライアントシステム制御プログラム13を経由
してクライアントプログラム14に返される。
The result of the service executed by the service processing process 16a is returned to the client program 14 via the server system control program 15 and the client system control program 13.

【0017】また、クライアントシステム制御プログラ
ム13とサーバシステム制御プログラム15とは1相ま
たは2相コミットプロトコルに従い連携してトランザク
ションの同期点処理を実行する。
The client system control program 13 and the server system control program 15 cooperate with each other in accordance with the one-phase or two-phase commit protocol to execute transaction synchronization point processing.

【0018】図2は分散トランザクション処理の手順を
示すフロ−チャ−トであり、クライアントプログラム1
4からのサービス要求を受けたクライアントシステム制
御プログラム13は要求されたサービス名称からサーバ
システム11を決定する(ステップ21,21)。
FIG. 2 is a flow chart showing the procedure of distributed transaction processing. The client program 1
The client system control program 13 having received the service request from the server 4 determines the server system 11 from the requested service name (steps 21 and 21).

【0019】その後、当該サーバシステム11へのサー
ビス要求が当該グローバルトランザクション内で初めて
か否かを判定し(ステップ22)、初めてでなければ、
初回要求時に当該サーバシステム11のサーバシステム
制御プログラム15から通知されたサービス処理プロセ
スのID(例えば16aのID)を送信メッセージ中の
特定のフィールドにセットする(ステップ23)。
Thereafter, it is judged whether or not the service request to the server system 11 is the first in the global transaction (step 22).
The ID of the service processing process (for example, the ID of 16a) notified from the server system control program 15 of the server system 11 at the time of the first request is set in a specific field in the transmission message (step 23).

【0020】初めての要求ならば、当該フィールドはヌ
ル値のままとする。
For the first request, the field is left with a null value.

【0021】クライアントシステム制御プログラム13
は送信メッセージを組み立てた後、それを該当するサー
バシステム制御プログラム15に送信する(ステップ2
4)。
Client system control program 13
After assembling the send message, sends it to the corresponding server system control program 15 (step 2).
4).

【0022】サーバシステム制御プログラム15は、ク
ライアントシステム制御プログラム13からのメッセー
ジを受信すると(ステップ28)、受信メッセージ中に
処理プロセスIDがセット済か否かを判定する(ステッ
プ29)。
When the server system control program 15 receives the message from the client system control program 13 (step 28), the server system control program 15 determines whether or not the process process ID has been set in the received message (step 29).

【0023】もしセット済ならば、それは同一グローバ
ルトランザクション内での2回目以降のサービス要求で
あり、次のサービス処理要求か同期点処理要求に対し待
機中の当該処理プロセスIDを持つサービス処理プロセ
ス16aを選択する(ステップ30)。
If it has been set, it is the service request for the second time and thereafter in the same global transaction, and the service processing process 16a having the corresponding process process ID waiting for the next service processing request or the sync point processing request. Is selected (step 30).

【0024】もしセット済でなければ、それはグローバ
ルトランザクション内での当該サーバシステム11に対
する最初のサービス処理要求であり、任意の空きサービ
ス処理プロセス、例えば16bを選択する(ステップ3
1)。
If it has not been set, it is the first service processing request to the server system 11 in the global transaction, and an arbitrary free service processing process, for example, 16b is selected (step 3).
1).

【0025】サーバシステム制御プログラム15は選択
したサービス処理プロセス16aをスケジュールする
(ステップ32)。
The server system control program 15 schedules the selected service processing process 16a (step 32).

【0026】スケジュールされたサービス処理プロセス
16aはサービス実行後(ステップ35)、結果をサー
バシステム制御プログラム15に送信し(ステップ3
6)、同一グローバルトランザクション内からの次のサ
ービス処理要求または同期点処理要求を待つ(ステップ
34,37)。
After the scheduled service processing process 16a executes the service (step 35), the result is sent to the server system control program 15 (step 3).
6) Wait for the next service processing request or sync point processing request from within the same global transaction (steps 34, 37).

【0027】サービス実行結果を受けたサーバシステム
制御プログラム15は、サービスを実行したサービス処
理プロセス16aの処理プロセスIDを送信メッセージ
中の特定のフィールドにセットし(ステップ38)、サ
ービス実行結果メッセージをクライアントシステム制御
プログラム13に返却する(ステップ39)。
Upon receiving the service execution result, the server system control program 15 sets the processing process ID of the service processing process 16a which has executed the service in a specific field in the transmission message (step 38), and the service execution result message is sent to the client. It is returned to the system control program 13 (step 39).

【0028】クライアントシステム制御プログラム13
は、同一グローバルトランザクション内からの同一サー
バシステムへの次のサービス要求に備え、サーバシステ
ム制御プログラム15が結果送信メッセージ中にセット
した処理プロセスIDを記憶し、サービス実行結果をク
ライアントプログラム14に返す(ステップ26,2
7)。
Client system control program 13
Prepares for the next service request from the same global transaction to the same server system, stores the processing process ID set in the result transmission message by the server system control program 15, and returns the service execution result to the client program 14 ( Steps 26 and 2
7).

【0029】図3はクライアントシステム制御プログラ
ム13とサーバシステム制御プログラム15の間でやり
取りされる送受信メッセージ40の一例を示すもので、
サービス名称フィールド41、処理プロセスIDフィー
ルド42、デ−タフィールド43が設けられ、サービス
を実行すべき、または実行したサービス処理プロセス1
6の処理プロセスIDがメッセージ40中の特定フィー
ルド42にセットされる。
FIG. 3 shows an example of a transmission / reception message 40 exchanged between the client system control program 13 and the server system control program 15.
A service name field 41, a processing process ID field 42, and a data field 43 are provided, and the service processing process 1 in which the service should be executed or has been executed.
The process process ID of 6 is set in the specific field 42 of the message 40.

【0030】本実施例によれば、同一グローバルトラン
ザクション内で同一サーバシステムが複数回コールされ
た場合、常に同一のサービス処理プロセスが再利用され
る。このため、処理プロセス不足によるトランザクショ
ン処理の異常終了を防止できる。
According to this embodiment, when the same server system is called a plurality of times within the same global transaction, the same service processing process is always reused. Therefore, it is possible to prevent abnormal termination of transaction processing due to a shortage of processing processes.

【0031】[0031]

【発明の効果】以上説明したように本発明は、1つのグ
ローバルトランザクション内で複数の処理プロセスを有
するサーバシステムが1回目に呼び出されていずれかの
処理プロセスを割り当てた時点で当該グローバルトラン
ザクションと当該処理プロセスとを対応付ける手段を設
け、同一グローバルトランザクション内での当該サーバ
システムの2回目以降の呼出し時には1回目の呼出し時
に割り当てた処理プロセスを再度割り当てるようにした
ので、高負荷トランザクション処理時に同一サーバシス
テムに対し、コールが多発する場合にも処理プロセスの
有効利用が図れ、処理プロセス不足の発生に起因するト
ランザクション処理の異常終了を防止し、システムの信
頼性を向上させることができる。
As described above, according to the present invention, when a server system having a plurality of processing processes in one global transaction is called for the first time and one of the processing processes is assigned, the global transaction and the global transaction are processed. Since a means for associating with a processing process is provided and the processing process allocated at the first invocation is re-allocated at the second and subsequent invocations of the server system in the same global transaction, the same server system is processed at the time of high-load transaction processing. On the other hand, it is possible to effectively use the processing process even when a large number of calls are made, prevent abnormal termination of transaction processing due to occurrence of a shortage of processing processes, and improve system reliability.

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

【図1】本発明を適用したクライアント・サーバ型の分
散トランザクション処理システムの一実施例を示すシス
テム構成図である。
FIG. 1 is a system configuration diagram showing an embodiment of a client / server type distributed transaction processing system to which the present invention is applied.

【図2】実施例の分散トランザクション処理を示すフロ
−チャ−トである。
FIG. 2 is a flowchart showing distributed transaction processing according to the embodiment.

【図3】送受信メッセージの構成例を示す説明図であ
る。
FIG. 3 is an explanatory diagram showing a configuration example of a transmission / reception message.

【符号の説明】 10a〜10d…クライアントコンピュータ、11…サ
ーバコンピュータ、12…ネットワーク、13…クライ
アントシステム制御プログラム、14…クライアントプ
ログラム、15…サーバシステム制御プログラム、16
a〜16d…サービス処理プログラム、40…送受信メ
ッセージ。
[Description of Reference Signs] 10a to 10d ... Client computer, 11 ... Server computer, 12 ... Network, 13 ... Client system control program, 14 ... Client program, 15 ... Server system control program, 16
a to 16d ... Service processing program, 40 ... Send / receive message.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 クライアントシステムから同一ノード内
またはネットワーク接続された他ノードのサーバシステ
ムを呼出し、当該サーバシステムが管理するリソースの
更新を行いながら1つのグローバルトランザクション処
理を実行するクライアント・サーバ型の分散トランザク
ション処理システムにおいて、1つのグローバルトラン
ザクション内で複数の処理プロセスを有するサーバシス
テムが1回目に呼び出されていずれかの処理プロセスを
割り当てた時点で当該グローバルトランザクションと当
該処理プロセスとを対応付ける手段を設け、同一グロー
バルトランザクション内での当該サーバシステムの2回
目以降の呼出し時には1回目の呼出し時に割り当てた処
理プロセスを再度割り当てることを特徴とする分散トラ
ンザクション処理方式。
1. A client-server type distribution in which a client system calls a server system in the same node or in another node connected to a network and executes one global transaction process while updating resources managed by the server system. In the transaction processing system, a means for associating the global transaction with the processing process is provided when a server system having a plurality of processing processes in one global transaction is called for the first time and any processing process is allocated. A distributed transaction processing method characterized in that when the server system is called for the second time and thereafter within the same global transaction, the processing process allocated at the time of the first call is reallocated. formula.
JP5030984A 1993-02-19 1993-02-19 Distributed transaction processing system Pending JPH06243077A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5030984A JPH06243077A (en) 1993-02-19 1993-02-19 Distributed transaction processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5030984A JPH06243077A (en) 1993-02-19 1993-02-19 Distributed transaction processing system

Publications (1)

Publication Number Publication Date
JPH06243077A true JPH06243077A (en) 1994-09-02

Family

ID=12318902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5030984A Pending JPH06243077A (en) 1993-02-19 1993-02-19 Distributed transaction processing system

Country Status (1)

Country Link
JP (1) JPH06243077A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09269925A (en) * 1996-04-02 1997-10-14 Nri & Ncc Co Ltd Large scale client server system executing load control
JPH10143455A (en) * 1996-11-08 1998-05-29 Toshiba Corp Client/server system
JP2003256394A (en) * 2002-03-05 2003-09-12 Nec Corp Transaction processing load distribution method and system therefor
JP2005302017A (en) * 2005-04-04 2005-10-27 Doonappu Corporation:Kk Network service system
US7756940B2 (en) 2001-02-05 2010-07-13 Hitachi, Ltd. Transaction processing system having service level control capabilities

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09269925A (en) * 1996-04-02 1997-10-14 Nri & Ncc Co Ltd Large scale client server system executing load control
JPH10143455A (en) * 1996-11-08 1998-05-29 Toshiba Corp Client/server system
US7756940B2 (en) 2001-02-05 2010-07-13 Hitachi, Ltd. Transaction processing system having service level control capabilities
JP2003256394A (en) * 2002-03-05 2003-09-12 Nec Corp Transaction processing load distribution method and system therefor
JP2005302017A (en) * 2005-04-04 2005-10-27 Doonappu Corporation:Kk Network service system

Similar Documents

Publication Publication Date Title
CN108958920B (en) Distributed task scheduling method and system
US6314114B1 (en) Distributed resource management
JP3585755B2 (en) Load sharing based on priority among non-communication processes in time sharing system
US6192389B1 (en) Method and apparatus for transferring file descriptors in a multiprocess, multithreaded client/server system
US6085217A (en) Method and apparatus for controlling the assignment of units of work to a workload enclave in a client/server system
EP0326671B1 (en) A computer system and a method of monitoring transient data structures of a computer system
EP0006216B1 (en) Improvements in digital data processing systems
US6360268B1 (en) Distributed automated testing system
US7080377B2 (en) Method for effective utilizing of shared resources in computerized system
US7653828B2 (en) Timeout manager
US20060206894A1 (en) Method of scheduling jobs using database management system for real-time processing
US6725455B2 (en) Method for assigning tasks, data processing system, client data processing nodes and machine-readable storage medium
WO2001065357A1 (en) Processing load distribution techniques for call centers and other processing systems
US20190014059A1 (en) Systems and methods for allocating computing resources in distributed computing
JP3888827B2 (en) Program replacement system, distributed processing system, and program replacement method
US20030028640A1 (en) Peer-to-peer distributed mechanism
CN111163140A (en) Method, apparatus and computer readable storage medium for resource acquisition and allocation
US7424712B1 (en) System and method for controlling co-scheduling of processes of parallel program
JPH06243077A (en) Distributed transaction processing system
US6990608B2 (en) Method for handling node failures and reloads in a fault tolerant clustered database supporting transaction registration and fault-in logic
CN111913784B (en) Task scheduling method and device, network element and storage medium
McGee The information management system IMS/VS, Part V: Transaction processing facilities
CN115640146A (en) Back-end service calling method and device, electronic equipment and program product
CN111309467B (en) Task distribution method and device, electronic equipment and storage medium
CN112231223A (en) Distributed automatic software testing method and system based on MQTT