[go: up one dir, main page]

JP2006120036A - Transaction transfer system - Google Patents

Transaction transfer system Download PDF

Info

Publication number
JP2006120036A
JP2006120036A JP2004309149A JP2004309149A JP2006120036A JP 2006120036 A JP2006120036 A JP 2006120036A JP 2004309149 A JP2004309149 A JP 2004309149A JP 2004309149 A JP2004309149 A JP 2004309149A JP 2006120036 A JP2006120036 A JP 2006120036A
Authority
JP
Japan
Prior art keywords
transaction
transfer
processing
transaction transfer
transfer system
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
JP2004309149A
Other languages
Japanese (ja)
Inventor
Shuichi Okamoto
修一 岡本
Satoshi Oikawa
聡 及川
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 JP2004309149A priority Critical patent/JP2006120036A/en
Publication of JP2006120036A publication Critical patent/JP2006120036A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

【課題】 接続された全処理サーバが一律にトランザクションを処理不可能な環境でも負荷分散が可能なトランザクション転送システムを提供する。
【解決手段】 複数の処理サーバ10が端末20と共にネットワーク30上に接続されて構成された負荷分散トランザクション処理システムにおいて、処理サーバ10は、端末から入力されたトランザクションの他の処理サーバへの転送の要否を決定するトランザクション転送振り分け部102を備えており、更に、CPU負荷情報取得部103だけでなく、トランザクションの転送の条件についてユーザが設定可能なトランザクション転送決定アプリケーション104を備えており、複数の処理サーバの一部が入力された一部のトランザクションの処理が不可能であるような環境下においても、最適な負荷分散を行うことを可能とした。
【選択図】 図1
PROBLEM TO BE SOLVED: To provide a transaction transfer system capable of load distribution even in an environment where all connected processing servers cannot uniformly process transactions.
In a load balancing transaction processing system configured by connecting a plurality of processing servers 10 together with a terminal 20 on a network 30, the processing server 10 transfers a transaction input from the terminal to another processing server. A transaction transfer distribution unit 102 for determining necessity, and a transaction transfer determination application 104 that can be set by a user for transaction transfer conditions in addition to the CPU load information acquisition unit 103, Even in an environment where a part of the processing server cannot process a part of the input transaction, the optimum load distribution can be performed.
[Selection] Figure 1

Description

本発明は、複数の計算機を使用して負荷を分散処理するトランザクション処理を実行するためのシステムに関わり、特に、トランザクションプログラムの転送制御に関するものである。   The present invention relates to a system for executing transaction processing for distributing a load using a plurality of computers, and more particularly to transfer control of a transaction program.

従来のクライアント/サーバ型のオンライントランザクション処理における分散トランザクション処理においては、複数台設けられた処理サーバのCPU利用率や、トランザクション毎の平均CPU使用時間に基づいて、トランザクション処理メッセージを振り分けることで、負荷分散を実現している。なお、この種の技術の一例として、例えば、以下の特許文献1が挙げられる。
特開2003−296289号公報
In distributed transaction processing in conventional client / server type online transaction processing, load is reduced by distributing transaction processing messages based on the CPU usage rate of multiple processing servers and the average CPU usage time for each transaction. Distributed. In addition, as an example of this kind of technique, the following patent document 1 is mentioned, for example.
JP 2003-296289 A

ところで、前記従来技術になる分散トランザクションシステムでは、トランザクションが、システムを構成する複数の処理サーバ内において、どの処理サーバに振り分けられても、同様に処理が可能であるということを前提として構築されている。換言すれば、システムを構成する各処理サーバは、それぞれ、他の処理サーバと同等の処理能力を持っていななければならず、そのため、一部の処理サーバだけがその処理能力に欠ける場合には、当該負荷分散トランザクションシステムを構築することは不可能であるという課題があった。   By the way, the distributed transaction system according to the prior art is constructed on the assumption that a transaction can be processed in the same manner regardless of which processing server is distributed among a plurality of processing servers constituting the system. Yes. In other words, each processing server that constitutes the system must have the same processing capability as other processing servers. Therefore, when only some processing servers lack the processing capability. There is a problem that it is impossible to construct the load balancing transaction system.

これは、例えば、トランザクションによってアクセス可能なデータベースに制限があり、そのため、処理可能な処理サーバが限定されてしまう場合には、振り分け先のサーバは当該トランザクション処理を実行できないため、トランザクション転送システムを構築できなくなってしまうことによる。   This is because, for example, there are restrictions on the databases that can be accessed by transactions, so if the processing servers that can be processed are limited, the distribution destination server cannot execute the transaction processing, so a transaction transfer system is constructed. Because it becomes impossible.

また、上記従来技術になる分散トランザクションシステムでは、例えば、システムを構成する各処理サーバのCPU負荷情報を収集して利用率を算出し、当該算出したCPU利用率を基にして負荷分散を行うため、システム内のサーバ間でCPU負荷情報を通知する手段が必要であり、更には、そのCPU負荷情報を通知するために、少なからずCPU負荷が上昇することともなる。   In the distributed transaction system according to the conventional technique, for example, the CPU load information of each processing server constituting the system is collected to calculate the usage rate, and load distribution is performed based on the calculated CPU usage rate. In addition, a means for notifying CPU load information between servers in the system is necessary, and further, in order to notify the CPU load information, the CPU load increases not a little.

加えて、上記した従来技術になる分散トランザクションシステムでは、トランザクション転送システムが提供する、各サーバシステムのCPU負荷情報を判断するアルゴリズムによって、トランザクションの振り分けが行われる。そのため、ユーザは、上記トランザクション転送システムが提供する負荷分散アルゴリズムを変更することは出来ない。そのため、例えば、入力されたトランザクションによっては、その振り分け先となるべきシステム(サーバ)をユーザが選択した方が好適な場合もあるが、しかしながら、上記従来の分散トランザクションシステムでは、ユーザの判断によっては、振り分け先となるべきシステム(サーバ)を変更することができないという課題もあった。   In addition, in the distributed transaction system according to the conventional technique described above, transactions are distributed by an algorithm provided by the transaction transfer system for determining CPU load information of each server system. Therefore, the user cannot change the load distribution algorithm provided by the transaction transfer system. Therefore, for example, depending on the input transaction, it may be preferable for the user to select a system (server) to be distributed to. However, in the conventional distributed transaction system described above, depending on the user's judgment There is also a problem that the system (server) to be a distribution destination cannot be changed.

そこで、本発明は、上述した従来技術における課題に鑑みて達成されたものであり、その目的は、ネットワーク上に接続された複数の処理サーバの全てが、上述したように、一律に、全てのトランザクションを処理することが出来ないような環境下においても、構築が可能な負荷分散トランザクションシステムを提供することにある。   Therefore, the present invention has been achieved in view of the problems in the prior art described above, and the object thereof is that all of the plurality of processing servers connected on the network are all uniform as described above. An object of the present invention is to provide a load balancing transaction system that can be constructed even in an environment where transactions cannot be processed.

また、本発明の他の目的は、負荷分散システムが判断したトランザクション転送を、適宜、ユーザが変更することの可能な負荷分散トランザクションシステムを提供することにある。   Another object of the present invention is to provide a load balancing transaction system in which a user can appropriately change the transaction transfer determined by the load balancing system.

上記目的を達成するため、本発明によれば、まず、複数の処理サーバが端末と共にネットワーク上に接続されて構成された負荷分散トランザクション処理システムであって、前記複数の処理サーバの一部が入力される一部のトランザクションの処理が不可能であるものにおいて、前記処理サーバは、前記端末から入力されたトランザクションの他の処理サーバへの転送の要否を決定する手段を備えており、更に、前記トランザクションの転送の条件についてユーザが設定可能なトランザクション転送決定手段を備えているトランザクション転送システムが提供される。   In order to achieve the above object, according to the present invention, first, there is provided a load balancing transaction processing system configured by connecting a plurality of processing servers together with a terminal on a network, wherein a part of the plurality of processing servers is input. In some of the transactions that cannot be processed, the processing server includes means for determining whether or not the transaction input from the terminal needs to be transferred to another processing server. There is provided a transaction transfer system including a transaction transfer determination means that can be set by a user with respect to the conditions for transferring the transaction.

また、本発明によれば、前記に記載したトランザクション転送システムにおいて前記ユーザが設定可能なトランザクション転送決定手段は、前記端末の名称である入力元端末名称及び/又は入力トランザクションの名称に基づいて入力されたトランザクションの転送要否を決定するようにする、又は、当該トランザクション転送システムを構成する前記処理サーバにおけるリソースに応じて入力されるトランザクションの転送先を設定することが可能であることが、又は、当該トランザクション転送システムを構成する前記処理サーバのCPU負荷に関する統計データに基づいて転送条件を予め設定可能な定義手段を有し、もって、予め設定した前記定義手段による設定条件によってトランザクションの転送要否を判断して負荷分散を行うものであることが好ましい。   Further, according to the present invention, in the transaction transfer system described above, the transaction transfer determination means that can be set by the user is input based on an input source terminal name and / or an input transaction name that is a name of the terminal. It is possible to determine whether or not to transfer a transaction, or to set a transfer destination of a transaction that is input according to the resource in the processing server constituting the transaction transfer system, or It has definition means that can set transfer conditions in advance based on statistical data on the CPU load of the processing server that constitutes the transaction transfer system, and whether transfer of transactions is necessary or not according to the preset setting conditions by the definition means. Judgment and load balancing It is preferable that.

更に、本発明によれば、前記に記載したトランザクション転送システムにおいて、前記他の処理サーバへの転送の要否を決定する手段は、当該トランザクション転送システムを構成する各処理サーバのCPU利用率に基づいて決定するものであることが好ましい。   Furthermore, according to the present invention, in the transaction transfer system described above, the means for determining the necessity of transfer to the other processing server is based on the CPU utilization rate of each processing server constituting the transaction transfer system. It is preferable that they are determined.

即ち、上述した本発明になるトランザクション転送システムによれば、当該処理システムを構成する複数の処理サーバの一部において、例えば、リソースの違いなどを原因とし、入力元の端末や入力されるトランザクションによって、当該トランザクションを処理可能なシステムが限定される場合においても、特定の処理システムをトランザクションの転送対象外にしたり、処理可能な処理サーバだけをトランザクションの転送対象にしたりすることができ、もって、上述したように、一律に、全てのトランザクションを処理することが出来ないような環境下においても構築が可能な、負荷分散トランザクションシステムを提供することが可能となる。   That is, according to the transaction transfer system according to the present invention described above, in some of a plurality of processing servers constituting the processing system, for example, due to a difference in resources, depending on an input source terminal or an input transaction. Even when the system capable of processing the transaction is limited, a specific processing system can be excluded from the transaction transfer target, or only the process server that can be processed can be the transaction transfer target. As described above, it is possible to provide a load balancing transaction system that can be constructed even in an environment where all transactions cannot be processed uniformly.

なお、トランザクションの転送要否の判断要素としてCPU負荷情報を使用せずに、即ち、CPU負荷に関する統計データによってあらかじめ設定した定義を基にしてトランザクションの転送要否を判断し負荷分散を行うことも可能であり、これによれば、特に、CPU負荷情報情報収集のためにCPU負荷が上昇するのを抑止することができる。   Note that the CPU load information is not used as a determination factor for determining whether or not to transfer a transaction, that is, it is possible to determine whether or not to transfer a transaction based on a definition set in advance based on statistical data related to CPU load and perform load distribution. It is possible, and according to this, it is possible to suppress an increase in CPU load especially for collecting CPU load information information.

以下、添付の図面を用い、本発明の実施の形態について詳細に説明する。
図1は、本発明になる一実施の形態によるトランザクション転送システムの構成の一例を示すブロック図である。
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 is a block diagram showing an example of the configuration of a transaction transfer system according to an embodiment of the present invention.

図1にも示すように、本発明になるトランザクション転送システムは、並行(並列)動作する複数台の処理サーバ10と共に、複数台の端末20とで構成される。なお、これら複数の処理サーバ10及び端末20は、例えば、ネットワーク30を介して、それぞれ接続されている。また、上記の各処理サーバ10は、その構成要素として、少なくとも、主記憶装置100と、演算処理部を構成するCPU(Central Processing Unit)200と共に、その一部に、以下に詳細に説明する定義情報300を有している。なお、ここで、例えば、リソース等を原因として、その一部のトランザクション処理が行えない場合など、上記のネットワーク30上に接続された複数の処理サーバ10の全てが、一律に、端末20からの全てのトランザクションを処理することが出来るようにはなっていない。具体的には、例えば、後にも詳細に説明するが、所定のデータベース処理については、当該トランザクション転送システムを構成する複数の処理サーバ10内の一部しか処理することが出来ない環境となっている。   As shown in FIG. 1, the transaction transfer system according to the present invention includes a plurality of processing servers 10 operating in parallel (parallel) and a plurality of terminals 20. Note that the plurality of processing servers 10 and the terminals 20 are connected to each other via, for example, the network 30. Each of the processing servers 10 includes, as its constituent elements, at least a main storage device 100 and a CPU (Central Processing Unit) 200 that constitutes an arithmetic processing unit, a part of which is defined in detail below. It has information 300. Here, for example, when a part of transaction processing cannot be performed due to a resource or the like, all of the plurality of processing servers 10 connected on the network 30 are uniformly transmitted from the terminal 20. Not all transactions can be processed. Specifically, for example, as will be described in detail later, the predetermined database processing is an environment in which only a part of the plurality of processing servers 10 constituting the transaction transfer system can be processed. .

また、上記の主記憶装置100は、図にも明らかなように、上記ネットワーク30を介して他の処理サーバ10や端末20との間で実行される通信を管理するためのプログラムを格納した通信管理部101と、例えば、各端末20からら入力された負荷を分散処理するトランザクション処理を実行するためのプログラムを格納したトランザクション転送振り分け部102と、当該サーバ10を含め、トランザクション転送システムを構成する他のサーバ10を構成する上記CPU200の負荷情報を取得するためのプログラムを格納したCPU負荷情報取得部103と、更には、後にも詳細に説明するが、トランザクションの転送を決定するためのプログラムを格納したトランザクション転送決定アプリケーション104とを有する。なお、上記処理サーバ10と、ネットワーク30に接続された端末20や他の処理サーバ10と間の通信は、上記した通信管理部101を介して行われる。   Further, as is apparent from the figure, the main storage device 100 is a communication storing a program for managing communication executed with other processing servers 10 and terminals 20 via the network 30. A transaction transfer system is configured including the management unit 101, for example, a transaction transfer distribution unit 102 that stores a program for executing transaction processing for distributed processing of loads input from the terminals 20, and the server 10. The CPU load information acquisition unit 103 storing a program for acquiring the load information of the CPU 200 constituting the other server 10, and a program for determining transaction transfer, as will be described in detail later. And a stored transaction transfer decision application 104. Communication between the processing server 10 and the terminal 20 connected to the network 30 or another processing server 10 is performed via the communication management unit 101 described above.

また、定義情報300は、やはり、記憶装置から構成されており、そして、図示のように、その内部には、後にも詳細を説明するが、他システム情報定義301、転送条件定義302、転送先システム定義303、そして、CPU負荷バランス定義304を備えている。   The definition information 300 is also composed of a storage device, and, as shown in the figure, the details will be described later, but other system information definition 301, transfer condition definition 302, transfer destination A system definition 303 and a CPU load balance definition 304 are provided.

上述した処理サーバ10の構成において、上記トランザクション転送振り分け部102は、更に詳細に説明すると、上述した通信管理部101を介して、ネットワーク30に接続された端末20から入力されたトランザクションの振り分け処理を行うが、このトランザクションの振り分けは、上記定義情報300、CPU負荷情報取得部103、及び/又は、トランザクション転送決定アプリケーション104からの情報を基にして、例えば、上記端末20から入力されたトランザクションを自サーバ内で処理を行うのか否か、更には、自サーバ内で処理を行なわない場合、他の処理サーバ20のどの処理サーバ(振り分け先)に当該トランザクションを転送するのかを判断することによって行う。   In the configuration of the processing server 10 described above, the transaction transfer distribution unit 102 performs a distribution process of transactions input from the terminal 20 connected to the network 30 via the communication management unit 101 described above. However, this transaction distribution is performed based on information from the definition information 300, the CPU load information acquisition unit 103, and / or the transaction transfer determination application 104. Whether or not processing is to be performed within the server, and if processing is not performed within the server itself, is determined by determining which processing server (distribution destination) of the other processing server 20 is to transfer the transaction.

一方、上記のCPU負荷情報取得部103は、ネットワーク30上に接続された、上記トランザクション転送システムを構成する各処理サーバのCPU利用率を取得し、その取得したCPU利用率をトランザクション転送振り分け部102に対して、CPU利用率の情報として提供する。   On the other hand, the CPU load information acquisition unit 103 acquires the CPU usage rate of each processing server included in the transaction transfer system connected to the network 30, and uses the acquired CPU usage rate as the transaction transfer distribution unit 102. Is provided as information on the CPU usage rate.

更に、上記のトランザクション転送決定アプリケーション104は、上記で説明した各処理サーバのCPU利用率情報、及び/又は、上記トランザクション転送振り分け部102が決定した振り分け先についての情報を基に、入力されたトランザクションの振り分け先を変更(決定)するためのインタフェースを提供する。これによれば、ユーザは、例えば、その業務内容に応じて、後にその一例を説明するが、トランザクションの振り分けて転送するためのトランザクション転送決定アプリケーション104を作成することが可能となる。即ち、当該トランザクション転送決定アプリケーション104によれば、ユーザは、例えば、その必要性や特殊性などに応じて、適宜、自在にトランザクション転送方法をチューニングすることが可能となる。   Further, the transaction transfer determination application 104 described above is based on the CPU utilization rate information of each processing server described above and / or the input transaction information based on the information on the distribution destination determined by the transaction transfer distribution unit 102. Provides an interface for changing (determining) the distribution destination. According to this, the user can create a transaction transfer determination application 104 for distributing and transferring transactions, for example, according to the business contents, which will be described later. That is, according to the transaction transfer determination application 104, the user can freely tune the transaction transfer method as appropriate in accordance with, for example, the necessity or speciality thereof.

次に、上記定義情報300は、上述したように、システム情報定義301と、転送条件定義302と、転送先システム定義303と、CPU負荷バランス定義304とで構成されており、これらの各定義の一例が、添付の図2〜図5に示されている。これらの各定義について、以下に詳細に説明する。   Next, the definition information 300 is composed of the system information definition 301, the transfer condition definition 302, the transfer destination system definition 303, and the CPU load balance definition 304, as described above. An example is shown in the attached FIGS. Each of these definitions will be described in detail below.

初めに、システム情報定義301の一例を、図2により説明する。
このシステム情報定義301は、「自システム名称」401と、「他システム名称」402とによって構成される。具体的には、この「自システム名称401」には、各処理サーバ10が、自己のシステムを識別するために使用するシステム名称を定義する。なお、この図2の例では、「自システム名称」として、「SYSTEM1」を定義している。一方、「他システム名称」402には、トランザクションの転送先の候補となる、他システムの名称を定義する。図2の例の場合、トランザクションの転送先システムの候補として、他の処理サーバであるシステムが、その名称「SYSTEM2」、「SYSTEM3」…として定義されることとなる。
First, an example of the system information definition 301 will be described with reference to FIG.
This system information definition 301 includes “own system name” 401 and “other system name” 402. Specifically, the “own system name 401” defines a system name used by each processing server 10 to identify its own system. In the example of FIG. 2, “SYSTEM1” is defined as “own system name”. On the other hand, “other system name” 402 defines the name of another system that is a candidate for a transaction transfer destination. In the case of the example in FIG. 2, systems that are other processing servers are defined as the names “SYSTEM2”, “SYSTEM3”,...

次に、転送条件定義302の一例を、図3により説明する。なお、この図3に示す例では、トランザクションが入力される端末(「端末定義」501)と、転送されるべきトランザクション(「トランザクション定義」502)に関する定義が、その「名称」503と共に、「転送対象有無」504とによって定義されている。   Next, an example of the transfer condition definition 302 will be described with reference to FIG. In the example shown in FIG. 3, the definition regarding the terminal (“terminal definition” 501) to which the transaction is input and the transaction to be transferred (“transaction definition” 502) are displayed together with the “name” 503 and “transfer”. It is defined by “existence of target” 504.

即ち、上記転送条件定義302は、「端末定義」501と「トランザクション定義」502とで構成される。なお、この「端末定義」501には、当該処理サーバ10に接続される複数の端末20について、その情報を定義する。例えば、その端末の「名称」503には、当該端末を識別するための端末名称を定義する。この図3の例では、当該処理サーバ10に接続される複数の端末として、「TERMA」、「TERMAB」、そして、「TERMC」が定義されている。また、入力されるトランザクションとしては、「TRANA」、「TRANB」、そして、「TRANC」が定義されている。   That is, the transfer condition definition 302 includes a “terminal definition” 501 and a “transaction definition” 502. The “terminal definition” 501 defines information about a plurality of terminals 20 connected to the processing server 10. For example, in the “name” 503 of the terminal, a terminal name for identifying the terminal is defined. In the example of FIG. 3, “TERMA”, “TERMAB”, and “TERMMC” are defined as a plurality of terminals connected to the processing server 10. Also, “TRANA”, “TRANB”, and “TRANC” are defined as the input transactions.

更に、「転送対象有無」504では、該当する端末から入力されたトランザクションを転送対象とするのか否かを指定する。即ち、ここで転送対象としない(具体的には、「転送」を定義せず、空欄にしておく)場合には、該当する端末から入力されたトランザクションは、必ず、当該処理サーバの自システム内で処理されることを意味する。逆に、ここで転送対象とした(具体的には、「転送」を定義する)場合は、自システムだけでなく、更に、他の処理サーバのシステムをも含めてトランザクションの転送を可能とし、もって、最適なシステムでトランザクションを処理することが可能となる。なお、この図3の例の場合には、上記の「TERMA」及び「TERMC」が転送対象となる端末となる。   Further, “Transfer target presence / absence” 504 designates whether or not a transaction input from the corresponding terminal is to be transferred. In other words, if it is not subject to transfer here (specifically, “transfer” is not defined and is left blank), the transaction input from the corresponding terminal is always in the local system of the processing server. It means that it is processed by. On the contrary, when it is a transfer target here (specifically, “transfer” is defined), it is possible to transfer a transaction including not only the own system but also other processing server systems, Therefore, it becomes possible to process the transaction with an optimum system. In the case of the example in FIG. 3, the above “TERMA” and “TERMMC” are terminals to be transferred.

また、「トランザクション定義」502では、各端末20から入力されるトランザクションに関しての情報を定義する。より具体的には、その「名称」503には、入力されたトランザクションを識別するための情報として、例えば、トランザクション名称を、更に、その「転送対象有無」504には、当該入力されたトランザクションを転送の対象とするのか否かを指定する。なお、ここでも、転送の対象としない場合(具体的には、「転送」を定義せず、空欄にしておく)には、入力されたトランザクションは、必ず、当該処理サーバの自システム内で処理されることを意味する。逆に、ここで転送対象とした場合は、当該トランザクションは、当該処理サーバの自システムだけでなく、他の処理サーバのシステムをも含めてトランザクションの転送を可能とし、もって、最適なシステムでトランザクションを処理することが可能となる。なお、この図3の例の場合には、「TRANA」と「TRANC」が、転送の対象となるトランザクションとして定義されている。   In the “transaction definition” 502, information about a transaction input from each terminal 20 is defined. More specifically, the “name” 503 includes, for example, a transaction name as information for identifying the input transaction, and the “transfer target presence / absence” 504 includes the input transaction. Specify whether or not to transfer. Note that here again, if the transaction is not to be transferred (specifically, “transfer” is not defined and is left blank), the input transaction must be processed within its own system. Means that On the other hand, when the transaction is to be transferred here, the transaction can be transferred not only in the processing server's own system but also in the other processing server's system. Can be processed. In the example of FIG. 3, “TRANA” and “TRANC” are defined as transactions to be transferred.

次に、転送先システム定義303の一例を、添付の図4により説明する。なお、この図4に示す例では、上述したトランザクションと、その転送先となる作業サーバ10のシステムとの間の対応関係を定義するものとして示している。   Next, an example of the transfer destination system definition 303 will be described with reference to FIG. In the example shown in FIG. 4, the correspondence between the above-described transaction and the system of the work server 10 that is the transfer destination is defined as being defined.

まず、「トランザクション名称」601には、上記図3に示した「トランザクション定義」502において定義されたトランザクションの中から、その名称を指定して定義する。具体的には、ここでは、2つのトランザクション「TRANA」と「TRANB」とが定義されている。   First, the “transaction name” 601 is defined by specifying its name from the transactions defined in the “transaction definition” 502 shown in FIG. Specifically, here, two transactions “TRANA” and “TRANB” are defined.

一方、「転送先システム」602には、入力されたトランザクションの転送先の候補が、作業サーバ10のシステムの名称によって定義されている。具体的には、この図4の例の場合は、その名称が「TRANA」であるトランザクションについては、2つの作業サーバ「SYSTEM2」と「SYSTEM3」とが、その転送先の候補となるが、一方、その名称が「TRANB」であるトランザクションについては、1つの作業サーバ「SYSTEM3」だけが、その転送先の候補となる。このように、入力される各トランザクションに対し、その転送先システムを定義することが可能であることによれば、例えば、「TRANB」の名称のトランザクションを処理するために必要なデータベースが、トランザクション転送システムを構成する「SYSTEM2」の名称の作業サーバには存在しないが、しかしながら、他の作業サーバである「SYSTEM3」には存在しているような場合には、このような定義が有効であり、そして、これによれば、一律に、全てのトランザクションを処理することが出来ないような環境下においても、最適なシステムでトランザクションを処理することが可能な負荷分散トランザクションシステムを構築することが可能となる。   On the other hand, in the “transfer destination system” 602, candidates for the transfer destination of the input transaction are defined by the system name of the work server 10. Specifically, in the example of FIG. 4, for the transaction whose name is “TRANA”, two work servers “SYSTEM2” and “SYSTEM3” are candidates for the transfer destination. For a transaction whose name is “TRANB”, only one work server “SYSTEM3” is a candidate for the transfer destination. In this way, for each input transaction, it is possible to define a transfer destination system. For example, a database required for processing a transaction named “TRANB” Such a definition is effective when it does not exist in the work server with the name “SYSTEM2” constituting the system, but exists in “SYSTEM3” which is another work server. And according to this, it is possible to construct a load balancing transaction system that can process transactions with an optimal system even in an environment where all transactions cannot be processed uniformly. Become.

次に、CPU負荷バランス定義304の一例について、添付の図5を参照しながら説明する。このCPU負荷バランス定義304は、図からも明らかなように、例えば、「CPU負荷情報使用有無」701、「CPU負荷情報収集間隔」702、「負荷分散しきい値上限」703、そして、「負荷分散しきい値下限」704とによって構成されている。   Next, an example of the CPU load balance definition 304 will be described with reference to the attached FIG. As is apparent from the figure, the CPU load balance definition 304 includes, for example, “CPU load information use / non-use” 701, “CPU load information collection interval” 702, “load distribution threshold upper limit” 703, and “load Dispersion threshold lower limit "704.

まず、上記「CPU負荷情報使用有無」701では、上述したCPU負荷情報取得部103からのCPU負荷情報を使用して、トランザクション転送を行うかどうかを指定する。なお、この「CPU負荷情報使用有無」701において、「使用」を指定した場合は、負荷分散トランザクションシステムを構成する作業サーバ20の各システムのCPU負荷情報を基に、トランザクション転送の要否につて判断が行われる。これとは逆に、ここで「未使用」を指定した場合には、上述したCPU負荷情報取得部103による負荷情報取得処理は作動せず、上記図3に示した転送条件定義302の指示に従って、トランザクションの転送要否を判断することとなる。   First, in the “CPU load information use presence / absence” 701, the CPU load information from the CPU load information acquisition unit 103 described above is used to specify whether or not to perform transaction transfer. If “use” is designated in the “use / non-use of CPU load information” 701, the necessity of transaction transfer is determined based on the CPU load information of each system of the work server 20 constituting the load balancing transaction system. Judgment is made. On the contrary, when “unused” is designated here, the load information acquisition process by the CPU load information acquisition unit 103 described above does not operate, and in accordance with the instruction of the transfer condition definition 302 shown in FIG. Therefore, it is determined whether or not the transaction transfer is necessary.

なお、ここで、上記CPU負荷情報を使用した場合には、当該CPU負荷情報を収集するための処理(即ち、負荷情報取得処理)が動作する。そのため、その処理のためのCPU200の負荷が増加することとなる。そこで、例えば、ユーザが、このCPU負荷情報収集に必要なCPU負荷上昇を抑止したいと判断した場合には、上記の「CPU負荷情報使用有無」701では「未使用」を指定してCPU負荷情報取得部103による負荷情報取得処理は作動せず、これに代えて、例えば、ユーザ自身が、このCPU負荷に関する統計データ等を基にして、負荷分散のシナリオを、上記図3の転送条件定義302で予め設定しておくことも可能である。   Here, when the CPU load information is used, a process for collecting the CPU load information (that is, a load information acquisition process) operates. Therefore, the load on the CPU 200 for the processing increases. Therefore, for example, when the user decides to suppress the increase in CPU load necessary for collecting the CPU load information, the “CPU load information used / not used” 701 designates “unused” to specify the CPU load information. The load information acquisition process by the acquisition unit 103 does not operate, and instead, for example, the user himself / herself creates a load distribution scenario based on the statistical data on the CPU load and the like, and the transfer condition definition 302 of FIG. It is also possible to set in advance.

また、上記の「CPU負荷情報使用有無」701において「使用」を指定した場合には、更に、「CPU負荷情報収集間隔」702、「負荷分散しきい値上限」703、そして、「負荷分散しきい値下限」704についても定義を行うこととなる。なお、「CPU負荷情報収集間隔」702では、上記CPU負荷情報の収集を行う間隔時間を、例えば、秒単位で指定する。この「CPU負荷情報収集間隔」を短くすればする程、よりリアルタイムに、各システムのCPU負荷情報を把握することが可能となり、そのためより正確な負荷分散が図れることとなるが、しかしながら、その一方、その分だけ、即ち、CPU負荷情報収集に必要な処理だけ、上記CPU200の負荷上昇を招くこととなる。他方、この「CPU負荷情報収集間隔」を長く設定することによれば、CPU負荷の上昇を軽減することができるが、しかしながら、トランザクション転送システムにおける他の作業サーバを構成するシステムのCPU負荷情報に関し、タイムラグが発生することとなり、各システムのCPU負荷情報のリアルタイムな把握が不可能となり、正確な負荷分散が困難になる。   Further, when “use” is designated in the “use / non-use of CPU load information” 701, “CPU load information collection interval” 702, “load distribution threshold upper limit” 703, and “load distribution The definition of “threshold lower limit” 704 is also made. In the “CPU load information collection interval” 702, an interval time for collecting the CPU load information is specified in units of seconds, for example. The shorter this “CPU load information collection interval” is, the more real-time CPU load information can be ascertained, so that more accurate load distribution can be achieved. Therefore, the load of the CPU 200 is increased only by that amount, that is, only the processing necessary for collecting the CPU load information. On the other hand, by setting this “CPU load information collection interval” long, it is possible to reduce the increase in CPU load. However, however, it relates to CPU load information of a system constituting another work server in the transaction transfer system. As a result, a time lag occurs, making it impossible to grasp the CPU load information of each system in real time, and it is difficult to accurately distribute the load.

更に、「負荷分散しきい値上限」703には、自システムが過負荷と判断するための基準となる、上記CPU利用率の上限値を設定する。これによれば、自システムのCPU利用率が、上記設定した「負荷分散しきい値上限」703を超えた時、他システムのCPU利用率を基にして、トランザクションの転送要否判断を行うこととなる。   Further, in the “load distribution threshold upper limit” 703, the upper limit value of the CPU utilization rate, which is a reference for determining that the own system is overloaded, is set. According to this, when the CPU usage rate of the own system exceeds the above-mentioned “load distribution threshold upper limit” 703, the transaction transfer necessity determination is performed based on the CPU usage rate of the other system. It becomes.

また、「負荷分散しきい値下限」704には、上記のようにして自システムが過負荷と判断した後、CPU利用率が減少した場合、過負荷状態を終了したこをと判断するための基準となるCPU利用率を設定する。なお、この図5の場合には、CPU利用率が50%を超えると過負荷状態と判断され、その後CPU利用率が30%を下回ると過負荷状態から解除されたと判断される。なお、過負荷状態から解除されたと判断されると、トランザクションの転送が終了する。   In addition, the “load distribution threshold lower limit” 704 is used to determine that the overload state has ended when the CPU usage rate has decreased after the system has been determined to be overloaded as described above. Set the reference CPU utilization. In the case of FIG. 5, when the CPU usage rate exceeds 50%, it is determined that the CPU is overloaded. When the CPU usage rate is below 30%, it is determined that the CPU is released from the overload state. If it is determined that the overload state has been released, the transfer of the transaction ends.

続いて、上記にその構成の詳細を説明した本発明になるトランザクション転送システムにおける、トランザクション転送要否を行うための動作について、添付の図6と図7を参照しながら詳細に説明する。なお、これら図6及び図7は、上述した処理サーバ10により実行される、トランザクション転送要否判断を行うための処理の流れを示す、所謂、フローチャートである。   Next, the operation for performing transaction transfer necessity in the transaction transfer system according to the present invention, the configuration of which has been described in detail above, will be described in detail with reference to FIGS. 6 and 7. 6 and 7 are so-called flowcharts showing the flow of processing for determining whether transaction transfer is necessary, which is executed by the processing server 10 described above.

処理が開始すると、図6に示すように、まず初めに、端末20から処理サーバ10に対し、通信管理部101を介して、トランザクションが入力される(ステップ801)。すると、処理サーバ10では、そのトランザクション転送振り分け部102の処理が走行する(開始する)。   When the process starts, as shown in FIG. 6, first, a transaction is input from the terminal 20 to the processing server 10 via the communication management unit 101 (step 801). Then, in the processing server 10, the processing of the transaction transfer distribution unit 102 runs (starts).

まず、トランザクション転送振り分け部102では、転送条件定義302を基に、トランザクション処理の入力元である端末や、入力されたトランザクションが転送条件を満たしているか否かをチェックする(ステップ802、ステップ803)。なお、ここで、転送の判断に使用される転送条件定義302では、既に上記の図3により説明したように、転送の対象となる入力元の端末とトランザクションとが定義されている。例えば、入力元の端末名称が「TERMA」であり、かつ、そこで入力されたトランザクションの名称が「TRANA」の場合は、いずれも上記のトランザクション転送条件を満たしている(図の「Y」)。そのため、処理はステップ804へ進む。一方、入力元である端末や入力されたトランザクションが、上記のトランザクション転送条件を満たさなかった(図の「N」)場合には、トランザクションの転送を行わず、当該トランザクション処理を入力した処理サーバ10が、自己のシステム内で処理を行い(ステップ805)、その後、終了する。   First, the transaction transfer distribution unit 102 checks, based on the transfer condition definition 302, the terminal that is the input source of the transaction process and whether the input transaction satisfies the transfer condition (steps 802 and 803). . Here, in the transfer condition definition 302 used for transfer determination, as described above with reference to FIG. 3, the input source terminal and the transaction to be transferred are defined. For example, when the terminal name of the input source is “TERMA” and the name of the transaction input there is “TRANA”, both satisfy the above transaction transfer conditions (“Y” in the figure). Therefore, the process proceeds to step 804. On the other hand, if the input source terminal or the input transaction does not satisfy the above transaction transfer condition (“N” in the figure), the transaction server 10 is not transferred and the processing server 10 that has input the transaction processing However, it performs processing in its own system (step 805) and then ends.

上記のステップ803において、入力されたトランザクションが上述したトランザクション転送条件302を満たしている(「Y」)と判定された場合は、次に、上述したCPU負荷バランス定義304(図5を参照)に定義されているCPU負荷情報をチェックし(ステップ804)、更に、当該CPU負荷情報を使用すべきか否かを判断する(ステップ806)。これは、上記において図5を参照して説明したように、CPU負荷バランス定義304においては当該CPU負荷情報を使用することが指定されている(「CPU負荷情報使用有無」において「使用」が設定されている)ことから、その場合には、ステップ807へ進む。このステップ807では、上記図1に示した処理サーバ10の主記憶装置100を構成するCPU負荷情報取得部103を起動して、当該処理サーバ自体のシステムにおける現在のCPU利用率を取得する(ステップ807)。   If it is determined in the above step 803 that the input transaction satisfies the transaction transfer condition 302 described above (“Y”), the CPU load balance definition 304 (see FIG. 5) described above is set. The defined CPU load information is checked (step 804), and further, it is determined whether or not the CPU load information should be used (step 806). As described above with reference to FIG. 5, the CPU load balance definition 304 specifies that the CPU load information is to be used ("Use" is set in "CPU load information use / not used"). In this case, the process proceeds to step 807. In step 807, the CPU load information acquisition unit 103 constituting the main storage device 100 of the processing server 10 shown in FIG. 1 is activated to acquire the current CPU utilization rate in the system of the processing server itself (step 807). 807).

その後、CPU負荷情報を使用することが指定されている場合には、さらに、当該処理サーバは、自システムが過負荷状態か否かをチェックする(ステップ808)。なお、この場合にも、上記図5で説明したCPU負荷バランス定義304における「負荷分散しきい値上限」703を使用する。即ち、自システムが過負荷状態か否かは、CPU負荷バランス定義304において指定された上限値と、取得された現在のCPU利用率の推移とによって決定される。その結果、当該処理サーバ10の自システムが過負荷状態にある(「Y」)と判断された場合には、ステップ809に進む。他方、自システムが過負荷状態ではない(「N」)と判断された場合には、当該入力されたトランザクションの処理を自システム、即ち、当該処理サーバ10自身に決定し(ステップ811)、図のノード(1)を介して、以下に図7で説明するステップ901へ進む。加えて、上記のステップ803において、上記のCPU負荷情報を使用しないことが指定されている(「CPU負荷情報使用有無」において「使用」が設定されていない)場合には、上記のステップ807及び808の処理をスキップし、やはり、上記のステップ809に進む。   Thereafter, when it is specified that the CPU load information is to be used, the processing server further checks whether or not its own system is in an overload state (step 808). In this case as well, the “load distribution threshold upper limit” 703 in the CPU load balance definition 304 described with reference to FIG. 5 is used. That is, whether or not the own system is in an overload state is determined by the upper limit value specified in the CPU load balance definition 304 and the acquired transition of the current CPU utilization rate. As a result, if it is determined that the own system of the processing server 10 is in an overload state (“Y”), the process proceeds to step 809. On the other hand, if it is determined that the local system is not overloaded (“N”), the processing of the input transaction is determined by the local system, that is, the processing server 10 itself (step 811). The process proceeds to step 901 described below with reference to FIG. In addition, when it is specified in the above step 803 that the CPU load information is not used (“use” is not set in “use / non-use of CPU load information”), the above steps 807 and The process of 808 is skipped and the process proceeds to step 809 as described above.

このステップ809では、転送可能な他システム(他の処理サーバ10)があるか否かをチェックする。その結果、他の転送可能なシステムが存在する(「Y」)と判定された場合には、当該入力されたトランザクションの転送先システムを決定する(ステップ809)。なお、この時、CPU負荷情報の使用を指定している場合には、上述した転送先システム定義303(図4を参照)で指定した転送先システムの候補の中で、最もそのCPU利用率の低いシステム(作業サーバ)を転送先システムとして決定する。他方、CPU負荷情報の不使用を指定している場合は、上記転送先システム定義303で予め指定した転送先システム(作業サーバ)を転送先システムとして決定する。   In this step 809, it is checked whether there is another system (other processing server 10) that can be transferred. As a result, if it is determined that there is another transferable system (“Y”), the transfer destination system of the input transaction is determined (step 809). At this time, if the use of the CPU load information is specified, the CPU usage rate of the transfer destination system candidate specified in the transfer destination system definition 303 (see FIG. 4) described above is the highest. A low system (work server) is determined as the transfer destination system. On the other hand, when the non-use of the CPU load information is specified, the transfer destination system (work server) specified in advance in the transfer destination system definition 303 is determined as the transfer destination system.

他方、他に転送可能なシステムが存在しない(「N」)と判定された場合には、やはり、上記ステップ811において、当該入力されたトランザクションの処理システムを当該処理サーバ10自身に決定し、図のノード(1)を介して、以下に図7で説明するステップ901へ進む。また、上記ステップ808で自システムが過負荷状態ではなかった場合や、上記ステップ809で転送可能な他のシステムが存在しないと判定された場合においても、トランザクションを転送せずに、自システムで処理をすることを決定することは上述の通りである。   On the other hand, if it is determined that there is no other transferable system (“N”), the processing system of the input transaction is determined to be the processing server 10 itself in step 811, and The process proceeds to step 901 described below with reference to FIG. Further, even when the own system is not overloaded in step 808 or when it is determined that there is no other system that can be transferred in step 809, the transaction is not transferred and processed by the own system. The decision to do is as described above.

次に、添付の図7を参照し、即ち、システムがトランザクションの転送要否を決定した後、更に、トランザクション転送決定アプリケーション104があるか否かをチェック(ステップ901)し、その結果、存在すると判定された場合には、当該トランザクション転送決定アプリケーションを呼び出す(ステップ902)。   Next, referring to FIG. 7 attached, that is, after the system determines whether the transaction transfer is necessary, it further checks whether there is a transaction transfer determination application 104 (step 901). If determined, the transaction transfer determination application is called (step 902).

ここで、トランザクション転送決定アプリケーション104とは、例えば、添付の図8にその概略を示すように、入力元で入力されたトランザクションの名称(例えば、図3の「トランザクション定義」502を参照)から、トランザクションを決定する(図の例では、例えば、「TRANA」、「TRANB」、「TRANC」、等)。その後、決定されたトランザクションを入力した端末の名称(例えば、図3の「端末定義」501を参照)により、上記のトランザクション転送システムによって決定された転送先のシステム(作業サーバ)を変更するか否かを決定する。なお、この例では、例えば、端末A、B、Cからのトランザクション「TRANA」、「TRANB」、「TRANC」のうち、「TRANA」を処理するためのデータベース(DB−A)がシステム(作業サーバ)SYSTEMAにしか存在しない場合には、当該トランザクション「TRANA」の処理は、他のシステムの状況に拘わらず、必ず、システム「SYSTEMA」に転送するようにする。なお、この時のトランザクション転送動作を、添付の図9に示す。   Here, the transaction transfer determination application 104 is, for example, from the name of the transaction input at the input source (see, for example, “transaction definition” 502 in FIG. 3), as schematically shown in FIG. A transaction is determined (in the example of the figure, for example, “TRANA”, “TRANB”, “TRANC”, etc.). Thereafter, whether or not to change the transfer destination system (work server) determined by the transaction transfer system according to the name of the terminal that has input the determined transaction (see, for example, “terminal definition” 501 in FIG. 3). To decide. In this example, for example, a database (DB-A) for processing “TRANA” among the transactions “TRANA”, “TRANB”, and “TRANC” from the terminals A, B, and C is a system (work server). ) If it exists only in SYSTEMA, the process of the transaction “TRANA” is always transferred to the system “SYSTEMA” regardless of the status of other systems. The transaction transfer operation at this time is shown in FIG.

なお、上述したトランザクション転送決定アプリケーション104は、ユーザが任意に作成することが可能であり、かかるトランザクション転送決定アプリケーション104によれば、複数の処理サーバ10の全てが、一律に、端末20からの全てのトランザクションを処理することが出来るようにはなっていない環境下においても、当該トランザクション転送システムが決定したトランザクション転送要否の判定を変更し、又は、その指定した転送先システムを、適宜、変更することが可能となり、もって、当該環境に最適、かつ、適合的なトランザクションの転送処理を実現することが可能となる。   Note that the above-described transaction transfer determination application 104 can be arbitrarily created by the user. According to the transaction transfer determination application 104, all of the plurality of processing servers 10 are uniformly transmitted from the terminal 20. Even in an environment where the transaction cannot be processed, the transaction transfer system determination determined by the transaction transfer system is changed, or the designated transfer destination system is changed as appropriate. Therefore, it is possible to realize a transaction transfer process that is optimal and suitable for the environment.

続いて、制御が上記のトランザクション転送決定アプリケーション104からシステムに戻った(即ち、アプリケーションが終了した)場合には、更に、当該トランザクションを他のシステムに転送するのか否かを、再度チェックする(ステップ903)。   Subsequently, when the control returns from the transaction transfer determination application 104 to the system (that is, the application is terminated), it is checked again whether or not the transaction is to be transferred to another system (step 903).

なお、ここで、上記のトランザクション転送決定アプリケーション104が、当該トランザクションを他のシステムに転送するよう指定した(「Y」)場合は、転送先のシステムを必要に応じて変更(ステップ904)した上で、当該他のシステムへのトランザクションの転送を実行して(ステップ905)、終了する。他方、上記のトランザクション転送決定アプリケーション104が自システムで処理するように指定した場合には、当該トランザクションは、自システムで処理し(ステップ906)、その後、終了する。   Here, when the transaction transfer determination application 104 specifies that the transaction is transferred to another system (“Y”), the transfer destination system is changed as necessary (step 904). Then, the transaction is transferred to the other system (step 905), and the process ends. On the other hand, when the transaction transfer determination application 104 designates processing in the own system, the transaction is processed in the own system (step 906), and then ends.

次に、上記トランザクション転送決定アプリケーション104の入出力インタフェースについての一例を、図10により説明する。なお、この図10に示す例は、上記トランザクション転送決定アプリケーション104の入出力インタフェース1000を示すものである。   Next, an example of the input / output interface of the transaction transfer determination application 104 will be described with reference to FIG. The example shown in FIG. 10 shows the input / output interface 1000 of the transaction transfer decision application 104.

この上記トランザクション転送決定アプリケーション104の入出力インタフェース1000は、図10からも明らかなように、「入力元端末名称」1001と、「入力トランザクション名称」1002と、「転送要否」1003と、「転送先システム名」1004と、「システム情報」1005とで構成される。   As is apparent from FIG. 10, the input / output interface 1000 of the transaction transfer determination application 104 includes an “input source terminal name” 1001, an “input transaction name” 1002, a “transfer necessity” 1003, and a “transfer” It consists of “destination system name” 1004 and “system information” 1005.

なお、上記の構成において、「入力元端末名称」1001では、入力元の端末名称を、そして、「入力トランザクション名称」1002では、入力されたトランザクションの名称を情報として表示しており、これらの情報をトランザクション転送決定アプリケーション104に通知する。また、「転送要否」1003では、上記図7においてステップ902で示したように、制御をトランザクション転送決定アプリケーション104に渡す(即ち、アプリケーションを開始する)前に、上記トランザクション転送システムが決定したトランザクションの転送を実行すべきか否かの設定を行う。即ち、事前にトランザクション転送を行なう場合には「要」を、他方、自システム内で処理する場合には「否」を設定する。更に、「転送先システム名」1004には、上記トランザクション転送システムが決定した転送先のシステム名称が設定される。なお、上記トランザクションの「転送要否」で「否」と設定した場合には、自システムのシステム名称が設定されることとなる。   In the above configuration, “input source terminal name” 1001 displays the input source terminal name, and “input transaction name” 1002 displays the name of the input transaction as information. Is sent to the transaction transfer decision application 104. In the “transfer necessity / unnecessity” 1003, as indicated by step 902 in FIG. 7, the transaction determined by the transaction transfer system before the control is transferred to the transaction transfer determination application 104 (that is, the application is started). Set whether or not to execute the transfer. That is, “necessary” is set when transaction transfer is performed in advance, and “no” is set when processing is performed in the own system. Further, in the “transfer destination system name” 1004, the system name of the transfer destination determined by the transaction transfer system is set. If “No” is set in “Transfer Necessity” of the transaction, the system name of the own system is set.

また、上記のトランザクション転送決定アプリケーション104によれば、その「転送要否」1003と「転送先システム名」1004とを参照することによれば、入力されたトランザクションが何れのシステムに転送されようとしているのかどうかを知ることができる。   Further, according to the transaction transfer determination application 104 described above, by referring to the “transfer necessity” 1003 and the “transfer destination system name” 1004, the input transaction is about to be transferred to any system. You can know if you are.

また、図の下方には、システム情報1100が示されており、これにより、上記の自システムの情報を含めた、トランザクション転送システムを構成する各システムの情報が、上記トランザクション転送決定アプリケーション104に提供されることとなる。なお、このシステム情報1100は、「システム名」1101と、「自他区分」1102と、「状態」1103と、「負荷状態」1104と、「CPU利用率」1105とを有する。   In the lower part of the figure, system information 1100 is shown, whereby information on each system constituting the transaction transfer system including the information on the own system is provided to the transaction transfer determination application 104. Will be. The system information 1100 includes “system name” 1101, “own / other category” 1102, “status” 1103, “load status” 1104, and “CPU usage rate” 1105.

まず、「システム名」1101では、上記図2の「他システム情報定義」301で定義されている各システムのシステム名称の一覧が設定される。「自他区分」1102では、自システムの場合には「自」が、他システムの場合は「他」が設定される。また、「状態」1103では、各システムが「オンライン」状態であるか、あるいは、「停止中」の状態であるのかが設定される。   First, in “system name” 1101, a list of system names of each system defined in “other system information definition” 301 in FIG. 2 is set. In the “own / other category” 1102, “self” is set for the own system, and “other” is set for the other system. In the “status” 1103, it is set whether each system is in an “online” state or a “stopped” state.

「負荷状態」1104では、各システムが、上記図5に示した「CPU負荷バランス定義304」で定義された情報を基に判断した結果が、即ち、「過負荷」状態なのか、あるいは、「通常」の状態なのかが設定される。更に、「CPU利用率」1105には、各システムのCPU使用率が設定される。ただし、上記「CPU負荷バランス定義」304で、CPU負荷情報の収集を行わない指定(「CPU負荷情報使用有無」701で「使用」を設定していない)をしている場合には、上記「負荷状態」1104と「CPU利用率」1105には、情報が設定されない。   In the “load state” 1104, each system determines whether the determination result based on the information defined in the “CPU load balance definition 304” shown in FIG. 5 is an “overload” state, Whether the state is “normal” is set. Further, the “CPU usage rate” 1105 is set to the CPU usage rate of each system. However, if the “CPU load balance definition” 304 specifies that CPU load information is not collected (“use” is not set in “use / non-use of CPU load information” 701), the above “ No information is set in the “load state” 1104 and the “CPU usage rate” 1105.

上述のように、トランザクション転送決定アプリケーション104によれば、トランザクション転送システムが提供する各種情報を基に、たとえ、転送システムを構成する複数の処理サーバ10の全てが、一律に、全てのトランザクションを処理することが出来ない環境下であっても、トランザクションの転送要否と、転送先システムの妥当性とをチェックすることができる。但し、このトランザクション転送決定アプリケーション104を利用することによって設定できる領域は、上述したように、「転送先システム名称」1004のみである。そこで、この転送先システムを変更する場合は、当該「転送先システム名称」1004に、変更後のシステム名称を設定する必要がある。これに対し、トランザクション転送システムが設定したトランザクション転送先システムを変更しない場合には、このトランザクション転送決定アプリケーション104を、トランザクション転送先については何もせずに終了するように設定すれば良い。同様に、トランザクション転送システムがトランザクションの転送を不要と判断しており、当該システムの決定通りに自システムで処理を行う場合にも、上記と同様に、アプリケーションは何もせずに終了すれば良いこととなる。   As described above, according to the transaction transfer determination application 104, all of the plurality of processing servers 10 constituting the transfer system uniformly process all transactions based on various information provided by the transaction transfer system. Even in an environment where it is not possible to do so, it is possible to check whether the transfer of the transaction is necessary and the validity of the transfer destination system. However, the area that can be set by using the transaction transfer determination application 104 is only the “transfer destination system name” 1004 as described above. Therefore, when this transfer destination system is changed, it is necessary to set the changed system name in the “transfer destination system name” 1004. On the other hand, when the transaction transfer destination system set by the transaction transfer system is not changed, the transaction transfer determination application 104 may be set so as to end without doing anything for the transaction transfer destination. Similarly, when the transaction transfer system determines that transaction transfer is unnecessary, and the processing is performed by the local system as determined by the system, the application may be terminated without doing anything as described above. It becomes.

それに対し、トランザクション転送システムはトランザクションの転送を不要と判断したが、しかしながら、当該トランザクションを転送するよう変更を行なう場合には、上記の「転送先システム名称」1004に転送先のシステム名称を設定する。このように、上記トランザクション転送決定アプリケーション104によれば、トランザクション転送システムを構成する各システムの状態を参照しながら、上記「転送先システム名称」1004を必要に応じて変更することによって、きめ細かなトランザクション転送のチューニングが可能となる。   On the other hand, the transaction transfer system determines that the transfer of the transaction is unnecessary. However, when the transaction is changed to transfer the transaction, the transfer destination system name is set in the “transfer destination system name” 1004 described above. . As described above, according to the transaction transfer determination application 104, a detailed transaction can be performed by changing the “transfer destination system name” 1004 as necessary while referring to the state of each system constituting the transaction transfer system. The transfer can be tuned.

以上に詳細に説明したように、本発明になる実施例によれば、入力されたトランザクションの全てトランザクション転送の対象とはせずに、入力元端末名称とトランザクション名称とによって、トランザクション転送の有無を指定可能としていることから、トランザクションの転送先となる転送システムを構成する一部のシステム(作業サーバ)において、例えば、リソース等の問題から一部のトランザクション処理が行えないような場合においても、入力されたトランザクション処理を、適宜、最適なシステム(作業サーバ)に転送することが可能なトランザクション転送システムを構築することが可能となる。つまり、従来の技術では、トランザクション転送システムを構築しようとする場合、システムを構築する全ての処理サーバが、一律に、転送されたトランザクションを同様に処理できることが前提条件とされていたが、これに対し、本発明によれば、一部の入力元端末やトランザクションが、一部の処理サーバによってはそのトランザクション処理ができない状況にある場合であっても、トランザクション転送システムを導入することが可能となる。加えて、やはり、従来の技術では不可能であったが、一部の入力元端末やトランザクションについては、トランザクションの転送対象とはせずに、むしろ、自システム内で処理する必要があるような場合においても、トランザクション転送システムを導入することが可能となる。   As described above in detail, according to the embodiment of the present invention, not all the input transactions are subject to transaction transfer, and whether or not transaction transfer is performed is determined by the input source terminal name and the transaction name. Because it can be specified, even in some systems (work servers) that constitute the transfer system that is the transaction transfer destination, even if some transaction processing cannot be performed due to resource problems, etc. It is possible to construct a transaction transfer system that can transfer the processed transaction processing to an optimum system (work server) as appropriate. In other words, in the prior art, when trying to construct a transaction transfer system, it was assumed that all processing servers that construct the system could uniformly process the transferred transaction. On the other hand, according to the present invention, it is possible to introduce a transaction transfer system even when some input source terminals and transactions are in a situation where the transaction processing cannot be performed by some processing servers. . In addition, after all, although it was impossible with the conventional technology, some input source terminals and transactions are not subject to transaction transfer, but rather need to be processed within the local system. Even in this case, a transaction transfer system can be introduced.

また、上記の本実施例によれば、CPU負荷情報を使用することなく、トランザクション転送システムを構築することが可能である。換言すれば、上記従来の技術では、上記にも指摘したように、各処理サーバのCPU負荷情報を収集し、当該収集したCPU利用率を基に負荷分散を行うことが一般的であり、そのためには、CPU負荷情報を収集すると共に、更には、転送システムを構築するシステム(作業サーバ)間のおいて上記CPU負荷情報を通知するための手段が必要であり、少なからずCPU負荷が上昇していた。それに対し、本発明になる実施例では、かかるCPU負荷情報を使用せずに、CPU負荷に関する統計データ等を利用することによって予め設定した定義(上記図5の「CPU負荷バランス定義」304を参照)を基にトランザクションの転送要否を判断し、負荷分散を図ることが可能である。これによれば、上記CPU負荷情報情報の通知に伴う負荷上昇からCPUを防止することが出来る。   Further, according to the above-described embodiment, it is possible to construct a transaction transfer system without using CPU load information. In other words, as pointed out above, the conventional technology generally collects CPU load information of each processing server and performs load distribution based on the collected CPU utilization rate. Requires a means for collecting CPU load information and for notifying the CPU load information between systems (working servers) constructing a transfer system. It was. On the other hand, in the embodiment according to the present invention, a definition (see “CPU load balance definition” 304 in FIG. 5 above) defined in advance by using statistical data on the CPU load without using such CPU load information. ) To determine the necessity of transaction transfer, and load distribution can be achieved. According to this, the CPU can be prevented from an increase in load accompanying the notification of the CPU load information information.

更に、上記の本発明になる実施例によれば、一旦、上記トランザクション転送システムが決定したトランザクション転送要否、更には、転送先のシステムを、ユーザが作成したアプリケーションによって、変更することができる。即ち、従来の技術では、トランザクション転送システムが提供する各システムのCPU負荷情報を判断するアルゴリズムによってトランザクションの振り分けが行われるため、ユーザは、システムが提供する負荷分散アルゴリズムを変更することは難しかったが、それに対し、本発明になるトランザクション転送システムによれば、当該転送システムがトランザクション転送有無を判断するアルゴリズムを提供するだけでなく、更には、必要に応じて、当該転送システムが決定した判断を変更することが可能なアプリケーションに制御を渡すためのインタフェースを設けることにより、その一部のトランザクション処理が行えない場合等のため、処理サーバ10の全てが、一律に、端末20からの全てのトランザクションを処理することが出来ない場合においても、ユーザニーズに応じたトランザクション転送システムを実現することができる。   Further, according to the embodiment of the present invention, the transaction transfer necessity determined by the transaction transfer system and the transfer destination system can be changed by the application created by the user. In other words, according to the conventional technique, transactions are distributed according to an algorithm for determining CPU load information of each system provided by the transaction transfer system. Therefore, it is difficult for the user to change the load distribution algorithm provided by the system. On the other hand, according to the transaction transfer system of the present invention, the transfer system not only provides an algorithm for determining the presence or absence of transaction transfer, but also changes the determination determined by the transfer system as necessary. By providing an interface for passing control to an application that can perform the processing, a part of the transaction processing cannot be performed. Can be processed In case no, it is possible to realize a transaction forwarding system according to the user needs.

即ち、本発明により提供されるトランザクション転送システムによれば、ユーザは、入力元端末や入力されるトランザクション単位で、トランザクションの転送有無や転送先の処理サーバの候補を予め定義で指定する。また、トランザクションの転送要否の判断要素としてCPU負荷情報を使用せずに、ユーザがあらかじめ設定した定義を元にトランザクション振り分けを行う機能を備えるものである。さらに、トランザクション転送システムが決定したトランザクション転送要否や転送先システムをアプリケーションによって変更可能にするインタフェースを提供すると共に、これらの方法を実現したトランザクション転送制御プログラムを提供する。   That is, according to the transaction transfer system provided by the present invention, the user designates in advance by definition whether or not to transfer a transaction and candidates for a transfer destination processing server for each input source terminal or input transaction. In addition, it has a function of performing transaction distribution based on a definition set in advance by the user without using CPU load information as an element for determining whether or not to transfer a transaction. Further, the present invention provides an interface that allows the application to change the transaction transfer necessity determined by the transaction transfer system and the transfer destination system, and also provides a transaction transfer control program that realizes these methods.

なお、本発明によれば、トランザクションの転送要否の判断要素としては、入力元端末名称や入力トランザクション名称に加えて、CPU利用率に基づいてトランザクション転送要否を決定してもよく、これに代えて、CPU負荷に関する統計データによってあらかじめ設定した定義を基に、トランザクションの転送要否を判断し負荷分散を行うことも可能である。更には、上記のトランザクション転送において、トランザクション転送システムがトランザクション転送有無を判断するアルゴリズムを提供するだけでなく、システムが決定した判断を変更可能なアプリケーションに制御を渡すインタフェースを提供する手段と、アプリケーションが変更したトランザクションの転送要否や転送先システムに従ってトランザクション振り分け先を変更する手段とを備えてもよい。   According to the present invention, the transaction transfer necessity determination element may determine the transaction transfer necessity based on the CPU usage rate in addition to the input source terminal name and the input transaction name. Instead, it is possible to determine whether transfer of transactions is necessary or not and perform load distribution based on a definition set in advance by statistical data relating to CPU load. Furthermore, in the above transaction transfer, the transaction transfer system not only provides an algorithm for determining whether or not the transaction is transferred, but also provides means for providing an interface for passing control to an application capable of changing the determination determined by the system, There may be provided means for changing the transaction distribution destination according to the necessity of transfer of the changed transaction and the transfer destination system.

本発明の一実施形態によるトランザクション転送システムの構成を示すブロック図である。It is a block diagram which shows the structure of the transaction transfer system by one Embodiment of this invention. 上記トランザクション転送システムにおける「他システム情報定義」の一例を示す図である。It is a figure which shows an example of the "other system information definition" in the said transaction transfer system. 上記トランザクション転送システムにおける「転送条件定義」の一例を示す図である。It is a figure which shows an example of the "transfer condition definition" in the said transaction transfer system. 上記トランザクション転送システムにおける「転送先システム定義」の一例を示す図である。It is a figure which shows an example of the "transfer destination system definition" in the said transaction transfer system. 上記トランザクション転送システムにおける「CPU負荷バランス定義」の一例を示す図である。It is a figure which shows an example of "CPU load balance definition" in the said transaction transfer system. 上記本発明の一実施形態になるトランザクション転送システムにおいて、処理サーバトランザクション転送要否判断を行う処理の流れを示すフローチャート(1/2)である。In the transaction transfer system according to the embodiment of the present invention, it is a flowchart (1/2) showing a flow of processing for determining whether or not a processing server transaction transfer is necessary. やはり、上記本発明の一実施形態になるトランザクション転送システムにおいて、処理サーバトランザクション転送要否判断を行う処理の流れを示すフローチャート(2/2)である。Again, in the transaction transfer system according to the embodiment of the present invention, a flowchart (2/2) showing a flow of processing for determining whether or not a processing server transaction transfer is necessary. 本発明になるトランザクション転送システムにおけるトランザクション転送決定アプリケーションの一例を示す処理図である。It is a processing figure which shows an example of the transaction transfer determination application in the transaction transfer system which becomes this invention. 上記トランザクション転送決定アプリケーションによるトランザクション転送動作の一例を説明するための図である。It is a figure for demonstrating an example of the transaction transfer operation | movement by the said transaction transfer determination application. 本発明のトランザクション転送システムにおけるトランザクション転送決定アプリケーションの入出力インタフェースの一例を示す図である。It is a figure which shows an example of the input / output interface of the transaction transfer determination application in the transaction transfer system of this invention.

符号の説明Explanation of symbols

10…処理サーバ、20…端末、30…ネットワーク、100…主記憶装置、101…通信管理部、102…トランザクション転送振り分け部、103…CPU負荷情報取得部、104…トランザクション転送決定アプリケーション、200…CPU、300…定義情報、301…他システム情報定義、302…転送条件定義、303…転送先システム定義、304…CPU負荷バランス定義、401…自システム名称、402…他システム名称、501…端末定義、502…トランザクション定義、503…名称、504…転送対象有無、601…トランザクション名称、602…転送先システム、701…CPU負荷情報使用有無、702…CPU負荷情報収集間隔、703…負荷分散しきい値上限、704…負荷分散しきい値下限、1000…入出力インタフェース、1001…入力元端末名称、1002…入力トランザクション名称、1003…転送要否、1004…転送先システム名、1100…システム情報、1101…システム名、1102…自他区分、1103…状態、1104…負荷状態、1105…CPU利用率。
DESCRIPTION OF SYMBOLS 10 ... Processing server, 20 ... Terminal, 30 ... Network, 100 ... Main memory, 101 ... Communication management part, 102 ... Transaction transfer distribution part, 103 ... CPU load information acquisition part, 104 ... Transaction transfer determination application, 200 ... CPU 300 ... Definition information 301 ... Other system information definition 302 ... Transfer condition definition 303 ... Transfer destination system definition 304 ... CPU load balance definition 401 ... Own system name 402 ... Other system name 501 ... Terminal definition 502 ... transaction definition, 503 ... name, 504 ... transfer target presence / absence, 601 ... transaction name, 602 ... transfer destination system, 701 ... CPU load information use / non-use, 702 ... CPU load information collection interval, 703 ... load distribution threshold upper limit 704 ... Load distribution threshold lower limit, 1 00 ... I / O interface, 1001 ... Input source terminal name, 1002 ... Input transaction name, 1003 ... Transfer required / unnecessary, 1004 ... Transfer destination system name, 1100 ... System information, 1101 ... System name, 1102 ... Own / other category, 1103 ... State, 1104... Load state, 1105... CPU utilization rate.

Claims (5)

複数の処理サーバが端末と共にネットワーク上に接続されて構成された負荷分散トランザクション処理システムであって、前記複数の処理サーバの一部が入力される一部のトランザクションの処理が不可能であるものにおいて、前記処理サーバは、前記端末から入力されたトランザクションの他の処理サーバへの転送の要否を決定する手段を備えており、更に、前記トランザクションの転送の条件についてユーザが設定可能なトランザクション転送決定手段を備えていることを特徴とするトランザクション転送システム。   A load balancing transaction processing system configured such that a plurality of processing servers are connected to a network together with a terminal, wherein a part of the plurality of processing servers cannot be processed. The processing server includes means for determining whether or not a transaction input from the terminal needs to be transferred to another processing server, and further, a transaction transfer determination that can be set by a user with respect to the conditions for transferring the transaction. A transaction transfer system comprising means. 前記請求項1に記載したトランザクション転送システムにおいて、前記ユーザが設定可能なトランザクション転送決定手段は、前記端末の名称である入力元端末名称及び/又は入力トランザクションの名称に基づいて入力されたトランザクションの転送要否を決定することを特徴とするトランザクション転送システム。   2. The transaction transfer system according to claim 1, wherein the transaction transfer determination means that can be set by the user transfers a transaction input based on an input source terminal name and / or an input transaction name which is the name of the terminal. A transaction transfer system characterized by determining necessity. 前記請求項1に記載したトランザクション転送システムにおいて、前記ユーザが設定可能なトランザクション転送決定手段は、当該トランザクション転送システムを構成する前記処理サーバにおけるリソースに応じて入力されるトランザクションの転送先を設定することが可能であることを特徴とするトランザクション転送システム。   2. The transaction transfer system according to claim 1, wherein the transaction transfer determination means that can be set by the user sets a transfer destination of a transaction input according to a resource in the processing server that constitutes the transaction transfer system. A transaction transfer system characterized by that. 前記請求項1に記載したトランザクション転送システムにおいて、前記ユーザが設定可能なトランザクション転送決定手段は、当該トランザクション転送システムを構成する前記処理サーバのCPU負荷に関する統計データに基づいて転送条件を予め設定可能な定義手段を有しており、もって、予め設定した前記定義手段による設定条件によってトランザクションの転送要否を判断して負荷分散を行うことを特徴とするトランザクション転送システム。   2. The transaction transfer system according to claim 1, wherein said user-settable transaction transfer determination means can set transfer conditions in advance based on statistical data relating to CPU load of said processing server constituting said transaction transfer system. A transaction transfer system comprising a definition unit, and performing load distribution by determining whether or not a transaction transfer is necessary according to a preset condition set by the definition unit. 前記請求項1に記載したトランザクション転送システムにおいて、前記他の処理サーバへの転送の要否を決定する手段は、当該トランザクション転送システムを構成する各処理サーバのCPU利用率に基づいて決定することを特徴とするトランザクション転送システム。
2. The transaction transfer system according to claim 1, wherein the means for determining whether transfer to another processing server is necessary is based on a CPU usage rate of each processing server constituting the transaction transfer system. A featured transaction transfer system.
JP2004309149A 2004-10-25 2004-10-25 Transaction transfer system Pending JP2006120036A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004309149A JP2006120036A (en) 2004-10-25 2004-10-25 Transaction transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004309149A JP2006120036A (en) 2004-10-25 2004-10-25 Transaction transfer system

Publications (1)

Publication Number Publication Date
JP2006120036A true JP2006120036A (en) 2006-05-11

Family

ID=36537843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004309149A Pending JP2006120036A (en) 2004-10-25 2004-10-25 Transaction transfer system

Country Status (1)

Country Link
JP (1) JP2006120036A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017076364A (en) * 2015-10-13 2017-04-20 富士電機株式会社 Information processing system and information processing apparatus
JP2018504862A (en) * 2014-12-18 2018-02-15 イプコ 2012 リミテッドIpco 2012 Limited System, method and computer program product for receiving electronic messages
US10708213B2 (en) 2014-12-18 2020-07-07 Ipco 2012 Limited Interface, method and computer program product for controlling the transfer of electronic messages
US10963882B2 (en) 2014-12-18 2021-03-30 Ipco 2012 Limited System and server for receiving transaction requests
US11080690B2 (en) 2014-12-18 2021-08-03 Ipco 2012 Limited Device, system, method and computer program product for processing electronic transaction requests

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018504862A (en) * 2014-12-18 2018-02-15 イプコ 2012 リミテッドIpco 2012 Limited System, method and computer program product for receiving electronic messages
US10708213B2 (en) 2014-12-18 2020-07-07 Ipco 2012 Limited Interface, method and computer program product for controlling the transfer of electronic messages
US10963882B2 (en) 2014-12-18 2021-03-30 Ipco 2012 Limited System and server for receiving transaction requests
US10999235B2 (en) 2014-12-18 2021-05-04 Ipco 2012 Limited Interface, method and computer program product for controlling the transfer of electronic messages
US10997568B2 (en) 2014-12-18 2021-05-04 Ipco 2012 Limited System, method and computer program product for receiving electronic messages
US11080690B2 (en) 2014-12-18 2021-08-03 Ipco 2012 Limited Device, system, method and computer program product for processing electronic transaction requests
US11521212B2 (en) 2014-12-18 2022-12-06 Ipco 2012 Limited System and server for receiving transaction requests
US11665124B2 (en) 2014-12-18 2023-05-30 Ipco 2012 Limited Interface, method and computer program product for controlling the transfer of electronic messages
JP2017076364A (en) * 2015-10-13 2017-04-20 富士電機株式会社 Information processing system and information processing apparatus

Similar Documents

Publication Publication Date Title
US8549137B2 (en) Monitoring device, monitoring system, monitoring method, and program
US10255085B1 (en) Interactive graphical user interface with override guidance
JP4760491B2 (en) Event processing system, event processing method, event processing apparatus, and event processing program
JP4727715B2 (en) Stream data processing method and system
US10712958B2 (en) Elastic storage volume type selection and optimization engine for public cloud environments
US20100005468A1 (en) Black-box performance control for high-volume throughput-centric systems
CN110300067A (en) Queue regulation method, device, equipment and computer readable storage medium
CN108156236A (en) Service request processing method, device, computer equipment and storage medium
JP2008158628A (en) Operation performance evaluation apparatus, operation performance evaluation method, and program
US20160142477A1 (en) Connection control device, connection control system, and non-transitory computer readable medium
JP2008225995A (en) Policy creation support method, policy creation support system, and program
CN110417587B (en) Server load management
KR101055548B1 (en) Semantic Computing-based Dynamic Job Scheduling System for Distributed Processing
CN113177179B (en) Data request connection management method, device, equipment and storage medium
CN105897550A (en) Off-line message pushing method and device
CN110334072A (en) A kind of distributed file system, file updating method and device
CN107908465A (en) The method for scheduling task of big data platform
JP5268589B2 (en) Information processing apparatus and information processing apparatus operating method
CN113626869A (en) Data processing method, system, electronic device and storage medium
CN114021052B (en) A reasoning service method, device and system
CN107943579A (en) Resource bottleneck Forecasting Methodology, equipment, system and readable storage medium storing program for executing
JP2006120036A (en) Transaction transfer system
CN113778973A (en) Data storage method and device
JP2006209165A (en) Simultaneous execution multiplicity adjustment system and method
CN114422565B (en) A network connection management method based on connection pool and related device