JP2007323499A - System-distributed processor and system-distributed processing system - Google Patents

System-distributed processor and system-distributed processing system Download PDF

Info

Publication number
JP2007323499A
JP2007323499A JP2006154800A JP2006154800A JP2007323499A JP 2007323499 A JP2007323499 A JP 2007323499A JP 2006154800 A JP2006154800 A JP 2006154800A JP 2006154800 A JP2006154800 A JP 2006154800A JP 2007323499 A JP2007323499 A JP 2007323499A
Authority
JP
Japan
Prior art keywords
processing
load
systems
distributed processing
program
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
JP2006154800A
Other languages
Japanese (ja)
Inventor
Hideki Takasugi
秀樹 高杉
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2006154800A priority Critical patent/JP2007323499A/en
Publication of JP2007323499A publication Critical patent/JP2007323499A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a system-distributed processor capable of distributing excessive loads to systems, in a network in which a plurality of systems including one or two or more server devices are present, according to the respective load states of the systems. <P>SOLUTION: The system-distributed processor comprises a system information storage part 22 storing system state information including processing states of systems 10-1 to 10-N received from the systems 10-1 to 10-N that are management objects as system information associated with the systems 10-1 to 10-N; and a load distributed control part 23 determining, whether a system to which a load higher than a predetermined reference is applied is present or not using the system information for each of systems 10-1 to 10-N in the system information storage part 22, and controlling other systems with low load to share a part of a processing request of the system with the load higher than the predetermined reference. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

この発明は、複数のシステムが同時に稼動しているネットワークの負荷分散を行うシステム分散処理装置およびシステム分散処理システムに関するものである。   The present invention relates to a system distributed processing apparatus and a system distributed processing system that perform load distribution in a network in which a plurality of systems are operating simultaneously.

従来、クライアント端末とサーバ装置とが、インタネットなどのネットワークを介して接続されたシステムにおいて、クライアント端末からあるサーバ装置へのアクセスが集中した場合に、そのサーバ装置の負荷を軽減するための負荷分散方法が提案されている。このような技術として、たとえば、複数のWebサーバとデータベースサーバとが専用回線を介して接続されるネットワークと、クライアント端末が接続されるインタネットなどのネットワークとが、ファイアウォールとルータを備える割振部によって接続された負荷分散システムで、ルータはWebサーバのそれぞれに対して予め決定された優先順位テーブルを記憶し、各Webサーバが稼働中か停止中かを把握して、クライアント端末からのリクエストを、稼働中のWebサーバの中で優先順位テーブル中の優先順位が最も高いWebサーバに割り振る負荷分散方法が提案されている(たとえば、特許文献1参照)。   Conventionally, in a system in which a client terminal and a server device are connected via a network such as the Internet, when access from a client terminal to a server device is concentrated, load balancing is performed to reduce the load on the server device. A method has been proposed. As such a technology, for example, a network in which a plurality of Web servers and database servers are connected via a dedicated line and a network such as the Internet to which a client terminal is connected are connected by an allocating unit including a firewall and a router. In this load balancing system, the router stores a predetermined priority table for each Web server, grasps whether each Web server is operating or stopped, and sends requests from client terminals There has been proposed a load distribution method for allocating to a Web server having the highest priority in the priority table among the Web servers (for example, see Patent Document 1).

特開2004−192449号公報JP 2004-192449 A

従来の負荷分散は、上記特許文献1に示したように負荷分散処理を実施したり、予め決められた順序にしたがって処理を振り分けたり、あるいは、ある条件の下で処理を振り分けたり、という処理を単一のシステム内の同じアプリケーションの間で実施していた。この場合、システム利用のピーク時において、システムを構成するそれぞれのサーバ装置の処理が飽和すると、それ以上処理を受け付けることができず、実質的にシステムを利用することができない状態となるという問題点があった。また、システム利用のピーク時を想定したシステム構成とすると、定常状態では、CPUやメモリなどのコンピュータリソースが十分に活用されない状態となり、設備の利用効率の低下につながり、投資が十分に活用されなくなるという問題点もあった。   Conventional load distribution is a process of performing load distribution processing as shown in Patent Document 1, distributing processes according to a predetermined order, or distributing processes under certain conditions. Had been implemented between the same applications in a single system. In this case, when the processing of each server device constituting the system is saturated at the peak time of system usage, no further processing can be accepted and the system cannot be used. was there. In addition, if the system configuration assumes a peak system usage, computer resources such as CPU and memory will not be fully utilized in the steady state, leading to a decrease in facility utilization efficiency and investment not being fully utilized. There was also a problem.

さらに、特定のアプリケーションや機能を有し、異なる処理を実行する複数のサーバ装置を有するシステムの負荷分散を行うシステムや方法については従来提案されていなかった。具体的には、従来の負荷分散システムは、1つの企業などの組織が管理する1台または複数台のサーバ装置から構成されるシステムに対して適用可能なものであった。また、このような特定のアプリケーションや機能を有し、異なる処理を実行する複数のサーバ装置を有するシステムで負荷分散を行う場合には、従来のように、それぞれのアプリケーションや機能を実行するサーバ装置の負荷分散を行うために、それぞれの処理を行うサーバ装置に対して負荷分散に必要な装置を設置しなければならなかった。つまり、多くのアプリケーションや機能を有するシステム全体の負荷分散を行うためには、莫大なコストがかかってしまうという問題点があった。   Furthermore, a system and method for distributing the load of a system having a plurality of server devices that have specific applications and functions and execute different processes have not been proposed. Specifically, the conventional load distribution system can be applied to a system configured by one or a plurality of server devices managed by an organization such as one company. In addition, when performing load distribution in a system having a plurality of server devices that have such specific applications and functions and execute different processes, the server devices that execute the respective applications and functions as in the past In order to perform the load balancing, it is necessary to install a device necessary for load balancing for the server device that performs each process. That is, there is a problem that enormous costs are required to distribute the load of the entire system having many applications and functions.

この発明は、上記に鑑みてなされたもので、1台または複数台のサーバ装置から構成されるシステムが複数存在するネットワークにおいて、それぞれのシステムの負荷状況に応じて、あるシステムへの過剰な負荷を分散することができるシステム分散処理装置およびシステム分散処理システムを得ることを目的とする。また、複数のアプリケーションや機能を有し、異なる処理を実行する複数のサーバ装置を有するシステムに対して、負荷分散にかけるコストを低く抑えることができるシステム分散処理装置およびシステム分散処理システムを得ることも目的とする。   The present invention has been made in view of the above, and in a network in which a plurality of systems including one or a plurality of server devices exist, an excessive load is applied to a certain system according to the load status of each system. An object of the present invention is to obtain a system distributed processing apparatus and a system distributed processing system that can distribute the system. Further, to obtain a system distributed processing apparatus and a system distributed processing system capable of keeping down the cost of load distribution for a system having a plurality of server apparatuses that have a plurality of applications and functions and execute different processes. Also aimed.

上記目的を達成するため、この発明にかかるシステム分散処理装置は、同一の処理を実行する1または複数のサーバ装置を有する複数のシステムとネットワークを介して接続され、前記システムの負荷を監視して過剰な負荷のかかっているシステムの処理を他のシステムに分散させるシステム分散処理装置であって、管理対象となる前記システムから受信した該システムの処理状況を含むシステム状態情報を前記システムと対応付けたシステム情報として格納するシステム情報記憶手段と、前記システム情報記憶手段中の各システムのシステム情報を用いて所定の基準よりも高い負荷のかかっているシステムが存在するかを判定し、前記所定の基準よりも負荷の高いシステムの処理要求の一部を負荷の低い他のシステムに分担させるように制御する負荷分散制御手段と、を備えることを特徴とする。   In order to achieve the above object, a system distributed processing apparatus according to the present invention is connected to a plurality of systems having one or a plurality of server apparatuses that execute the same processing via a network, and monitors the load on the system. A system distributed processing apparatus that distributes processing of a system under excessive load to other systems, and associates system status information including the processing status of the system received from the system to be managed with the system System information storage means for storing as system information, and system information of each system in the system information storage means is used to determine whether there is a system with a load higher than a predetermined reference, and the predetermined information A part of the processing request of a system with a higher load than the standard is shared with another system with a lower load. A load distribution control means for, characterized in that it comprises a.

この発明によれば、複数のシステムがそれぞれ別のサーバ装置(コンピュータ)で動作している場合に、それぞれのシステムの負荷状況のピークが異なることが予見されることを利用して、負荷の低い方のシステムのコンピュータリソースを負荷の高い方のシステムのサーバ装置で利用可能な構成としたので、負荷のピークに合わせたシステム設備とする必要がなくなり、そのための設備投資を低減することができるという効果を有する。また、管理対象内のサーバ装置が停止した場合でも、他の残りのサーバ装置で処理を引継ぎ、かつ同等の処理性能を維持できるという効果も有する。   According to the present invention, when a plurality of systems are operating on different server apparatuses (computers), the load of each system is predicted to be different, and the load is low. The computer resources of the other system are configured so that they can be used by the server device of the heavier system, eliminating the need for system equipment that matches the peak load and reducing capital investment for that purpose. Has an effect. In addition, even when the server device within the management target is stopped, the other remaining server devices can take over the processing and can maintain the same processing performance.

以下に添付図面を参照して、この発明にかかるシステム分散処理装置およびシステム分散処理システムの好適な実施の形態を詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。   Exemplary embodiments of a system distributed processing apparatus and a system distributed processing system according to the present invention will be explained below in detail with reference to the accompanying drawings. Note that the present invention is not limited to these embodiments.

実施の形態1.
図1は、この発明にかかるシステム分散処理システムの構成を模式的に示すブロック図である。このシステム分散処理システムは、同一種類の処理(機能)を実行する1台または複数台のサーバ装置を有する複数のシステム10−1〜10−N(Nは自然数)と、分散処理の管理対象となるシステムの負荷の分散を行うシステム分散処理装置20と、がインタネットなどのネットワーク30を介して接続される。なお、図示していないが、ネットワークにはクライアント端末も接続され、クライアント端末は、各システム10の有するサーバ装置にアクセスして、必要な情報を入手したり、必要な処理を実行させたりする。なお、ここでは、システム分散処理装置20が管理するシステムはN台(Nは自然数)であるとする。
Embodiment 1 FIG.
FIG. 1 is a block diagram schematically showing the configuration of a system distributed processing system according to the present invention. This system distributed processing system includes a plurality of systems 10-1 to 10-N (N is a natural number) having one or a plurality of server apparatuses that execute the same type of processing (function), and a distributed processing management target. A system distributed processing device 20 that distributes the load on the system is connected via a network 30 such as the Internet. Although not shown, a client terminal is also connected to the network, and the client terminal accesses a server device included in each system 10 to acquire necessary information or execute necessary processing. Here, it is assumed that the number of systems managed by the system distributed processing device 20 is N (N is a natural number).

システム10−1〜10−Nは、1台または複数台のサーバ装置からなるが、図では、システム10−1〜10−Nが有するサーバ装置の機能をまとめたものを1台の仮想的なサーバ装置として図示している。このシステム10−1〜10−Nを構成する各サーバ装置は、アプリケーションまたは機能ごとに設けられる情報処理端末であり、Webサーバ、データベースサーバ、メールサーバなどの各種のサーバ装置を例示することができる。この実施の形態1では、各システム10−1〜10−Nは、それぞれ同一の機能を実現するシステムであるとする。このシステム10−1〜10−Nは、システム実行制御部11と、システム機能実行部12と、システム状態通知部13と、を備える。   The systems 10-1 to 10-N include one or a plurality of server devices. In the figure, the functions of the server devices included in the systems 10-1 to 10-N are combined into one virtual device. It is illustrated as a server device. Each server device constituting the systems 10-1 to 10-N is an information processing terminal provided for each application or function, and can exemplify various server devices such as a Web server, a database server, and a mail server. . In the first embodiment, each of the systems 10-1 to 10-N is a system that realizes the same function. The systems 10-1 to 10-N include a system execution control unit 11, a system function execution unit 12, and a system state notification unit 13.

システム実行制御部11は、システム10を利用するクライアント端末からサーバ装置(システム10)への処理要求やサーバ装置(システム10)からクライアント端末への出力応答を制御する。   The system execution control unit 11 controls a processing request from the client terminal using the system 10 to the server apparatus (system 10) and an output response from the server apparatus (system 10) to the client terminal.

システム機能実行部12は、クライアント端末からの自システム宛ての処理要求に対応する機能(処理)を実行する。通常は、システム設計者によって所定の機能を実行するプログラムが導入されており、このプログラムに基づいてクライアント端末からの処理要求を実行する。また、システム機能実行部12は、システム分散処理装置20から負荷が過剰にかかった他のシステム宛ての処理要求を渡されると、その処理要求に対応する機能(処理)も実行する。なお、この実施の形態1では、どのシステム10−1〜10−Nも同一の機能を有するため、他のシステム宛の処理要求をそれぞれのシステム10−1〜10−Nのシステム機能実行部12で実行することができる。   The system function execution unit 12 executes a function (process) corresponding to a process request addressed to the own system from the client terminal. Usually, a program for executing a predetermined function is introduced by a system designer, and a processing request from a client terminal is executed based on this program. Further, when the system function execution unit 12 receives a processing request addressed to another system with an excessive load from the system distributed processing device 20, the system function executing unit 12 also executes a function (processing) corresponding to the processing request. In the first embodiment, since all the systems 10-1 to 10-N have the same function, a processing request addressed to another system is sent to the system function execution unit 12 of each system 10-1 to 10-N. Can be done with.

システム状態通知部13は、自システムのシステム処理状況を監視し、たとえば所定の時間ごとに、監視したシステム処理状況をシステム状態情報としてシステム分散処理装置20に通知する。システム状態情報は、システム機能の総アクセス数や単位時間当たりのアクセス数、アクセスに対する応答時間の統計情報、実行プロセス数、CPU(Central Processing Unit)負荷状況(ロードアベレージ)、メモリ使用量、ディスク使用量を含む情報からなる。   The system status notification unit 13 monitors the system processing status of its own system, and notifies the system distributed processing device 20 of the monitored system processing status as system status information, for example, every predetermined time. System status information includes the total number of accesses of system functions, the number of accesses per unit time, response time statistical information, number of execution processes, CPU (Central Processing Unit) load status (load average), memory usage, disk usage Consists of information including quantity.

システム分散処理装置20は、自装置が管理するシステム10−1〜10−Nの負荷状態を監視し、システム全体および個々のシステムの状態が負荷と判定される所定の条件を満たす場合に、処理を分散させて実行するようにシステムに対して指示する装置であり、システム状態管理部21と、システム情報記憶部22と、負荷分散制御部23と、を備える。   The system distributed processing device 20 monitors the load states of the systems 10-1 to 10-N managed by the own device, and performs processing when satisfying a predetermined condition that the states of the entire system and individual systems are determined to be loads. The system state management unit 21, the system information storage unit 22, and the load distribution control unit 23 are provided.

システム状態管理部21は、自装置が管理するシステム10−1〜10−Nから送信されるシステム状態情報を受信し、システム情報記憶部22に格納する。なお、システム状態管理部21は、システム状態情報をシステム情報記憶部22中に過去の情報を消さずに、追加する形で格納していくものとする。   The system state management unit 21 receives system state information transmitted from the systems 10-1 to 10 -N managed by the own device, and stores the system state information in the system information storage unit 22. It is assumed that the system state management unit 21 stores the system state information in the system information storage unit 22 without adding the past information.

システム情報記憶部22は、自装置が管理するシステム10−1〜10−Nについてのシステム情報と、システム情報に対して負荷分散が必要か否かを判定する負荷判定情報と、格納する。システム情報は、上記システム状態情報に加えて、システムが利用可能な最大の利用者数である最大利用ユーザ数、CPUの性能、CPU搭載数、メモリ容量を含み、システム10ごとに管理される情報である。すなわち、システム情報は、システムを識別するシステム識別情報、システム機能の総アクセス数や単位時間当たりのアクセス数、最大利用ユーザ数、アクセスに対する応答時間の統計情報、実行プロセス数、CPUの性能、CPU搭載数、CPU負荷状況(ロードアベレージ)、メモリ容量、メモリ使用量、ディスク使用量を含む。なお、最大利用ユーザ数やCPU性能、CPU搭載数、メモリ容量の項目には、初期状態としてシステム管理者などによって予め入力されるものである。他の項目には、システム10−1〜10−Nから受信したシステム状態情報の対応する項目の内容が入力される。   The system information storage unit 22 stores system information about the systems 10-1 to 10-N managed by the own device, and load determination information for determining whether load distribution is necessary for the system information. The system information includes, in addition to the above system status information, the maximum number of users that can be used by the system, the CPU performance, the number of CPUs installed, and the memory capacity, and is managed for each system 10 It is. That is, the system information includes system identification information for identifying the system, the total number of accesses of system functions and the number of accesses per unit time, the maximum number of users, the statistical information of response time for access, the number of execution processes, the CPU performance, the CPU Includes the number of installations, CPU load status (load average), memory capacity, memory usage, and disk usage. Note that items such as the maximum number of users, CPU performance, number of CPUs installed, and memory capacity are input in advance by a system administrator or the like as an initial state. In the other items, the contents of the corresponding items of the system state information received from the systems 10-1 to 10-N are input.

また、負荷判定情報は、システム情報の各項目を用いて、負荷の状況を判定するための情報であり、たとえば上記システム情報の項目ごとに設けられる負荷分散が必要と判定される閾値であったり、上記システム情報中の複数の項目がどのような条件のときに負荷分散が必要であるかを判定する判定条件であったりする。たとえば、CPU負荷状況が、負荷分散が必要とされる閾値以上の値を示し、かつ単位時間当たりのアクセス数とメモリ使用量が負荷分散を必要とする閾値以上の場合には負荷分散を行う、というような判定条件が格納される。   The load determination information is information for determining the load status using each item of the system information. For example, the load determination information may be a threshold for determining that load distribution provided for each item of the system information is necessary. It may be a determination condition for determining under what conditions a plurality of items in the system information need load distribution. For example, if the CPU load status indicates a value that is equal to or greater than a threshold that requires load balancing, and the number of accesses per unit time and memory usage is equal to or greater than the threshold that requires load balancing, load balancing is performed. Such a determination condition is stored.

負荷分散制御部23は、システム情報記憶部22に格納されるシステム情報を負荷判定情報と比較して、各システムについて負荷分散が必要か否かを判定し、負荷分散が必要な場合には、その負荷分散が必要なシステムが行う処理の一部を他のシステム(以下、分担先システムという)に実行させるように処理要求の制御を実行する。具体的には、判定の結果、負荷が過剰にかかっているシステムが存在する場合には、そのシステムへの処理要求を分担させる分担先システムを決定し、この分担先システムに処理を分担させるための処理分担要求を送信した後、管理対象下のシステムに送信される処理要求のうち負荷分散が必要なシステム宛ての処理要求の一部を分担先システムに送信する処理を行う。   The load distribution control unit 23 compares the system information stored in the system information storage unit 22 with the load determination information, determines whether load distribution is necessary for each system, and when load distribution is necessary, The processing request is controlled so that a part of the processing performed by the system that needs the load distribution is executed by another system (hereinafter referred to as a sharing destination system). Specifically, if there is a system that is overloaded as a result of the determination, a sharing destination system that assigns processing requests to that system is determined, and this sharing destination system is responsible for sharing the processing. After the process sharing request is transmitted, a process for transmitting a part of the process request addressed to the system requiring load distribution to the sharing target system among the process requests transmitted to the managed system is performed.

負荷分散制御部23は、分担先システム決定条件に基づいて分担先システムを決定する。この分担先システム決定条件としては、たとえば負荷判定情報中の閾値から負荷がかかっていないと判定される方向の偏差が最も大きいシステムまたは閾値からの偏差が最も大きいシステムから所定の数のシステムを、負荷分散を行う分担先システムとするものでもよい。他の分担先システム決定条件の例としては、システム情報記憶部22に格納される過去の各システムについてのCPU性能/CPU使用率、メモリ容量/メモリ使用率、CPU搭載数/ロードアベレージなどの負荷情報の統計情報を用いて、そのCPU性能の大きさ、CPU使用率の低さ、ロードアベレージの低さなどによって、負荷に最もゆとりのあるシステムを分担先システムとして決定するものであってもよい。また、システム情報記憶部22に日次/週次/月次/年次などの単位で格納される各システムの負荷のピークを用いて、負荷のピークから最も離れているシステムを分担先システムとして選択するものであってもよい。いずれも分担先システム決定条件の一例であり、他の条件によって分担先システムを決定してもよい。   The load distribution control unit 23 determines the sharing destination system based on the sharing destination system determination condition. As the sharing destination system determination condition, for example, a predetermined number of systems from the system having the largest deviation in the direction in which it is determined that no load is applied from the threshold in the load determination information or the system having the largest deviation from the threshold, It may be a sharing destination system that performs load distribution. Examples of other shared system determination conditions include loads such as CPU performance / CPU usage rate, memory capacity / memory usage rate, number of installed CPUs / load average, and the like for each past system stored in the system information storage unit 22 Using the statistical information of the information, the system having the most leeway for the load may be determined as the assigned system depending on the size of the CPU performance, the low CPU usage rate, the low load average, etc. . Also, using the load peak of each system stored in the system information storage unit 22 in units such as daily / weekly / monthly / annual, the system that is farthest from the load peak is designated as the assigned system. You may choose. Both are examples of sharing destination system determination conditions, and the sharing destination system may be determined based on other conditions.

つぎに、このような構成を有するシステム分散処理システムの負荷分散処理の手順の一例について、図2のフローチャートを参照しながら説明する。まず、システム管理者によって、システム分散処理装置20のシステム情報記憶部22に、当該システム分散処理装置20で管理するシステム10−1〜10−Nのシステム情報を格納する。具体的には、システム情報記憶部22のシステム情報に初期値を設定する(ステップS11)。これは、システム分散処理装置20の負荷分散制御部23が、負荷状況の開始とともに全てのシステムについて負荷が必要となる判定をしてしまうことを防ぐための処理である。その後、負荷分散制御部23は、管理対象のシステムについての負荷分散制御を開始する(ステップS12)。なお、このときシステム分散処理装置20は、管理対象のシステムに対して、負荷分散制御を開始する旨の信号を送信するものとする。   Next, an example of the load distribution processing procedure of the system distributed processing system having such a configuration will be described with reference to the flowchart of FIG. First, the system administrator stores the system information of the systems 10-1 to 10 -N managed by the system distributed processing device 20 in the system information storage unit 22 of the system distributed processing device 20. Specifically, an initial value is set in the system information in the system information storage unit 22 (step S11). This is a process for preventing the load distribution control unit 23 of the system distributed processing device 20 from making a determination that a load is required for all the systems as the load situation starts. Thereafter, the load distribution control unit 23 starts load distribution control for the management target system (step S12). At this time, it is assumed that the system distributed processing apparatus 20 transmits a signal to start load distribution control to the management target system.

一方、各システム10−1〜10−Nのシステム状態通知部13は、システム分散処理装置20から負荷分散制御を開始する旨の信号を受信すると、各システム10−1〜10−Nの負荷状態の監視を始める(ステップS13)。この間に、クライアント端末から処理要求を受信すると、その処理要求にしたがって、システム実行制御部11は所定の処理を実行する。   On the other hand, when the system state notification unit 13 of each of the systems 10-1 to 10-N receives a signal to start load distribution control from the system distributed processing device 20, the load state of each of the systems 10-1 to 10-N. Starts monitoring (step S13). During this time, when a processing request is received from the client terminal, the system execution control unit 11 executes a predetermined processing according to the processing request.

その後、システム状態通知部13は、システム分散処理装置20による負荷分散制御の開始から所定の時間が経過したかを判定する(ステップS14)。所定の時間が経過していない場合(ステップS14でNoの場合)には、所定の時間が経過するまで引き続きシステム10−1〜10−Nの負荷状態を監視する。所定の時間が経過すると(ステップS14でYesの場合)、システム状態通知部13は、監視してきたシステム状態をシステム状態情報としてネットワーク30を介して負荷分散制御部23へと送信する(ステップS15)。   Thereafter, the system state notification unit 13 determines whether a predetermined time has elapsed since the start of the load distribution control by the system distributed processing device 20 (step S14). If the predetermined time has not elapsed (No in step S14), the load states of the systems 10-1 to 10-N are continuously monitored until the predetermined time has elapsed. When the predetermined time elapses (Yes in step S14), the system state notification unit 13 transmits the monitored system state as system state information to the load distribution control unit 23 via the network 30 (step S15). .

システム分散処理装置20のシステム状態管理部21は、各システム10−1〜10−Nから受信したシステム状態情報にそのシステムのシステム識別情報を付加してシステム情報記憶部22のシステム情報に格納する(ステップS16)。ついで、システム分散処理装置20の負荷分散制御部23は、システム情報記憶部22に記憶された各システム情報について、負荷判定情報を用いて負荷分散が必要か否かを判定する(ステップS17)。具体的には、負荷分散が必要であるとされる負荷判定情報に該当するシステムが存在するかを、各システムについて判定していく。その結果、負荷分散が必要ない場合(ステップS17でNoの場合)にはステップS16へと戻り、負荷分散制御部23は、つぎに各システムから送信されるシステム状態情報の受信を待つ。   The system state management unit 21 of the system distributed processing device 20 adds the system identification information of the system to the system state information received from each of the systems 10-1 to 10-N, and stores the system identification information in the system information storage unit 22. (Step S16). Next, the load distribution control unit 23 of the system distributed processing device 20 determines whether or not load distribution is necessary for each system information stored in the system information storage unit 22 using the load determination information (step S17). Specifically, it is determined for each system whether there is a system corresponding to the load determination information for which load distribution is required. As a result, if load distribution is not necessary (No in step S17), the process returns to step S16, and the load distribution control unit 23 then waits for reception of system state information transmitted from each system.

一方、ステップS17で負荷分散が必要な場合(ステップS17でYesの場合)には、その負荷分散が必要なシステムを抽出するとともに、負荷が負荷判定条件を満たさないシステムのうち分担先システム決定条件に基づいて最も負荷が低いシステムを分担先システムとして抽出する(ステップS18)。ついで、負荷分散制御部23は、抽出した分担先システムに対して、負荷が過剰にかかっているシステムの処理の分担を実行するように処理分担要求を送信する(ステップS19)。その後、負荷分散制御部23は、管理下にあるシステム10−1〜10−Nへの処理要求を監視し、負荷が過剰にかかっていると判定されたシステムへの処理要求を、分担先システムへと送信する(ステップS20)。   On the other hand, when load distribution is necessary in step S17 (Yes in step S17), a system that requires load distribution is extracted, and a sharing destination system determination condition among the systems in which the load does not satisfy the load determination condition. Based on the above, the system with the lowest load is extracted as the sharing destination system (step S18). Next, the load distribution control unit 23 transmits a process sharing request to the extracted sharing destination system so as to execute the process sharing of the system having an excessive load (step S19). Thereafter, the load distribution control unit 23 monitors the processing requests to the systems 10-1 to 10-N under management, and the processing requests to the systems determined to have an excessive load are assigned to the assigned system. (Step S20).

システム分散処理装置20から処理分担要求を受信した分担先システムは、負荷が過剰にかかっているシステムの処理要求の受付をシステム実行制御部11を通じて開始する(ステップS21)。ついで、その分担先システムのシステム機能実行部12は、システム分散処理装置20から受信した処理要求に対応する機能を実行し、システム実行制御部11を介して、その結果を処理要求を出したクライアント端末に返送し、分散処理を実行する(ステップS22)。その後、ステップS13へと戻り、上述した処理が繰り返し実行される。なお、ステップS15でシステム状態情報を送信した後、分担先システムとして選択されなかった他のシステムは、通常通りに、自システム宛ての処理要求の処理を実行し(ステップS23)、ステップS13へと戻り上述した処理が繰り返し実行される。以上が、システム分散処理システムにおける負荷分散処理時の動作手順である。   The sharing destination system that has received the processing sharing request from the system distributed processing device 20 starts accepting the processing request of the system having an excessive load through the system execution control unit 11 (step S21). Next, the system function execution unit 12 of the assigned system executes the function corresponding to the processing request received from the system distributed processing device 20, and sends the processing request to the result via the system execution control unit 11. The data is returned to the terminal and distributed processing is executed (step S22). Then, it returns to step S13 and the process mentioned above is repeatedly performed. In addition, after transmitting the system status information in step S15, other systems that are not selected as the sharing destination system execute processing of the processing request addressed to the own system as usual (step S23), and proceed to step S13. The process described above is repeatedly executed. The operation procedure at the time of load distribution processing in the system distributed processing system is as described above.

上述した説明では、システム分散処理装置20の負荷分散制御部23によって負荷分散が必要とされた場合に、負荷分散制御部23が、ネットワーク30上の管理対象のシステム10−1〜10−Nに対する処理要求を監視し、上記の負荷判定によって負荷分散が必要なシステムへの処理要求の一部を、分担先システムへ直接送信する場合を例に挙げたが、負荷分散制御部23が、負荷分散が必要なシステムに対して、処理の分担を行う分担先システムを分担先システム情報として通知し、負荷分散が必要なシステムのシステム実行制御部11が、その分担先システム情報で指示された分担先システムのシステム実行制御部11に対して処理要求を受け渡すようにしてもよい。   In the above description, when load distribution is required by the load distribution control unit 23 of the system distributed processing device 20, the load distribution control unit 23 applies to the managed systems 10-1 to 10 -N on the network 30. An example has been given of a case where a processing request is monitored and a part of the processing request to a system that needs load distribution is directly transmitted to the sharing destination system by the load determination described above. To the system that needs to be assigned, the sharing destination system that performs the sharing of processing is notified as the sharing destination system information, and the system execution control unit 11 of the system that requires load distribution is assigned by the sharing destination system information. A processing request may be delivered to the system execution control unit 11 of the system.

この実施の形態1によれば、同一の処理を行う複数のシステムをまとめてシステム分散処理装置20で管理し、このシステム分散処理装置20によって管理されるシステム10−1〜10−N内の負荷の低いシステムのコンピュータリソースを負荷の高いシステムのコンピュータへの処理要求に対して利用可能とすることで、それぞれのシステムの負荷状況のピークが異なることが予見され、負荷のピーク時に合わせたシステム設備を構築する必要がなくなる。その結果、信頼性のあるシステムを管理、運営する組織の設備投資を低減することができるという効果を有する。特に、同一の機能を実現する複数のシステムを多数管理することによって、1つのシステムにかかる負荷を分散させる確率を高めることが可能となる。また、管理対象内のシステムが停止した場合でも、他の残りのシステムで処理を引継ぎ、かつ同等の処理性能を維持できるという効果も有する。   According to the first embodiment, a plurality of systems that perform the same processing are collectively managed by the system distributed processing device 20, and loads in the systems 10-1 to 10-N managed by the system distributed processing device 20 By making computer resources of a low system available for processing requests to computers of a high load system, it is foreseen that the peak load status of each system will be different, and the system equipment matched to the peak load time No need to build. As a result, there is an effect that the capital investment of the organization that manages and operates the reliable system can be reduced. In particular, by managing a large number of a plurality of systems that realize the same function, it is possible to increase the probability of distributing the load on one system. In addition, even when the system within the management target is stopped, the other remaining systems can take over the process and maintain the same processing performance.

実施の形態2.
実施の形態1では、異なる組織によって運営されるが同一の機能(処理)を実行する複数のシステムの負荷を監視し、あるシステムの負荷が所定の条件を超えた場合に、システムの負荷が低い分担先システムに過剰な負荷がかかっているシステムへの処理要求の一部を分担させるようにしたが、このような構成では、同一の機能(処理)を実行するシステム同士でしか負荷の分散を行うことができない。そこで、この実施の形態2では、異なる機能(処理)を実行するシステム間でも負荷の分散を行うことができるシステム分散処理システムおよびシステム分散処理装置について説明する。
Embodiment 2. FIG.
In the first embodiment, the loads on a plurality of systems that are operated by different organizations but execute the same function (process) are monitored, and when the load on a certain system exceeds a predetermined condition, the load on the system is low. A part of the processing request to the system where the excessive load is applied to the sharing destination system was shared, but with such a configuration, the load is distributed only between systems that execute the same function (processing). I can't do it. Therefore, in the second embodiment, a system distributed processing system and a system distributed processing apparatus capable of distributing a load even between systems that execute different functions (processes) will be described.

図3は、この発明にかかるシステム分散処理システムの実施の形態2の構成を模式的に示すブロック図である。このシステム分散処理システムは、1種類または種類の異なる処理(機能)を実行する1台または複数台のサーバ装置を有する複数のシステム10−1〜10−Nと、分散処理の管理対象となるシステム10−1〜10−Nの負荷の分散を行うシステム分散処理装置20と、がインタネットなどのネットワーク30を介して接続される。なお、図示していないが、ネットワーク30にはクライアント端末も接続され、クライアント端末は、各システム10−1〜10−Nの有するサーバ装置にアクセスして、必要な情報を入手したり、必要な処理を実行させたりする。なお、ここでは、システム分散処理装置20が管理するシステム10−1〜10−NはN台(Nは自然数)であるとする。   FIG. 3 is a block diagram schematically showing the configuration of the second embodiment of the system distributed processing system according to the present invention. The system distributed processing system includes a plurality of systems 10-1 to 10-N each having one or a plurality of server apparatuses that execute one type or different types of processing (functions), and a system that is a management target of the distributed processing. A system distributed processing device 20 that distributes loads of 10-1 to 10-N is connected via a network 30 such as the Internet. Although not shown, a client terminal is also connected to the network 30, and the client terminal accesses a server device included in each of the systems 10-1 to 10-N to obtain necessary information or necessary information. Process. Here, it is assumed that the systems 10-1 to 10-N managed by the system distributed processing apparatus 20 are N (N is a natural number).

システム分散処理装置20によって管理されるそれぞれのシステム10−1〜10−Nは、みな同一の機能(処理)を実行するシステムである必要はなく、異なる機能(処理)を実行することができるシステムでよい。つまり、この実施の形態2では、システム10−1〜10−Nごとにシステム機能実行部12が異なる機能を実現するものであってもよい。また、システム機能実行部12は、実施の形態1のシステム機能実行部12において、システム分散処理装置20から負荷の分散処理を依頼された場合に、その処理を自システムで実行するためにプログラム導入機能121をさらに備える構成となっている。   Each of the systems 10-1 to 10-N managed by the system distributed processing device 20 need not be a system that executes the same function (process), and can execute a different function (process). It's okay. That is, in the second embodiment, the system function execution unit 12 may realize different functions for each of the systems 10-1 to 10-N. Further, the system function execution unit 12 introduces a program to execute the processing in its own system when the system function execution unit 12 of the first embodiment is requested to distribute the load by the system distributed processing device 20. The function 121 is further provided.

このプログラム導入機能121は、システム分散処理装置20によって、負荷が過剰なシステムが実行する処理を分担する分担先システムとして指定された場合であって、負荷が過剰なシステムが実行する処理プログラムが自システムに導入されていないときに、システム分散処理装置20のプログラム保持部24から該当する処理プログラムを取得し、自システム内に導入する処理を行う。これによって、負荷が過剰なシステムが実行する処理プログラムが自システム内(システム機能実行部12内)に存在しない場合でも、そのシステムの処理を分担して実行することが可能となる。   This program introduction function 121 is a case where the system distributed processing device 20 is designated as a sharing destination system for sharing the processing executed by the system with excessive load, and the processing program executed by the system with excessive load is automatically executed. When it is not installed in the system, the corresponding processing program is acquired from the program holding unit 24 of the system distributed processing device 20, and the processing is introduced into the own system. As a result, even when a processing program executed by a system with an excessive load does not exist in the own system (in the system function execution unit 12), the processing of the system can be shared and executed.

また、システム分散処理装置20は、実施の形態1のシステム分散処理装置20において、自装置が管理するシステム10−1〜10−Nが使用する処理プログラムを保持するプログラム保持部24をさらに備え、負荷分散制御部23は、負荷分散を行う際に分担先システムが分担する処理を実行する処理プログラムを有さない場合に必要な処理プログラムを導入(インストール)するように分担先システムに対して指示するプログラム導入指示機能231をさらに備える。なお、実施の形態1で説明したシステムとシステム分散処理装置20と同一の構成要素には、同一の符号を付して、その説明を省略している。   The system distributed processing device 20 further includes a program holding unit 24 that holds processing programs used by the systems 10-1 to 10-N managed by the own device in the system distributed processing device 20 of the first embodiment. The load distribution control unit 23 instructs the sharing destination system to install (install) a necessary processing program when there is no processing program that executes the processing shared by the sharing destination system when performing load balancing. The program introduction instruction function 231 is further provided. Note that the same components as those of the system and the system distributed processing device 20 described in the first embodiment are denoted by the same reference numerals, and description thereof is omitted.

つぎに、このような構成を有するシステム分散処理システムの負荷分散処理の手順の一例について、図4のフローチャートを参照しながら説明する。実施の形態1の図2のステップS11〜S18と同様の処理を行って、システム分散処理装置20の負荷分散制御部23は、過剰な負荷がかかったシステムが存在する場合に、分担処理が必要なシステムと、その負荷を分担させる分担先システムを抽出する(ステップS51〜S58)。すなわち、システム分散処理装置20のシステム情報記憶部22に自装置で管理するシステム10−1〜10−Nのシステム情報の初期値が設定されると、負荷分散制御部23は負荷分散制御を開始する。負荷分散制御部23は、各システム10−1〜10−Nのシステム状態通知部13からシステム状態情報を受信すると、各システム情報について負荷判定情報を用いて負荷分散が必要か否かを判定する。負荷分散が必要である場合には、その負荷分散が必要なシステムを抽出するとともに、負荷が負荷判定条件を満たさないシステムのうち分担先システム決定条件に基づいて最も負荷の低いシステムを分担先システムとして抽出する。   Next, an example of the load distribution processing procedure of the system distributed processing system having such a configuration will be described with reference to the flowchart of FIG. The processing similar to steps S11 to S18 in FIG. 2 of the first embodiment is performed, and the load distribution control unit 23 of the system distributed processing device 20 requires a sharing process when there is a system with an excessive load. A system and a sharing destination system for sharing the load (steps S51 to S58). That is, when the initial value of the system information of the systems 10-1 to 10-N managed by the own device is set in the system information storage unit 22 of the system distributed processing device 20, the load distribution control unit 23 starts the load distribution control. To do. When receiving the system state information from the system state notification unit 13 of each of the systems 10-1 to 10-N, the load distribution control unit 23 determines whether or not load distribution is necessary for each system information using the load determination information. . When load distribution is necessary, the system that needs load distribution is extracted, and the system with the lowest load among the systems whose load does not satisfy the load judgment condition is determined based on the share destination system determination condition. Extract as

ついで、負荷分散制御部23は、抽出した分担先システムに対して、負荷が過剰にかかっているシステムの処理の分担を実行するように処理分担要求を送信する(ステップS59)。この処理分担要求には、分担する処理プログラム名などの処理内容が含まれているものとする。処理分担要求を受信した分担先システムのシステム実行制御部11は、処理分担要求中の処理内容を自システムで実行できるか否かを判定する(ステップS60)。判定の結果、自システムで実行できない場合(ステップS60でNoの場合)には、システム実行制御部11は、システム分散処理装置20に対して、処理プログラムがないことを示す処理プログラム入手要求を送信する(ステップS61)。   Next, the load distribution control unit 23 transmits a process sharing request to the extracted sharing destination system so as to execute the process sharing of the system having an excessive load (step S59). This processing sharing request includes processing contents such as the name of the processing program to be shared. The system execution control unit 11 of the sharing destination system that has received the process sharing request determines whether or not the processing content in the process sharing request can be executed by the own system (step S60). As a result of the determination, if it cannot be executed in its own system (No in step S60), the system execution control unit 11 transmits a processing program acquisition request indicating that there is no processing program to the system distributed processing device 20. (Step S61).

システム分散処理装置20の負荷分散制御部23のプログラム導入指示機能231は、分担先システムから処理プログラム入手要求を受信すると(ステップS62)、その処理プログラムの存在場所を示す処理プログラム格納情報を分担先システムに通知する(ステップS63)。この処理プログラム格納情報は、たとえば、処理プログラムのプログラム保持部24内の格納場所を示すURL(Uniform Resource Locator)などである。分担先システムのシステム機能実行部12のプログラム導入機能121は、受信した処理プログラム格納情報に基づいて処理プログラムを取得(ダウンロード)し(ステップS64)、処理プログラムを自システムに導入して実行可能な状態にする(ステップS65)。その後またはステップS60で自システムで処理分担要求中の処理内容を実行できる場合(ステップS60でYesの場合)には、システム機能実行部12は、処理プログラムを実行可能な状態にしたことを示す処理プログラム導入完了通知をシステム分散処理装置20に対して送信する(ステップS66)。その後、分担先システムは、負荷が過剰にかかっているシステムの処理要求の受付をシステム実行制御部11を通じて開始する(ステップS67)。   When the program introduction instruction function 231 of the load distribution control unit 23 of the system distributed processing device 20 receives the processing program acquisition request from the sharing destination system (step S62), the sharing destination stores the processing program storage information indicating the location of the processing program. The system is notified (step S63). The processing program storage information is, for example, a URL (Uniform Resource Locator) indicating a storage location of the processing program in the program holding unit 24. The program introduction function 121 of the system function execution unit 12 of the assigned system acquires (downloads) the processing program based on the received processing program storage information (step S64), and can be executed by introducing the processing program into the own system. The state is set (step S65). After that or when the processing contents in the process sharing request can be executed in the own system in step S60 (Yes in step S60), the system function execution unit 12 indicates that the processing program has been made executable. A program introduction completion notification is transmitted to the system distributed processing device 20 (step S66). Thereafter, the sharing destination system starts accepting a processing request of the system having an excessive load through the system execution control unit 11 (step S67).

一方、システム分散処理装置20の負荷分散制御部23は、分担先システムから処理プログラム完了通知を受信すると(ステップS68)、監視中の管理下にあるシステム10−1〜10−Nへの処理要求のうち負荷が過剰にかかっていると判定されたシステムへの処理要求の一部を、分担先システムへと送信する(ステップS69)。分担先システムのシステム機能実行部12は、システム分散処理装置20から受信した処理要求に対応する機能を実行し、システム実行制御部11を介してその結果を処理要求を出したクライアント端末に返送し、分散処理を実行する(ステップS70)。その後、ステップS53へと戻り、上述した処理が繰り返し実行される。なお、ステップS55でシステム状態情報を送信した後、分担先システムとして選択されなかった他のシステムは、通常通りに、自システム宛ての処理要求の処理を実行し(ステップS71)、ステップS53へと戻り上述した処理が繰り返し実行される。   On the other hand, when the load distribution control unit 23 of the system distributed processing device 20 receives the processing program completion notification from the sharing destination system (step S68), the processing request to the systems 10-1 to 10-N under management under monitoring is received. A part of the processing request to the system determined to be excessively loaded is transmitted to the sharing destination system (step S69). The system function execution unit 12 of the assigned system executes the function corresponding to the processing request received from the system distributed processing device 20, and returns the result to the client terminal that issued the processing request via the system execution control unit 11. Then, distributed processing is executed (step S70). Thereafter, the process returns to step S53, and the above-described processing is repeatedly executed. In addition, after transmitting the system status information in step S55, the other systems that are not selected as the sharing destination system execute processing of the processing request addressed to the own system as usual (step S71), and proceed to step S53. The process described above is repeatedly executed.

なお、上述した説明では、ステップS60で分担先システムのシステム実行制御部11が分担する処理を実行可能か否かを判断するようにしているが、システム分散処理装置20の負荷分散制御部23が分担先システムがその判断を実行するようにしてもよい。この場合、システム情報記憶部22のシステム情報には、実施の形態1で説明した項目に加え、各システム10−1〜10−N内に導入されている処理プログラム名が含まれる必要があり、負荷分散制御部23が分担先システムの実行制御部が分担する処理を実行可能か否かを判断するようにすればよい。そして、判断の結果、分担先システムが処理を実行できない場合には、負荷分散制御部23のプログラム導入指示機能231が、負荷分散が必要なシステムの処理を行うために必要な処理プログラムをプログラム保持部24から検索し、その処理プログラムを分担先システムに通知すればよい。   In the above description, it is determined in step S60 whether or not the processing shared by the system execution control unit 11 of the sharing destination system can be executed. However, the load distribution control unit 23 of the system distributed processing device 20 performs the process. The sharing destination system may execute the determination. In this case, the system information in the system information storage unit 22 needs to include the names of the processing programs installed in the systems 10-1 to 10-N in addition to the items described in the first embodiment. What is necessary is just to make it determine whether the load distribution control part 23 can perform the process which the execution control part of a share destination system can perform. If the assignment destination system cannot execute the process as a result of the determination, the program introduction instruction function 231 of the load distribution control unit 23 holds a program for a processing program necessary for performing the process of the system that requires load distribution. It is only necessary to search from the unit 24 and notify the sharing system of the processing program.

また、上述した説明では、ステップS64で分担先システムがシステム分散処理装置20から処理プログラム格納情報に基づいて処理プログラムをダウンロードするようにしているが、システム分散処理装置20が分担先システムに対して、処理プログラム格納情報に代えて処理プログラムを送信するようにしてもよい。   In the above description, the assignment destination system downloads the processing program from the system distributed processing device 20 based on the processing program storage information in step S64. Instead of the processing program storage information, the processing program may be transmitted.

この実施の形態2によれば、異なる機能を実行する複数のシステムでシステム処理分散システムが構成されるでも、負荷の高いシステムで行っている処理と同じ処理プログラムを、負荷の低いシステムに導入して実行可能とすることで、負荷のピーク時に合わせたシステム設備を構築する必要がなくなり、そのためのシステムを管理、運営する組織の設備投資を低減することができるという効果を有する。これにより、汎用性の高い負荷分散を行うシステムを提供することができるという効果を有する。   According to the second embodiment, even if a system processing distributed system is configured by a plurality of systems that execute different functions, the same processing program as that performed in a system with a high load is introduced into a system with a low load. This makes it unnecessary to construct a system facility that matches the peak load, thereby reducing the capital investment of the organization that manages and operates the system. Thereby, it has the effect that the system which performs highly versatile load distribution can be provided.

実施の形態3.
実施の形態2では、分担先システムが分担する処理を実行できない場合に、その処理を行うための処理プログラムを自システム内に導入する場合を説明した。この実施の形態3では、さらに細かい単位で、処理プログラムを導入することができる場合について説明する。
Embodiment 3 FIG.
In the second embodiment, the case has been described in which the processing program for performing the processing is introduced into the own system when the processing shared by the sharing destination system cannot be executed. In the third embodiment, a case where a processing program can be introduced in a smaller unit will be described.

たとえば、複数種類の処理プログラムを比較すると、異なる種類の処理プログラム間で共通の機能を有するプログラム部分と、その処理プログラムで特有の機能を有するプログラム部分と、を有する場合がある。そのため、この実施の形態3では、処理プログラムを、機能別プログラムを管理する共通プログラムと、その共通プログラム上で動作する機能別プログラムと、に分離して作製するようにしている。   For example, when a plurality of types of processing programs are compared, there may be a program portion having a common function among different types of processing programs and a program portion having a function specific to the processing program. For this reason, in the third embodiment, the processing program is divided into a common program that manages the function-specific program and a function-specific program that operates on the common program.

図5は、各システムのシステム機能実行部の実施の形態3の機能構成を模式的に示すブロック図である。このシステム機能実行部12は、複数の機能を実行するための処理プログラムが共通に持つプログラム部分(共通プログラム)を実行するための機能実行制御機能122と、機能実行制御機能122上で各処理プログラムが個々に持つ機能を実行するプログラム部分(機能別プログラム)を実行するための機能実行機能123と、機能実行機能123に対応する各処理プログラムの導入処理を行うプログラム導入機能121と、から構成される。   FIG. 5 is a block diagram schematically showing a functional configuration of the system function execution unit according to the third embodiment of each system. The system function execution unit 12 includes a function execution control function 122 for executing a program part (common program) shared by processing programs for executing a plurality of functions, and each processing program on the function execution control function 122. The function execution function 123 for executing the program part (function-specific program) for executing the functions of the program, and the program introduction function 121 for introducing each processing program corresponding to the function execution function 123. The

たとえば、機能実行制御機能122は、Webシステムのミドルウェアであるアプリケーションサーバとし、機能実行機能123はアプリケーションサーバ上に配備された個々のアプリケーションと考えることができる。   For example, the function execution control function 122 can be considered as an application server that is middleware of a Web system, and the function execution function 123 can be considered as an individual application deployed on the application server.

この実施の形態3による負荷分散処理における処理手順は、あるシステムが分担先システムとして他のシステムの処理を分担するように要求された場合に、その分担先システムのシステム機能実行部12中に、自システム内に要求された処理を実行する機能実行機能123が存在するか否かを判定し、存在しない場合には要求された処理を実行する機能実行機能123に対応する機能別プログラムをダウンロードして実行可能な状態とする点が実施の形態2と異なる部分である。なお、その他の部分は同一であるので、その説明を省略する。   The processing procedure in the load distribution processing according to the third embodiment is such that when a certain system is requested to share the processing of another system as a sharing destination system, in the system function execution unit 12 of the sharing destination system, It is determined whether or not the function execution function 123 for executing the requested process exists in the own system. If not, the function-specific program corresponding to the function execution function 123 for executing the requested process is downloaded. This is a different point from the second embodiment in that it can be executed. Since other parts are the same, description thereof is omitted.

この実施の形態3によれば、各システムで実行される処理プログラムをさらに細かな単位で管理するようにしたので、処理プログラム(機能別プログラム)のサイズを小さくすることができ、分担先システムが処理プログラムをシステム分散処理装置20のプログラム保持部24から取得する時間を短くするとともに、システムへの導入時間も短縮することができる。その結果、負荷が過剰にかかっているシステムに対する処理要求の分担処理を速やかに実施することができるという効果を有する。   According to the third embodiment, since the processing program executed in each system is managed in finer units, the size of the processing program (function-specific program) can be reduced, and The time for acquiring the processing program from the program holding unit 24 of the system distributed processing device 20 can be shortened, and the introduction time into the system can also be shortened. As a result, there is an effect that it is possible to quickly carry out the processing sharing of processing requests for a system with an excessive load.

なお、実施の形態2,3において、分担先システムのシステム機能実行部12を構成する処理プログラムは、そのシステム機能実行部12による処理が開始される前に、またはその処理が実行開始時に実行可能となるタイミングで導入されている必要がある。   In the second and third embodiments, the processing program constituting the system function execution unit 12 of the assigned system can be executed before the processing by the system function execution unit 12 is started or when the processing is started. It is necessary to be introduced at the timing.

以上のように、本発明にかかるシステム分散処理システムは、システムに対して負荷がかかった場合にその負荷を分散させる場合に有用である。   As described above, the system distributed processing system according to the present invention is useful for distributing the load when a load is applied to the system.

この発明によるシステム分散処理システムの構成を模式的に示すブロック図である。It is a block diagram which shows typically the structure of the system distributed processing system by this invention. システム分散処理システムの負荷分散処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the load distribution process of a system distributed processing system. この発明によるシステム分散処理システムの実施の形態2の構成を模式的に示すブロック図である。It is a block diagram which shows typically the structure of Embodiment 2 of the system distributed processing system by this invention. システム分散処理システムの負荷分散処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the load distribution process of a system distributed processing system. 各システムのシステム機能実行部の実施の形態3の機能構成を模式的に示すブロック図である。It is a block diagram which shows typically the function structure of Embodiment 3 of the system function execution part of each system.

符号の説明Explanation of symbols

10−1〜10−N システム
11 システム実行制御部
12 システム機能実行部
13 システム状態通知部
20 システム分散処理装置
21 システム状態管理部
22 システム情報記憶部
23 負荷分散制御部
24 プログラム保持部
30 ネットワーク
121 プログラム導入機能
122 機能実行制御機能
123 機能実行機能
231 プログラム導入指示機能
10-1 to 10-N system 11 system execution control unit 12 system function execution unit 13 system state notification unit 20 system distributed processing device 21 system state management unit 22 system information storage unit 23 load distribution control unit 24 program holding unit 30 network 121 Program introduction function 122 Function execution control function 123 Function execution function 231 Program introduction instruction function

Claims (11)

同一の処理を実行する1または複数のサーバ装置を有する複数のシステムとネットワークを介して接続され、前記システムの負荷を監視して過剰な負荷のかかっているシステムの処理を他のシステムに分散させるシステム分散処理装置であって、
管理対象となる前記システムから受信した該システムの処理状況を含むシステム状態情報を前記システムと対応付けたシステム情報として格納するシステム情報記憶手段と、
前記システム情報記憶手段中の各システムのシステム情報を用いて所定の基準よりも高い負荷のかかっているシステムが存在するかを判定し、前記所定の基準よりも負荷の高いシステムの処理要求の一部を負荷の低い他のシステムに分担させるように制御する負荷分散制御手段と、
を備えることを特徴とするシステム分散処理装置。
Connected to a plurality of systems having one or a plurality of server apparatuses that execute the same processing via a network, monitors the load of the system, and distributes the processing of a system with an excessive load to other systems. A system distributed processing device,
System information storage means for storing system state information including the processing status of the system received from the system to be managed as system information associated with the system;
The system information of each system in the system information storage means is used to determine whether there is a system with a load higher than a predetermined standard, and one of processing requests of a system with a higher load than the predetermined standard. Load balancing control means for controlling the system to share with other systems with low load,
A system distributed processing apparatus comprising:
ある処理を実行する1または複数のサーバ装置を有する複数のシステムとネットワークを介して接続され、前記システムの負荷を監視して過剰な負荷のかかっているシステムの処理を他のシステムに分散させるシステム分散処理装置であって、
管理対象となる前記システムから受信した該システムの処理状況を含むシステム状態情報を前記システムと対応付けたシステム情報として格納するシステム情報記憶手段と、
前記システム情報記憶手段中の各システムのシステム情報を用いて所定の基準よりも高い負荷のかかっているシステムが存在するかを判定し、前記所定の基準よりも負荷の高いシステムの処理要求の一部を負荷の低い他のシステムに分担させるように制御する負荷分散制御手段と、
を備え、
前記負荷分散制御手段は、前記負荷の低いシステムが前記負荷の高いシステムへの処理要求に対する処理手段を有さない場合に、前記負荷の高いシステムへの処理要求を実行する処理プログラムの導入指示を前記負荷の低いシステムに対して行うプログラム導入指示機能を有することを特徴とするシステム分散処理装置。
A system connected via a network to a plurality of systems having one or a plurality of server apparatuses that execute a certain process, and monitors the load of the system and distributes the processes of the system with an excessive load to other systems A distributed processing device,
System information storage means for storing system state information including the processing status of the system received from the system to be managed as system information associated with the system;
The system information of each system in the system information storage means is used to determine whether there is a system with a load higher than a predetermined standard, and one of processing requests of a system with a higher load than the predetermined standard. Load balancing control means for controlling the system to share with other systems with low load,
With
The load distribution control means instructs the introduction of a processing program for executing a processing request to the high-load system when the low-load system does not have a processing means for the processing request to the high-load system. A system distributed processing apparatus having a program introduction instruction function for the low-load system.
前記負荷分散制御手段は、管理対象となる全てのシステムの処理要求を監視し、負荷の高いシステムが存在する場合に、前記負荷の高いシステムへの処理要求の一部を前記負荷の低い他のシステムに送信することを特徴とする請求項1または2に記載のシステム分散処理装置。   The load distribution control means monitors processing requests of all systems to be managed, and when there is a system with a high load, a part of the processing requests to the system with a high load is transferred to another one with the low load. The system distributed processing apparatus according to claim 1, wherein the system distributed processing apparatus is transmitted to the system. 前記負荷分散制御手段は、負荷の高いシステムが存在する場合に、処理要求の分担を実行させる前記負荷の低い他のシステムを前記負荷の高いシステムに通知することを特徴とする請求項1または2に記載のシステム分散処理装置。   3. The load distribution control means, when there is a system with a high load, notifies the system with a high load to the other system with a low load that executes the sharing of processing requests. The system distributed processing apparatus described in 1. 同一の処理を実行する1または複数のサーバ装置を有する複数のシステムと、前記システムの負荷を監視して過剰な負荷のかかっているシステムの処理を他のシステムに分散させるシステム分散処理装置と、がネットワークに接続されたシステム分散処理システムであって、
前記システムは、
自システムの処理状況を監視して、所定のタイミングで前記システム分散処理装置に前記処理状況を含むシステム状態情報を送信するシステム状態通知手段と、
自システムへ処理要求を行ったクライアント端末との間の応答処理を行うシステム実行制御手段と、
自システムへの前記処理要求に対する所定の処理を実行するとともに、前記システム分散処理装置による分担制御によって受け付けた他のシステムへの処理要求に対する所定の処理を実行するシステム機能実行手段と、
を備え、
前記システム分散処理装置は、
管理対象となる前記システムから受信した前記システム状態情報をそのシステムと対応付けたシステム情報として格納するシステム情報記憶手段と、
前記システム情報記憶手段中の各システムのシステム情報を用いて所定の基準よりも高い負荷のかかっているシステムが存在するかを判定し、前記所定の基準よりも負荷の高いシステムの処理要求の一部を負荷の低い他のシステムに分担させるように制御する負荷分散制御手段と、
を備えることを特徴とするシステム分散処理システム。
A plurality of systems having one or a plurality of server devices that execute the same processing; a system distributed processing device that monitors the load of the system and distributes the processing of a system with an excessive load to other systems; Is a system distributed processing system connected to the network,
The system
System status notification means for monitoring the processing status of the own system and transmitting system status information including the processing status to the system distributed processing device at a predetermined timing;
System execution control means for performing response processing with a client terminal that has made a processing request to the own system;
System function execution means for executing predetermined processing for the processing request to the own system and executing predetermined processing for the processing request to another system received by the sharing control by the system distributed processing device;
With
The system distributed processing apparatus includes:
System information storage means for storing the system state information received from the system to be managed as system information associated with the system;
The system information of each system in the system information storage means is used to determine whether there is a system with a load higher than a predetermined standard, and one of processing requests of a system with a higher load than the predetermined standard. Load balancing control means for controlling the system to share with other systems with low load,
A system distributed processing system comprising:
1または複数のサーバ装置を有する複数のシステムと、前記システムの負荷を監視して過剰な負荷のかかっているシステムの処理を他のシステムに分散させるシステム分散処理装置と、がネットワークに接続されたシステム分散処理システムであって、
前記システムは、
自システムの処理状況を監視して、所定のタイミングで前記システム分散処理装置に前記処理状況を含むシステム状態情報を送信するシステム状態通知手段と、
自システムへ処理要求を行ったクライアント端末との間の応答処理を行うシステム実行制御手段と、
自システムへの前記処理要求に対する所定の処理を実行するとともに、前記システム分散処理装置による分担制御によって受け付けた他のシステムへの処理要求に対する所定の処理を実行するシステム機能実行手段と、
を備え、
前記システム分散処理装置は、
管理対象となる前記システムから受信した前記システム状態情報をそのシステムと対応付けたシステム情報として格納するシステム情報記憶手段と、
管理対象となる前記システムが行う処理を実行するための処理プログラムを格納するプログラム保持手段と、
前記システム情報記憶手段中の各システムのシステム情報を用いて所定の基準よりも高い負荷のかかっているシステムが存在するかを判定し、前記所定の基準よりも負荷の高いシステムの処理要求の一部を負荷の低い他のシステムに分担させるように制御する負荷分散制御手段と、
を備え、
前記システム分散処理装置の前記負荷分散制御手段は、前記負荷の低いシステムが、前記負荷の高いシステムへの処理要求に対応するシステム機能実行手段を有さない場合に、前記負荷の高いシステムへの処理要求を実行するための処理プログラムの保存場所を含む前記処理プログラムの導入指示を前記負荷の低いシステムに対して行うプログラム導入指示機能を有し、
前記システムの前記システム機能実行手段は、前記システム分散処理装置による分担制御によって前記負荷の高いシステムへの処理要求を受け付けると、前記負荷の高いシステムが実現する機能を実行するための処理プログラムを前記導入指示に基づいて前記システム分散処理装置の前記プログラム保持手段から取得し、実行可能なように導入するプログラム導入機能を有することを特徴とするシステム分散処理システム。
A plurality of systems having one or a plurality of server devices and a system distributed processing device that monitors the load of the system and distributes the processing of the overloaded system to other systems are connected to a network A system distributed processing system,
The system
System status notification means for monitoring the processing status of the own system and transmitting system status information including the processing status to the system distributed processing device at a predetermined timing;
System execution control means for performing response processing with a client terminal that has made a processing request to the own system;
System function execution means for executing predetermined processing for the processing request to the own system and executing predetermined processing for the processing request to another system received by the sharing control by the system distributed processing device;
With
The system distributed processing apparatus includes:
System information storage means for storing the system state information received from the system to be managed as system information associated with the system;
Program holding means for storing a processing program for executing processing performed by the system to be managed;
The system information of each system in the system information storage means is used to determine whether there is a system with a load higher than a predetermined standard, and one of processing requests of a system with a higher load than the predetermined standard. Load balancing control means for controlling the system to share with other systems with low load,
With
The load distribution control unit of the system distributed processing device is configured to transfer the system to the high load system when the low load system does not have a system function execution unit corresponding to a processing request to the high load system. A program introduction instruction function for instructing the system with a low load to introduce the processing program including a storage location of the processing program for executing the processing request;
When the system function execution unit of the system receives a processing request to the high-load system by sharing control by the system distributed processing device, the system function execution unit executes a processing program for executing a function realized by the high-load system A system distributed processing system having a program introduction function that is acquired from the program holding means of the system distributed processing apparatus based on an introduction instruction and is introduced so as to be executable.
前記システムの前記システム機能実行手段は、所定の単位でまとめられた複数の機能から構成される処理プログラムを取得して実行可能に導入することを特徴とする請求項6に記載のシステム分散処理システム。   The system distributed processing system according to claim 6, wherein the system function execution unit of the system acquires and executes a processing program composed of a plurality of functions grouped in a predetermined unit. . 前記システムの前記システム機能実行手段は、
前記処理プログラム中のある機能を実現するための機能別プログラムに基づいた処理を実行する機能実行機能と、
前記処理プログラム中の前記機能別プログラムを管理する共通プログラムに基づいた処理を実行する機能実行制御機能と、
前記システム分散処理装置による分担制御によって前記負荷の高いシステムへの処理要求を受け付けると、前記負荷の高いシステムへの処理要求を実行するための機能別プログラムを前記導入指示に基づいて取得し、実行可能なように導入するプログラム導入機能と、
を有することを特徴とする請求項6に記載のシステム分散処理システム。
The system function execution means of the system includes:
A function execution function for executing processing based on a function-specific program for realizing a function in the processing program;
A function execution control function for executing processing based on a common program for managing the function-specific program in the processing program;
Upon receiving a processing request to the high load system by sharing control by the system distributed processing device, a function-specific program for executing the processing request to the high load system is acquired based on the introduction instruction and executed. Program introduction function to introduce as possible,
The system distributed processing system according to claim 6, further comprising:
前記システムの前記システム機能実行手段を構成する処理プログラムは、そのシステム機能実行手段による処理が開始される前に、またはその処理が実行開始時に実行可能となるタイミングで導入されることを特徴とする請求項6〜8のいずれか1つに記載のシステム分散処理システム。   The processing program constituting the system function execution unit of the system is introduced before the process by the system function execution unit is started or at a timing at which the process can be executed at the start of execution. The system distributed processing system as described in any one of Claims 6-8. 前記システム分散処理装置の前記負荷分散制御手段は、管理対象となる全てのシステムの処理要求を監視し、負荷の高いシステムが存在する場合に、前記負荷の高いシステムへの処理要求の一部を前記負荷の低い他のシステムに渡すことを特徴とする請求項5〜9のいずれか1つに記載のシステム分散処理システム。   The load distribution control means of the system distributed processing device monitors the processing requests of all the systems to be managed, and when there is a system with a high load, a part of the processing request to the system with a high load exists. The system distributed processing system according to claim 5, wherein the system is transferred to another system having a low load. 前記システム分散処理装置の前記負荷分散制御手段は、負荷の高いシステムが存在する場合に、前記負荷の高いシステムに処理要求の分担を実行させる前記負荷の低い他のシステムを通知し、
前記システムの前記システム実行制御手段は、受信した処理要求の一部を前記システム分散処理装置から通知された前記負荷の低い他のシステムへ送信する機能をさらに備えることを特徴とする請求項5〜9のいずれか1つに記載のシステム分散処理システム。
The load distribution control means of the system distributed processing device, when there is a high load system, notifies the low load other system that causes the high load system to execute processing request sharing,
The system execution control means of the system further comprises a function of transmitting a part of the received processing request to another system with a low load notified from the system distributed processing device. The system distributed processing system according to any one of 9.
JP2006154800A 2006-06-02 2006-06-02 System-distributed processor and system-distributed processing system Pending JP2007323499A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006154800A JP2007323499A (en) 2006-06-02 2006-06-02 System-distributed processor and system-distributed processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006154800A JP2007323499A (en) 2006-06-02 2006-06-02 System-distributed processor and system-distributed processing system

Publications (1)

Publication Number Publication Date
JP2007323499A true JP2007323499A (en) 2007-12-13

Family

ID=38856237

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006154800A Pending JP2007323499A (en) 2006-06-02 2006-06-02 System-distributed processor and system-distributed processing system

Country Status (1)

Country Link
JP (1) JP2007323499A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282848A (en) * 2008-05-23 2009-12-03 Fujitsu Ltd Abnormality determining apparatus

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282848A (en) * 2008-05-23 2009-12-03 Fujitsu Ltd Abnormality determining apparatus
JP4627327B2 (en) * 2008-05-23 2011-02-09 富士通株式会社 Abnormality judgment device
US8089712B2 (en) 2008-05-23 2012-01-03 Fujitsu Limited Abnormality determining apparatus

Similar Documents

Publication Publication Date Title
EP3522013B1 (en) Method and system for migration of containers in a container orchestration platform between compute nodes
US8239868B2 (en) Computer system, servers constituting the same, and job execution control method and program
Abad et al. Package-aware scheduling of faas functions
CN100375093C (en) Processing of multiroute processing element data
CN108900626B (en) Data storage method, device and system in cloud environment
US8856286B2 (en) Optimized peer-to-peer file transfers on a multi-node computer system
US20050021511A1 (en) System and method for load balancing in database queries
US20110173319A1 (en) Apparatus and method for operating server using virtualization technique
US7181574B1 (en) Server cluster using informed prefetching
US9736235B2 (en) Computer system, computer, and load balancing method
US20080148272A1 (en) Job allocation program, method and apparatus
US11438271B2 (en) Method, electronic device and computer program product of load balancing
US20170220385A1 (en) Cross-platform workload processing
CN110309229A (en) The data processing method and distributed system of distributed system
CN112039963B (en) Processor binding method and device, computer equipment and storage medium
JP2013182509A (en) Virtualization system, load distribution device, load distribution method and load distribution program
EP1611523B1 (en) Controlling usage of system resources by a network manager
JP2007323499A (en) System-distributed processor and system-distributed processing system
CN116302534A (en) Method, device, equipment and medium for optimizing performance of server storage equipment
US8850440B2 (en) Managing the processing of processing requests in a data processing system comprising a plurality of processing environments
CN112532754B (en) Method and system for rapidly serving school network files
Byun et al. DynaGrid: A dynamic service deployment and resource migration framework for WSRF-compliant applications
US20150263958A1 (en) Load balancing apparatus and method
JP2002342193A (en) Method, device and program for selecting data transfer destination server and storage medium with data transfer destination server selection program stored therein
Berwal et al. Load Balancing in cloud computing