JP2015153299A - Processing control system, processing control method, and program - Google Patents
Processing control system, processing control method, and program Download PDFInfo
- Publication number
- JP2015153299A JP2015153299A JP2014028460A JP2014028460A JP2015153299A JP 2015153299 A JP2015153299 A JP 2015153299A JP 2014028460 A JP2014028460 A JP 2014028460A JP 2014028460 A JP2014028460 A JP 2014028460A JP 2015153299 A JP2015153299 A JP 2015153299A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- request
- received
- result
- transmitted
- 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
Links
Images
Landscapes
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
端末からの処理要求を複数の処理装置に送信する処理分散部を備える処理制御システムに関する。 The present invention relates to a processing control system including a processing distribution unit that transmits processing requests from a terminal to a plurality of processing devices.
昨今、クラウドコンピューティングの台頭により、ネットワーク、サーバ、及びストレージ等の物理的なコンピューティング資源(ハードウェア資源)を潤沢に備えたシステム上に、仮想化技術を用いて多種多様なシステムを複数構築する事例が多くなっている。 Recently, with the rise of cloud computing, on the system with abundant physical computing resources (hardware resources) such as network, server, and storage, multiple different systems are built using virtualization technology. There are many cases to do.
また、仮想化技術の進展によって、ハードウェア資源の増設及び減設は容易となり、各種処理を実行するサーバの調達は容易となっている。 Further, with the advancement of virtualization technology, hardware resources can be easily increased and reduced, and it is easy to procure servers that execute various processes.
いつでもデータをシステムに入出力し、サービスを停止させることなく各種処理をシステムに実行させたいというユーザのニーズ、及びシステムが保有する情報(データ)の重要性は増す一方であり、システム運用者等にとってサービスを停止させずにシステムをいかに保全するかが問題となる。 The need for users to input / output data to / from the system at any time and allow the system to execute various processes without stopping services, and the importance of information (data) held by the system is increasing. The problem is how to maintain the system without stopping the service.
このような問題に対し、クラスタ構成を採用することによってサービス停止時間を最小限に留めることが一般的である。通常、HA(High Availability)クラスタは一対のサーバA及びBによって構成され、これらのサーバA及びBは同時に稼動できる。サーバA及びBのうち一方のサーバで故障が発生した場合、他方のサーバが故障したサーバの処理の一部または全てを引き継ぐことができる。 In order to deal with such problems, it is common to minimize the service stop time by adopting a cluster configuration. Usually, an HA (High Availability) cluster is composed of a pair of servers A and B, and these servers A and B can operate simultaneously. When a failure occurs in one of the servers A and B, the other server can take over part or all of the processing of the failed server.
クラスタを構成するサーバの管理が容易にする技術として特開2001−109639号公報(特許文献1)がある。 Japanese Patent Laid-Open No. 2001-109639 (Patent Document 1) is a technique that facilitates management of servers that constitute a cluster.
特許文献1の公報には、「資源グループが「自動的に」生成されると言われるのは、どの資源がある特定の資源グループに入るかを定義することにシステム管理者が直接関わらないことが好ましいからである。そうではなくて、管理者は単に、所与のアプリケーションをその時に実行しているコンピュータで故障が発生した場合に、そのアプリケーションと並置しなければならない資源のセットを識別するだけである。この場合、資源グループが、1組のコロケーション「制約」または規則を使用して自動的に生成される。第1のコロケーション制約は、所与のアプリケーションについて任意のユーザ定義コロケーションを実施することが好ましく、第2の制約は、同一の物理ディスク上に常駐するディスク区画資源を並置する。」と記載されている。
According to the publication of
しかし、特許文献1では、アプリケーション及び当該アプリケーションが使用する資源を管理するものであり、端末から送信された処理要求を複数の処理装置に送信する処理分散部を有する処理制御システムに適用できない。
However,
このため、本発明は、サービスを停止させずにシステムの保守作業を可能としつつ、管理者のシステムの管理を容易にする処理制御システムを提供することを目的とする。 Therefore, an object of the present invention is to provide a processing control system that facilitates management of an administrator's system while enabling maintenance of the system without stopping the service.
本発明の代表的な一例を示せば、端末から送信された処理要求に対応する処理を実行する複数の処理装置と、前記複数の処理装置にネットワークを介して接続され、前記端末から送信された処理要求を前記ネットワークを介して前記複数の処理装置に送信する処理分散部と、を備える処理制御システムであって、前記処理分散部は、前記端末から処理要求を受信した場合、前記受信した処理要求を前記ネットワークにブロードキャストで送信し、前記処理装置は、前記処理分散部から処理要求を受信した場合、前記受信した処理要求に対応する処理を実行し、処理結果を前記処理分散部に送信し、前記処理分散部は、前記処理装置から処理結果を受信した場合、前記受信した複数の処理結果の分布に基づいて、前記処理要求に対する最も確からしい処理結果である推定処理結果を決定し、前記処理要求を送信した端末に前記決定した推定処理結果を送信することを特徴とする。 If a typical example of the present invention is shown, a plurality of processing devices that execute processing corresponding to a processing request transmitted from a terminal, and the plurality of processing devices connected via a network and transmitted from the terminal A processing control system comprising: a processing distribution unit configured to transmit a processing request to the plurality of processing devices via the network, wherein the processing distribution unit receives the processing request when the processing request is received from the terminal. The request is broadcasted to the network, and when the processing device receives a processing request from the processing distribution unit, the processing device executes a process corresponding to the received processing request and transmits a processing result to the processing distribution unit. When the processing distribution unit receives a processing result from the processing device, the processing distribution unit is most reliable for the processing request based on the distribution of the plurality of received processing results. Determining the estimation processing result is correct processing result, and transmits the determined estimation processing result to the transmitted terminal the processing request.
本願において開示される発明のうち代表的なものによって得られる効果を簡潔に説明すれば、下記の通りである。すなわち、サービスを停止させずにシステムの保守作業を可能としつつ、管理者のシステムの管理を容易にする処理制御システムを提供することを目的とする。 The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows. That is, it is an object of the present invention to provide a processing control system that facilitates management of an administrator's system while enabling system maintenance work without stopping services.
上記した以外の課題、構成、及び効果は、以下の実施形態の説明により明らかにされる。 Problems, configurations, and effects other than those described above will be clarified by the following description of embodiments.
実施例1について図1〜図27を用いて説明する。図1は、実施例1の処理制御システムの説明図である。 A first embodiment will be described with reference to FIGS. FIG. 1 is an explanatory diagram of a processing control system according to the first embodiment.
本実施例の処理制御システムは、複数のクライアント(端末)7と、管理サーバ9と、複数の分散装置(処理分散部)10と、複数のWeb(World Wide Web)サーバ11と、複数のAP(Apprication)サーバ12と、複数のDB(DataBase)サーバ13と、を備える。
The processing control system of the present embodiment includes a plurality of clients (terminals) 7, a
クライアント7は、ネットワーク16を介して分散装置10に接続される。分散装置10はネットワーク17を介して複数のWebサーバ11に接続される。Webサーバ11はネットワーク18を介してAPサーバ12に接続される。APサーバ12はネットワーク19を介してDBサーバ13に接続される。また、管理サーバ9はネットワーク5を介して複数の分散装置10に接続される。管理サーバ9はネットワーク6を介して複数のWebサーバ11に接続される。なお、管理サーバ9は複数のWebサーバ11に接続されなくてもよい。
The
図1では、一つのWebサーバ11は一つのAPサーバ12に接続され、一つのAPサーバ12は一つのDBサーバ13に接続されるが、一つのWebサーバ11に接続されるAPサーバ12の数、及び一つのAPサーバ12に接続されるDBサーバ13の数は複数であってもよい。
In FIG. 1, one
また、図1では、管理サーバ9は、分散装置10と別装置としているが、管理サーバ9の機能が一つの分散装置10に実装されてもよい。また、管理サーバ9の機能は、複数の計算機によって構成される計算機システムに実装されてもよい。この場合、管理サーバ9の機能を実装する複数の計算機間で情報を共有し、情報を同期する必要がある。
In FIG. 1, the
また、Webサーバ11とAPサーバ12とが同一のハードウェアに実装されてもよいし、APサーバ12とDBサーバ13とが同一のハードウェアに実装されてもよい。また、Webサーバ11とAPサーバ12とDBサーバ13とが同一のハードウェアに実装されてもよい。
Further, the
クライアント7は、処理要求を分散装置10に送信する。処理要求は、Webサーバ11、APサーバ12、及びDBサーバ13に所定の処理を実行させる要求であり、例えば、HTTPリクエスト等である。
The
分散装置10は、クライアント7からの処理要求を受信した場合、受信した処理要求を複数のWebサーバ11が接続されたネットワーク17にブロードキャストで送信する。分散装置10は処理要求をブロードキャストでネットワーク17に送信するので、分散装置10に接続されるWebサーバ11、APサーバ12、及びDBサーバ13の構成を管理しなくてもよい。これによって、管理者は、Webサーバ11、APサーバ12、及びDBサーバ13の構成を把握する必要がないので、システムの管理を容易にできる。
When receiving a processing request from the
Webサーバ11は、ブロードキャストで送信された処理要求を受信した場合、受信した処理要求に対応するアプリケーション処理をAPサーバ12に実行させる実行要求をAPサーバ12に送信する。APサーバ12は、Webサーバ11から実行要求を受信した場合、実行要求に対応するアプリケーション処理を実行し、データベース処理要求をDBサーバ13に送信する。DBサーバ13は、APサーバ12からデータベース処理要求を受信した場合、データベース処理を実行し、データベース処理が完了した旨の完了通知をAPサーバ12に送信する。DBサーバ13は、例えばファイルサーバ等であり、データベース処理は、例えば、データベースから情報を読み出す処理及びデータベースに情報を書き込む処理等である。
When the
APサーバ12は、DBサーバ13から完了通知を受信し、アプリケーション処理の実行が完了した場合、処理結果をWebサーバ11に送信する。Webサーバ11は、APサーバ12から受信した処理結果を、受信した処理要求の応答として分散装置10に送信する。なお、処理要求がHTTPリクエストである場合、Webサーバ11が分散装置10に送信する処理結果はHTTPレスポンスである。処理要求はブロードキャストで複数のWebサーバ11に送信されるので、複数のWebサーバ11が処理結果を応答として分散装置10に送信する。
The
Webサーバ11、APサーバ12、及びDBサーバ13は、処理要求に対応する処理を実行する装置であれば、Webサーバ11、APサーバ12、及びDBサーバ13に限定されない。
The
分散装置10は、複数のWebサーバ11から処理結果を受信した場合、処理結果の分布に基づいて、最も確からしい処理結果である推定処理結果を決定し、推定処理結果を最終的な応答として、処理要求を送信したクライアント7に送信する。
When the
以上によって、分散装置10がブロードキャストで複数のWebサーバ11に処理要求を送信するため、分散装置10が複数のWebサーバ11の台数及びWebサーバ11のIPアドレスを把握する必要がなくなる。また、複数のWebサーバ11等の処理装置が、ある処理要求に対応する処理を並列して実行できるため、いずれかの処理装置に保守作業をする場合であっても、全体としてのサービスを停止させなくてもよい。
As described above, since the distributed
なお、クライアント7及び分散装置10の数は図1に限定されず、一つであってもよいし、複数であってもよい。また、本処理制御システムは、複数の処理装置を備えればよく、Webサーバ11、APサーバ12、及びDBサーバ13の数は図1に限定されない。
Note that the number of
図2は、実施例1の分散装置10の構成の説明図である。
FIG. 2 is an explanatory diagram of the configuration of the
分散装置10は、CPU(Central Processing Unit)101と、複数のネットワークインタフェース(NW I/F)102〜104と、入出力装置105と、メモリ107と、を備える。これらは、内部バス106等の通信路を介して相互に接続される。
The
NW I/F102は、ネットワーク16を介してクライアント7と接続される。NW I/F103は、ネットワーク17を介してWebサーバ11と接続される。NW I/F104は、ネットワーク6を介して管理サーバ9と接続される。
The NW I /
メモリ107には、分散プログラム111、判定プログラム1210、イベント型識別テーブル121、通信管理テーブル122、処理結果管理テーブル723、判定基準数管理テーブル721、及びAP別要求レートテーブル920が格納される。
The
分散プログラム111及び判定プログラム1210等のプログラムは、メモリ107に予め格納されていてもよいし、分散装置10が利用可能な記録媒体に格納され、必要な時に、メモリ107にロードされてもよい。記録媒体は、例えば、分散装置10に備わる図示しない外部デバイスインタフェースに着脱可能な記録媒体である。
Programs such as the distributed program 111 and the
CPU101は、メモリ107に格納された分散プログラム111及び判定プログラム1210をそれぞれ実行することによって、分散部及び判定部を分散装置10に実装する。なお、入出力装置105は、キーボード及びマウス等の入力デバイス並びにディスプレイ等の出力デバイスを含む。
The
イベント型識別テーブル121は、処理要求のイベント型を決定するためのテーブルであり、図7で詳細を説明する。処理要求のイベント型には、例えば、できるだけ早い応答を所望するリアルタイム型と、一定時間での応答を所望する一定時間型とがある。 The event type identification table 121 is a table for determining the event type of the processing request and will be described in detail with reference to FIG. The event types of processing requests include, for example, a real-time type that desires a response as soon as possible and a constant-time type that desires a response in a certain time.
通信管理テーブル122は、分散装置10が接続先と通信するために必要なIPアドレス及びネットマスクが登録されたテーブルであり、図8で詳細を説明する。
The communication management table 122 is a table in which IP addresses and netmasks necessary for the
処理結果管理テーブル723は、Webサーバ11から受信した処理結果が登録されるテーブルであり、図15で詳細を説明する。
The processing result management table 723 is a table in which processing results received from the
判定基準数管理テーブル721は、処理要求のイベント型毎に推定処理結果を決定するための判定基準数が登録されたテーブルであり、図16で詳細を説明する。 The determination reference number management table 721 is a table in which a determination reference number for determining an estimation process result for each event type of a process request is registered, and details will be described with reference to FIG.
AP別要求レートテーブル920は、処理要求のイベント型毎の処理要求を送信してから応答を受信するまでの時間(要求時間)が登録されたテーブルであり、図9で詳細を説明する。 The AP-specific request rate table 920 is a table in which the time (request time) from the transmission of a processing request for each event type of processing request to reception of a response is registered, and details will be described with reference to FIG.
分散プログラム111は、クライアント7から受信した処理要求を必要に応じて加工する。そして、分散プログラム111は、Webサーバ11が接続されたネットワーク17のアドレスを特定する。そして、分散プログラム111は、特定したネットワーク17のアドレスに加工した処理要求をブロードキャストで送信する。例えば、分散プログラム111による処理要求の加工は、IPパケットで送信された処理要求をブロードキャストで送信可能な形式(UDPパケット)に変換するものである。
The distributed program 111 processes the processing request received from the
判定プログラム1210は、複数のWebサーバ11から受信した処理結果を処理結果管理テーブル723に登録し、複数の処理結果の分布に基づいて、最も確からしい処理結果である推定処理結果を決定し、決定した推定処理結果をクライアント7に送信する。
The
図3は、実施例1の管理サーバ9の構成の説明図である。
FIG. 3 is an explanatory diagram of the configuration of the
管理サーバ9は、CPU901と、複数のNW I/F902及び903と、入出力装置905と、メモリ907と、を備える。これらは、内部バス906等の通信路を介して相互に接続される。
The
NW I/F902は、ネットワーク5を介して分散装置10に接続される。NW I/F903は、ネットワーク6を介してWebサーバ11に接続される。
The NW I / F 902 is connected to the
メモリ907には、管理プログラム910、ロジック管理プログラム911、AP別要求レートテーブル920、実測処理時間管理テーブル921、判定基準数管理テーブル721、接続先管理テーブル922、推定時間管理テーブル923、及び統計時間管理テーブル924が格納される。AP別要求レートテーブル920及び判定基準数管理テーブル721は、図2と同じなので、同じ符号を付与し、説明を省略する。
The
分散装置10と同様に、管理プログラム910及びロジック管理プログラム911等のプログラムは、メモリ907に予め格納されてもよいし、管理サーバ9が利用可能な記録媒体に格納され、必要なときにメモリ907にロードされてもよい。
Similar to the
CPU901は、メモリ907に格納された管理プログラム910及びロジック管理プログラム911をそれぞれ実行することによって、管理部及びロジック管理定部を管理サーバ9に実装する。なお、入出力装置905は、キーボード及びマウス等の入力デバイス並びにディスプレイ等の出力デバイスを含む。
The
推定時間管理テーブル923は、処理要求に対応する処理を実行するWebサーバ11の数、及び当該Webサーバ11が処理要求に対応する処理の実行にかかる時間(見積時間)等が登録されるテーブルであり、図12で詳細を説明する。
The estimated time management table 923 is a table in which the number of
統計時間管理テーブル924は、処理要求の各Webサーバ11の平均見積時間等が登録されるテーブルであり、図13で詳細を説明する。
The statistical time management table 924 is a table in which the average estimated time of each
実測処理時間管理テーブル921は、Webサーバ11が処理要求を受信し、受信した処理要求に対応する処理の実際の実行にかかった実行時間が登録されるテーブルであり、図10で詳細を説明する。
The actually measured processing time management table 921 is a table in which the
接続先管理テーブル922は、管理サーバ9の接続先のアドレス及びマスク値が登録されるテーブルであり、図11で詳細を説明する。
The connection destination management table 922 is a table in which the connection destination address and mask value of the
管理プログラム910は、管理者からの指示の入力を受け付け、受け付けた指示に基づいて各種設定処理を実行する。ロジック管理プログラム911は、処理要求に対応する処理を実行するWebサーバ11の数、及び各Webサーバ11の見積時間等を算出する。
The
図4は、実施例1のWebサーバ11の構成の説明図である。
FIG. 4 is an explanatory diagram of the configuration of the
Webサーバ11は、CPU1101と、複数のNW I/F1102〜1104と、入出力装置1105と、メモリ1107と、を備える。これらは、内部バス1106等の通信路を介して相互に接続される。
The
NW I/F1102は、ネットワーク17を介して分散装置10に接続される。NW I/F1103は、ネットワーク18を介してAPサーバ12に接続される。NW I/F1104は、ネットワーク6を介して管理サーバ9に接続される。
The NW I /
メモリ1107には、分散データ処理プログラム1110、HTTPサーバプログラム1111、及び接続先管理テーブル1123が格納される。
The
分散装置10と同様に、分散データ処理プログラム1110及びHTTPサーバプログラム1111等のプログラムは、メモリ1107に予め格納されてもよいし、Webサーバ11が利用可能な記録媒体に格納され、必要なときにメモリ1107にロードされてもよい。
Similar to the distributed
CPU1101は、メモリ1107に格納された分散データ処理プログラム1110及びHTTPサーバプログラム1111をそれぞれ実行することによって、分散データ処理部及びHTTPサーバ部をWebサーバ11に実装する。なお、入出力装置1105は、キーボード及びマウス等の入力デバイス並びにディスプレイ等の出力デバイスを含む。
The
接続先管理テーブル1123は、Webサーバ11の接続先のアドレス及びネットマスクが登録されるテーブルであり、図14で詳細を説明する。
The connection destination management table 1123 is a table in which the connection destination address and netmask of the
分散データ処理プログラム1110は、分散装置10からブロードキャストで送信された処理要求を受信し、必要に応じて一般的なHTTPサーバが処理可能なデータに受信した処理要求を加工する。
The distributed
HTTPサーバプログラム1111は、分散データ処理プログラム1110が加工した処理要求に対応する処理を実行する。
The
図5は、実施例1のAPサーバ12の構成の説明図である。
FIG. 5 is an explanatory diagram of the configuration of the
APサーバ12は、CPU1201と、複数のNW I/F1202及び1203と、入出力装置1205と、メモリ1207と、を備える。これらは、内部バス1206等の通信路を介して相互に接続される。
The
NW I/F1202は、ネットワーク18を介してWebサーバ11に接続される。NW I/F1203は、ネットワーク19を介してDBサーバ13に接続される。
The NW I /
メモリ1207には、業務ロジック実行プログラム1214が格納される。分散装置10と同様に、業務ロジック実行プログラム1214等のプログラムは、メモリ1207に予め格納されてもよいし、APサーバ12が利用可能な記録媒体に格納され、必要なときにメモリ1207にロードされてもよい。
The memory 1207 stores a business logic execution program 1214. As with the
CPU1201は、メモリ1207に格納された業務ロジック実行プログラム1214を実行することによって、業務ロジック実行部をAPサーバ12に実装する。なお、入出力装置1205は、キーボード及びマウス等の入力デバイス並びにディスプレイ等の出力デバイスを含む。
The
業務ロジック実行プログラム1214は、アプリケーション処理を実行し、一般的なAPサーバに実装されている機能である。 The business logic execution program 1214 is a function that executes application processing and is implemented in a general AP server.
図6は、実施例1のDBサーバ13の構成の説明図である。
FIG. 6 is an explanatory diagram of the configuration of the
DBサーバ13は、CPU801と、NW I/F802と、入出力装置805と、メモリ807と、を備える。これらは、内部バス806等の通信路を介して相互に接続される。
The
NW I/F802は、ネットワーク19を介してAPサーバ12に接続される。メモリ807には、DBプログラム810が格納される。分散装置10と同様に、DBプログラム810等のプログラムは、メモリ807に予め格納されてもよいし、DBサーバ13が利用可能な記録媒体に格納され、必要なときにメモリ807にロードされてもよい。
The NW I /
CPU801は、メモリ807に格納されたDBプログラム810を実行することによって、DB部をDBサーバ13に実装する。なお、入出力装置805は、キーボード及びマウス等の入力デバイス並びにディスプレイ等の出力デバイスを含む。
The
DBプログラム810は、APサーバ12等からの要求に従って、データベース処理を実行する。データベース処理は、一般的なDBサーバに実装されるデータベース管理システム(DBMS)による処理である。
The
図7は、実施例1のイベント型識別テーブル121の説明図である。 FIG. 7 is an explanatory diagram of the event type identification table 121 according to the first embodiment.
イベント型識別テーブル121は、図2で説明したように、分散装置10のメモリ107に格納され、クライアント7から受信した処理要求のイベント型を特定するために用いられる。
As described with reference to FIG. 2, the event type identification table 121 is stored in the
イベント型識別テーブル121は、イベント型毎のレコードを有し、レコードは、イベント型1211、プロトコル1212、及びヘッダ1213を含む。
The event type identification table 121 has a record for each event type, and the record includes an
イベント型1211には、クライアント7が処理要求に含めることができるイベント型の識別情報が登録される。プロトコル1212には、各イベント型のプロトコルの識別情報が登録される。ヘッダ1213には、受信した処理要求に含まれるヘッダに格納され、イベント型を特定するために参照される情報が登録される。
In the
分散装置10は、受信した処理要求のプロトコル及びヘッダに基づいて、受信した処理要求のイベント型を特定する。
The
図8は、実施例1の通信管理テーブル122の説明図である。 FIG. 8 is an explanatory diagram of the communication management table 122 according to the first embodiment.
通信管理テーブル122は、図2で説明したように、分散装置10のメモリ107に格納され、分散装置10が接続先と通信するために必要な接続先のアドレス及びネットマスクが登録される。分散装置10の接続先は、複数のWebサーバ11に接続されるネットワーク17及び管理サーバ9等である。
As described with reference to FIG. 2, the communication management table 122 is stored in the
通信管理テーブル122は、接続先毎のレコードを有し、レコードは、区別1221、アドレス1222、及びマスク値1223を含む。
The communication management table 122 includes a record for each connection destination, and the record includes a
区別1221には、接続先の識別情報が登録される。アドレス1222には、接続先のアドレス(例えば、IPアドレス又はネットワークアドレス等)が登録される。マスク値1223には、接続先のネットマスクが登録される。
In the
図9は、実施例1のAP別要求レートテーブル920の説明図である。 FIG. 9 is an explanatory diagram of the AP-specific request rate table 920 according to the first embodiment.
AP別要求レートテーブル920は、図2及び図3で説明したように、分散装置10のメモリ107及び管理サーバ9のメモリ907に格納され、クライアント7がイベント型毎の処理要求を送信してから応答を受信するまでの時間(要求時間)が登録される。
The AP-specific request rate table 920 is stored in the
AP別要求レートテーブル920は、イベント型毎のレコードを有し、レコードは、イベント型9201及び要求時間9202を含む。
The AP-specific request rate table 920 has a record for each event type, and the record includes an
イベント型9201には、処理要求のイベント型の識別情報が登録され、要求時間9202には、イベント型毎の要求時間が登録される。
In the
図9では、例えば、イベント型が「リアルタイム型」である場合、クライアント7が処理要求を送信してイベントが発生してから要求時間「500ms」以内に処理結果を受信することを示す。なお、AP別要求レートテーブル920には、三つ以上の要求時間に対応して三つ以上のイベント型が登録されてもよい。
In FIG. 9, for example, when the event type is “real-time type”, the
図10は、実施例1の実測処理時間管理テーブル921の説明図である。 FIG. 10 is an explanatory diagram of the actual measurement processing time management table 921 according to the first embodiment.
実測処理時間管理テーブル921は、図3で説明したように、管理サーバ9のメモリ907に格納され、各Webサーバ11で実際に実行された処理の実行時間が登録される。
As described with reference to FIG. 3, the actual measurement processing time management table 921 is stored in the
実測処理時間管理テーブル921は、イベント型と、Webサーバ11と、URI(Uniform Resource Identifer)との組み合わせ毎にレコードを有し、レコードは、イベント型9211、Webサーバ9212、URI9213、及び処理時間9214を含む。
The actual measurement processing time management table 921 has a record for each combination of event type,
イベント型9211には、処理要求のイベント型の識別情報が登録される。Webサーバ9212には、Webサーバ11の識別情報が登録される。URI9213には、Webサーバ11が実行した処理のURIが登録される。処理時間9214には、URI9213に登録されたURIの処理の実行にかかった実行時間が登録される。
In the
例えば、図10に示す実測処理時間管理テーブル921の1行目は、「Webサーバa」がリアルタイム型のURI「R1」の処理要求の処理の実行にかかった時間が「123ms」であることを示す。 For example, the first line of the actually measured processing time management table 921 shown in FIG. 10 indicates that the time taken by “Web server a” to execute processing of the processing request for the real-time URI “R1” is “123 ms”. Show.
処理時間9214に登録される時間について説明する。分散装置10は、処理要求(実施例2で説明する疑似的な処理要求も含む)を送信した場合、分散先情報を管理サーバ9に送信する。また、分散装置10は、Webサーバ11から処理結果を受信した場合、処理結果情報を管理サーバ9に送信する。管理サーバ9は、処理結果情報の受信時刻から当該処理結果情報に対応する分散先情報の受信時刻を減算した値を実行時間として算出する。なお、Webサーバ11が処理要求を受信した場合、分散先情報を管理サーバ9に送信するようにしてもよいし、Webサーバ11が処理結果を分散装置10に送信した場合、処理結果情報を管理サーバ9に送信するようにしてもよい。この場合、分散装置10は、分散先情報及び処理結果情報を送信しなくてもよい。
The time registered in the
図11は、実施例1の接続先管理テーブル922の説明図である。 FIG. 11 is an explanatory diagram of the connection destination management table 922 according to the first embodiment.
接続先管理テーブル922は、図3で説明したように、管理サーバ9のメモリ907に格納され、管理サーバ9の接続先(分散装置10及びWebサーバ11)のアドレス及びネットマスクが登録される。
As described with reference to FIG. 3, the connection destination management table 922 is stored in the
接続先管理テーブル922は、接続先毎にレコードを有し、レコードは、区別9221、アドレス9222、及びマスク値9223を含む。
The connection destination management table 922 has a record for each connection destination, and the record includes a
区別9221には、接続先の識別情報(例えば、名称)が登録される。アドレス9222には、接続先のアドレス(例えば、IPアドレス又はネットワークアドレス等)が登録される。マスク値9223には、接続先のネットマスクが登録される。
In the
図12は、実施例1の推定時間管理テーブル923の説明図である。 FIG. 12 is an explanatory diagram of the estimated time management table 923 according to the first embodiment.
推定時間管理テーブル923は、図3で説明したように、管理サーバ9のメモリ907に格納され、処理要求に対応する処理を実行するWebサーバ11の数、及び当該Webサーバ11が受信した処理要求に対応する処理の実行にかかる実行時間時間(見積時間)等が登録される。
As described with reference to FIG. 3, the estimated time management table 923 is stored in the
図10で説明したように、分散装置10は、処理要求を複数のWebサーバ11が接続されるネットワーク17に送信した場合、分散先情報を管理サーバ9に送信し、処理結果をWebサーバ11から受信した場合、処理結果情報を受信する。管理サーバ9は、分散先情報を受信した場合、分散装置10がネットワーク17に処理要求を送信したことを示すレコードを推定時間管理テーブル923に登録する。そして、管理サーバ9は、統計時間管理テーブル924を参照し、処理要求を実行可能なWebサーバ11に関するレコードを推定時間管理テーブル923に追加し、当該レコードに、処理要求を実行可能なWebサーバ11の見積時間を登録する。また、管理サーバ9は、処理結果情報を受信した場合、処理結果情報を受信したことを示すレコードを追加する。
As described with reference to FIG. 10, when the
推定時間管理テーブル923のレコードは、Webサーバ9231、処理種別9232、イベント型9233、イベント種別9234、見積時間9235、及び更新時刻9236を含む。
The record of the estimated time management table 923 includes a
Webサーバ9231には、分散先情報に含まれる分散装置10が送信したネットワークの識別情報、処理要求を実行可能なWebサーバ11、又は処理結果情報に含まれる処理要求の処理を実行したWebサーバ11の識別情報が登録される。
The
処理種別9232には、分散先情報を受信したことによって追加されたレコードか、処理結果情報を受信したことによって追加されたレコードか、を特定可能な情報が登録される。管理サーバ9が分散先情報を受信したことによって追加されたレコードの処理種別9232には「分散」が登録され、管理サーバ9が処理結果情報を受信したことによって追加されたレコードの処理種別9232には「判定」が登録される。
In the
イベント型9233には、分散先情報に含まれる処理要求のイベント型が登録される。イベント種別9234には、分散先情報に含まれる処理要求のイベント種別が登録される。イベント種別は、例えば、処理要求を送信したクライアント7の識別情報、クライアント7のユーザの識別情報、及びクライアント7の処理要求のURI等を含む。
In the
見積時間9235には、処理要求を実行可能なWebサーバ11の処理要求に対応する処理の実行にかかる推定時間が登録される。なお、見積時間9235に時間が登録されるレコードは、管理サーバ9が追加した処理要求を実行可能なWebサーバ11に関するレコードのみであり、他のレコードの見積時間9235にはNULLが登録される。
In the
更新時刻9236には、各レコードが更新された時刻が登録される。
In the
管理サーバ9は、分散先情報及び処理結果情報を受信したタイミングで推定時間管理テーブル923を更新する。
The
図12に示す推定時間管理テーブル923の1行目のレコードは、分散装置10が「リアルタイム型」でイベント種別「A」の処理要求をネットワーク17(「Web−NWa」)に送信したことを示す。また、2行目のレコードは、「Webサーバa」から処理結果を分散装置10が受信するまでの見積時間が「0.123sec」であることを示す。同様に、3行目のレコードは、「Webサーバb」から処理結果を分散装置10が受信するまでの見積時間が「0.123sec」であることを示す。同様に、4行目のレコードは、「Webサーバc」から処理結果を分散装置10が受信するまでの見積時間が「0.345sec」であることを示す。この見積時間は、図13に示す統計時間管理テーブル924に基づいて算出される。
The record in the first line of the estimated time management table 923 shown in FIG. 12 indicates that the
また、5行目のレコードは、「Webサーバa」から処理結果を分散装置10が受信したことを示す。2行目のレコードによれば、「Webサーバa」が処理要求を受信することが推測でき、そして、5行目のレコードによれば、「Webサーバa」が処理要求に対応する処理を実行したことが把握できる。このように、処理要求を実行可能なWebサーバ11の台数及びアドレスを予め設定されていなくとも、管理サーバ9は、推定時間管理テーブル923を参照することによって、ある処理要求の処理結果を送信するWebサーバ11の台数及び各Webサーバ11の見積時間を推測できる。
The record on the fifth line indicates that the
図13は、実施例1の統計時間管理テーブル924の説明図である。 FIG. 13 is an explanatory diagram of the statistical time management table 924 according to the first embodiment.
統計時間管理テーブル924は、図3で説明したように、管理サーバ9のメモリ907に格納され、処理要求の各Webサーバ11の平均見積時間等が登録されるテーブルである。
As described in FIG. 3, the statistical time management table 924 is stored in the
統計時間管理テーブル924は、Webサーバ11及びURIの組み合わせ毎にレコードを有し、レコードは、Webサーバ9241、平均見積時間9242、更新時刻9243、総時間9244、カウンタ9245、及びURI9246を含む。
The statistical time management table 924 has a record for each combination of the
Webサーバ9241には、Webサーバ11の識別情報が登録される。平均見積時間9242には、あるWebサーバ11があるURIの処理要求を受信し、処理要求に対応する処理の実行にかかった平均時間が登録される。更新時刻9243には、レコードが更新された時刻が登録される。総時間9244には、あるWebサーバ11があるURIの処理要求に対応する処理の実行にかかった総時間が登録される。カウンタ9245には、あるWebサーバ11があるURIの処理要求に対応する処理を実行した回数、すなわち、あるWebサーバ11があるURIの処理要求の受信回数が登録される。URI9246には、処理要求のURIが登録される。
In the
平均見積時間9242に登録される時間は、総時間9244に登録された時間及びカウンタ9245に基づいて算出される。具体的には、平均見積時間9242に登録される時間は、総時間9244に登録された時間をカウンタ9245に登録された値で除算した値(商)である。すなわち、平均見積時間9242に登録される時間は、あるWebサーバ11のあるURIの処理要求を受信してから分散装置10が当該Webサーバ11から処理結果を受信するまでの時間の平均値である。
The time registered in the average estimated
管理サーバ9は、処理結果情報を受信した場合、統計時間管理テーブル924を更新する。このように、統計時間管理テーブル924には、各Webサーバ11で処理要求に対応する処理に要する時間の統計的な平均見積時間が登録される。なお、図13では、統計時間管理テーブル924は、Webサーバ11とURIとの組み合わせ毎のレコードを有するとしたが、URIを考慮せず、Webサーバ11毎のレコードを有してもよい。
When the
図14は、実施例1の接続先管理テーブル1123の説明図である。 FIG. 14 is an explanatory diagram of the connection destination management table 1123 according to the first embodiment.
接続先管理テーブル1123は、図4に示すように、Webサーバ11のメモリ1107に格納され、Webサーバ11の接続先のアドレス及びネットマスク等が登録されるテーブルである。Webサーバ11の接続先は、例えば、分散装置10、APサーバ12、及び管理サーバ9等である。
As shown in FIG. 4, the connection destination management table 1123 is a table that is stored in the
接続先管理テーブル1123は、接続先毎にレコードを有し、レコードは、区別11231、アドレス11232、及びマスク値11233を含む。
The connection destination management table 1123 has a record for each connection destination, and the record includes a
区別11231には、接続先の識別情報(例えば、名称)が登録される。アドレス11232には、接続先のアドレス(例えば、IPアドレス又はネットワークアドレス等)が登録される。マスク値11233には、接続先のネットマスクが登録される。
In the
なお、分散装置10に関する情報は接続先管理テーブル1123に予め登録されてもよいし、Webサーバ11が分散装置10から処理要求を受信した場合に更新されてもよい。
Information about the distributed
図15は、実施例1の処理結果管理テーブル723の説明図である。 FIG. 15 is an explanatory diagram of the processing result management table 723 according to the first embodiment.
処理結果管理テーブル723は、図2で説明したように、分散装置10のメモリ107に格納され、Webサーバ11から受信した処理結果が登録されるテーブルである。
The processing result management table 723 is a table in which processing results received from the
分散装置10は、処理結果管理テーブル723に基づいて処理結果から最も確からしい推定処理結果を決定し、推定処理結果をクライアント7に送信する。
The
処理結果管理テーブル723は、処理結果毎にレコードを有し、レコードは、番号(NO.)12201、イベント型12202、Webサーバ12203、イベント種別12204、処理結果12205、及び受信時刻12206を含む。
The processing result management table 723 has a record for each processing result, and the record includes a number (NO.) 12201, an
番号12201には、分散装置10がWebサーバ11から処理結果を受信した場合に、受信した処理結果に付与される通し番号が登録される。イベント型12202には、分散装置10がWebサーバ11から受信した処理結果に対応する処理要求のイベント型が登録される。Webサーバ12203には、処理結果の送信元であるWebサーバ11の識別情報が登録される。イベント種別12204には、分散装置10がWebサーバ11から受信した処理結果に対応する処理要求のイベント種別が登録される。
In the
処理結果12205には、分散装置10がWebサーバ11から受信した処理結果の内容が登録される。受信時刻12206には、分散装置10がWebサーバ11から処理結果を受信した時刻が登録される。
In the
分散装置10は、イベント型12202に登録されたイベント型に対応する判定基準数を用いて、処理結果の分布に基づいて、最も確からしい推定処理結果を決定する。
The
図16は、実施例1の判定基準数管理テーブル721の説明図である。 FIG. 16 is an explanatory diagram of the determination reference number management table 721 according to the first embodiment.
判定基準数管理テーブル721は、図2及び図3で説明したように、分散装置10のメモリ107及び管理サーバ9のメモリ907に格納され、処理要求のイベント型毎に推定処理結果を決定するための判定基準数が登録されたテーブルである。判定基準数は、分散装置10が推定処理結果を決定するための多数決判定の基準となる数である。分散装置10は、処理要求のイベント型に対応する判定基準数を取得し、判定基準数に基づいて、多数決判定をして推定処理結果を決定する。
The determination reference number management table 721 is stored in the
判定基準数管理テーブル721は、イベント型毎にレコードを有し、レコードは、イベント型12211、及び判定基準数12212を含む。
The determination reference number management table 721 has a record for each event type, and the record includes an
イベント型12211には、イベント型が登録される。判定基準数12212には、当該イベント型の推定処理結果を決定するための多数決判定の基準となる判定基準数が登録される。
An event type is registered in the
なお、リアルタイム型は、一定時間型に比べて、できるだけ早い処理結果のクライアント7への送信が求められるので、リアルタイム型の判定基準数は一定時間型の判定基準数より小さく設定されている。
Since the real-time type is required to transmit the processing result to the
以下、実施例1の処理制御システムの動作について説明する。 Hereinafter, the operation of the processing control system according to the first embodiment will be described.
図17は、実施例1の管理サーバ9による判定基準数情報送信処理のフローチャートである。
FIG. 17 is a flowchart of determination reference number information transmission processing by the
判定基準数情報送信処理では、管理サーバ9の管理プログラム910は、管理者から入力された情報を判定基準数管理テーブル721に登録し、管理サーバ9のメモリ907に格納された判定基準数管理テーブル721を分散装置10に送信する。
In the determination reference number information transmission process, the
まず、管理プログラム910は、管理サーバ9のメモリ907に格納された判定基準数管理テーブル721の内容を取得する(S341)。
First, the
次に、管理プログラム910は、S341で取得した判定基準数管理テーブル721の内容を判定基準数情報として分散装置10に送信し(S342)、処理を終了する。
Next, the
なお、分散装置10は、管理サーバ9から送信された判定基準数情報を受信した場合、受信した判定基準数情報を自身のメモリ107に格納された判定基準数管理テーブル721に登録する。すなわち、分散装置10の判定基準数管理テーブル721は、管理サーバ9に管理者から入力された情報に基づいて、更新される。
When the
図18は、実施例1の分散装置10による分散処理のフローチャートである。
FIG. 18 is a flowchart of the distribution process performed by the
分散処理では、分散装置10がクライアント7から処理要求を受信した場合、分散装置10の分散プログラム111は、Webサーバ11が接続されたネットワーク17を特定し、受信した処理要求を特定したネットワーク17にブロードキャストで送信する。
In the distributed processing, when the distributed
まず、分散プログラム111は、クライアント7から処理要求を受信する(S281)。 First, the distributed program 111 receives a processing request from the client 7 (S281).
次に、分散プログラム111は、通信管理テーブル122を参照し、S281で受信した処理要求の分散先となるネットワーク17のアドレス及びネットマスク等を取得する(S282)。
Next, the distributed program 111 refers to the communication management table 122 and acquires the address, netmask, and the like of the
次に、分散プログラム111は、S281で受信した処理要求を分散先となるネットワーク17にブロードキャストで送信する(S283)。
Next, the distribution program 111 broadcasts the processing request received in S281 to the
次に、分散プログラム111は、処理要求をネットワーク17に送信したことを示す分散先情報を管理サーバ9に送信し(S284)、処理を終了する。分散先情報は、分散装置10が受信した処理要求のイベント型、イベント種別(処理要求を送信したクライアント7の識別情報、クライアント7のユーザの識別情報、及びクライアント7の処理要求のURI等)、並びに処理要求を送信したネットワーク17の識別情報等を含む。
Next, the distribution program 111 transmits distribution destination information indicating that the processing request has been transmitted to the
分散装置10が処理要求をネットワーク17にブロードキャストで送信するため、分散装置10にWebサーバ11に関する情報が設定される必要がない。これによって、管理者によるシステムの管理が容易となる。
Since the
分散装置10は、クライアント7から受信した処理要求(IPパケット)をブロードキャストで送信可能な形式(UDPパケット)に変換する必要がある。図19及び図20を用いてIPパケットからUDPパケットへの変換について説明する。
The
図19は、実施例1のクライアント7から受信したIPパケットである処理要求の説明図である。
FIG. 19 is an explanatory diagram of a processing request that is an IP packet received from the
図19に示す処理要求(P281)は、一般的なHTTPリクエストパケットであり、IPヘッダ(P2811)、TCPヘッダ(P2812)、HTTPヘッダ(P2813)、及びHTTPデータ(P2814)を含む。 The processing request (P281) shown in FIG. 19 is a general HTTP request packet, and includes an IP header (P2811), a TCP header (P2812), an HTTP header (P2813), and HTTP data (P2814).
図20は、実施例1のブロードキャストで送信された処理要求の説明図である。 FIG. 20 is an explanatory diagram of a processing request transmitted by broadcasting according to the first embodiment.
図20に示す処理要求(P283)は、IPヘッダ(P2831)、UDPヘッダ(P2832)、分散データ(P2833)、IPヘッダ(P2834)、TCPヘッダ(P2835)、HTTPヘッダ(P2836)、及びHTTPデータ(P2837)を含む。 The processing request (P283) illustrated in FIG. 20 includes an IP header (P2831), a UDP header (P2832), distributed data (P2833), an IP header (P2834), a TCP header (P2835), an HTTP header (P2836), and HTTP data. (P2837).
図20に示す処理要求(P283)は、図19に示す処理要求(P281)に、IPヘッダ(P2831)、UDPヘッダ(P2832)、及び分散データ(P2833)を付与したものであり、IPヘッダ(P2834)、TCPヘッダ(P2835)、HTTPヘッダ(P2836)、及びHTTPデータ(P2837)は、図19に示す処理要求(P281)と同じである。 A processing request (P283) shown in FIG. 20 is obtained by adding an IP header (P2831), a UDP header (P2832), and distributed data (P2833) to the processing request (P281) shown in FIG. P2834), TCP header (P2835), HTTP header (P2836), and HTTP data (P2837) are the same as the processing request (P281) shown in FIG.
IPヘッダ(P2831)は送信元IPアドレス及び送信先IPアドレスを含み、送信元IPアドレスには、当該処理要求(P283)を送信する分散装置10のIPアドレスが登録され、送信先IPアドレスには、ネットワーク17のブロードキャストアドレスが登録される。
The IP header (P2831) includes a transmission source IP address and a transmission destination IP address. In the transmission source IP address, the IP address of the
分散データ(P2833)には、処理要求(P283)の識別情報が登録される。例えば、処理要求(P283)の識別情報は、分散装置10が受信した処理要求(P281)のイベント種別等に基づいて生成される。
In the shared data (P2833), the identification information of the processing request (P283) is registered. For example, the identification information of the processing request (P283) is generated based on the event type of the processing request (P281) received by the
IPヘッダ(P2834)は、送信元IPアドレス及び送信先IPアドレスを含み、送信元IPアドレス及び送信先IPアドレスには、Webサーバ11の分散データ処理プログラム1110において、HTTPサーバプログラム1111が処理要求を実行可能なIPアドレスが登録される。例えば、送信元IPアドレス及び送信先IPアドレスには、「localhost」アドレスが設定される。
The IP header (P2834) includes a transmission source IP address and a transmission destination IP address, and the
HTTPヘッダ(P2836)とHTTPデータ(P2837)には、それぞれHTTPヘッダ(P2813)とHTTPデータ(P2814)をWebサーバ11が処理可能な形式に変換された情報が登録される。なお、IPヘッダ(P2834)及びTCPヘッダ(P2835)は削除されてもよい。
In the HTTP header (P2836) and the HTTP data (P2837), information obtained by converting the HTTP header (P2813) and the HTTP data (P2814) into a format that can be processed by the
ネットワーク17にブロードキャストで送信された処理要求を受信した全てのWebサーバ11のHTTPサーバプログラム1111は、受信した処理要求に対応する処理を実行する。
The
以上のように、分散装置10は、クライアント7から送信された処理要求をブロードキャストで送信可能な形式に変換することによって、処理要求をネットワーク17にブロードキャストで送信可能となる。
As described above, the
図21は、実施例1の管理サーバ9による分散先登録処理のフローチャートである。
FIG. 21 is a flowchart of the distribution destination registration process performed by the
分散先登録処理では、管理サーバ9が分散装置10から送信された分散先情報を受信した場合、管理サーバ9の管理プログラム910は、受信した分散先情報に基づいて推定時間管理テーブル923を更新する。
In the distribution destination registration process, when the
まず、管理プログラム910は、分散装置10から分散先情報を受信する(S231)。次に、管理プログラム910は、受信した分散先情報に基づいて推定時間管理テーブル923を更新し(S232)、処理を終了する。
First, the
S232について図12を用いて説明する。 S232 will be described with reference to FIG.
管理サーバ9は、分散装置10がネットワーク17(「Web−NWa」)に処理要求をブロードキャストで送信した旨の分散先情報を受信したものとする。この場合、管理プログラム910は、推定時間管理テーブル923にレコードを追加する。そして、管理プログラム910は、受信した分散先情報に含まれる送信先のネットワーク17(「Web−NWa」)及びイベント種別等を追加したレコードに登録する。この追加したレコードは図12に示す推定時間管理テーブル923の1行目のレコードである。
It is assumed that the
Webサーバ9231には、受信した分散先情報の送信先のネットワーク17の識別情報「Web−NWa」が登録される。分散先情報を受信したことによって追加されるレコードであるため、処理種別9232には「分散」が登録される。イベント型9233には、受信した分散先情報に含まれるイベント型である「リアルタイム型」が登録される。イベント種別9234には、受信した分散先情報に含まれるイベント種別「A」が登録される。見積時間9235にはNULLが登録され、更新時刻9236には「H1:M2:S3.111」が登録される。
In the
次に、管理プログラム910は、ネットワーク17の識別情報「Web−NWa」に対応する統計時間管理テーブル924に登録されたレコードのWebサーバ9241及び平均見積時間9242に登録された情報を取得する。ここで、統計時間管理テーブル924から取得されたレコードの数が、分散装置10が送信した処理要求を実行可能なWebサーバ11の数となる。ここでは、統計時間管理テーブル924の「Webサーバa」、「Webサーバb」、及び「Webサーバc」の三つのレコードが取得される。
Next, the
そして、管理プログラム910は、統計時間管理テーブル924から取得したレコードの数だけ、推定時間管理テーブル923にレコードを追加する。そして、管理プログラム910は、追加したレコードのWebサーバ9231に、統計時間管理テーブル924のWebサーバ9241から取得したWebサーバの識別情報を登録し、追加したレコードの見積時間9235に、統計時間管理テーブル924の平均見積時間9242から取得した時間を登録し、更新時刻9236に当該レコードを更新した時刻を登録する。なお、管理プログラム910は、推定時間管理テーブル923に追加したレコードの処理種別9232、イベント型9233、及びイベント種別9234に、分散先情報を受信したときに追加されたレコード(図12に示す推定時間管理テーブル923の1行目のレコード)の処理種別9232、イベント型9233、及びイベント種別9234に登録された情報を登録する。以上の処理によって、図12に示す推定時間管理テーブル923の2行目〜4行目のレコードが登録される。
Then, the
これによって、管理サーバ9が分散先情報を受信した場合に、管理サーバ9は、統計時間管理テーブル924を参照し、分散装置10がブロードキャスト送信した処理要求を実行可能なWebサーバ11と当該Webサーバ11で処理要求に対応する処理の実行にかかる時間を推定することができる。また、管理サーバ9は、分散先情報を受信してから、平均見積時間9242を超える所定時間以上経過しても処理結果情報を受信しない場合、このWebサーバ11で異常が発生している可能性がある旨を管理者に報知し、その旨を管理者に認識させてもよい。これによって、管理者は、異常が発生している可能性があるWebサーバ11をいち早く認識できる。
Accordingly, when the
図22は、実施例1のWebサーバ11による分散データ処理のフローチャートである。
FIG. 22 is a flowchart of distributed data processing by the
分散データ処理では、分散装置10からブロードキャストで送信された処理要求を受信したWebサーバ11が、受信した処理要求に対応する処理を実行し、処理結果を分散装置10に送信する。
In the distributed data processing, the
まず、Webサーバ11の分散データ処理プログラム1110は、分散装置10からネットワーク17にブロードキャストで送信された処理要求を受信する(S301)。
First, the distributed
次に、分散データ処理プログラム1110は、受信した処理要求をHTTPサーバプログラム1111にHTTPリクエストとして転送する(S302)。
Next, the distributed
HTTPサーバプログラム1111は、S302で転送されたHTTPリクエストを受信した場合、一般的なHTTPサーバとして動作し、必要に応じて、APサーバ12と連携した処理、及びDBサーバ13でのDB処理等を実行した後、HTTPリクエストの処理結果を分散データ処理プログラム1110に転送し、分散データ処理プログラム1110は、処理結果を受信する(S303)。
When receiving the HTTP request transferred in S302, the
分散データ処理プログラム1110は、S303で受信した処理結果を分散装置10に送信し(S304)、処理を終了する。
The distributed
なお、S302で、分散データ処理プログラム1110がHTTPサーバプログラム1111に処理要求を転送する場合、UDPパケットである処理要求をHTTPサーバプログラム1111が処理を実行可能な形式(IPパケット)に変換する必要がある。この変換処理について、図23を用いて説明する。
When the distributed
図23は、実施例1の分散データ処理プログラム1110からHTTPサーバプログラム1111に転送される処理要求(P302)の説明図である。
FIG. 23 is an explanatory diagram of a processing request (P302) transferred from the distributed
処理要求(P302)は、IPヘッダ(P2834)、TCPヘッダ(P2835)、HTTPヘッダ(P2836)、及びHTTPデータ(P2837)を含む。 The processing request (P302) includes an IP header (P2834), a TCP header (P2835), an HTTP header (P2836), and HTTP data (P2837).
S301では、Webサーバ11の分散データ処理プログラム1110は、図20に示すUDPパケットの処理要求(P283)を受信し、S302で、受信した処理要求(P283)からIPヘッダ(P2831)、UDPヘッダ(P2832)、分散データ(P2833)を取り除き、図23に示す一般的なHTTPリクエストパケットに変換する。
In S301, the distributed
これによって、Webサーバ11は、分散装置10からブロードキャストで送信された処理要求を処理可能な形式に変換でき、受信した処理要求に対応する処理を実行可能となる。
As a result, the
図24は、実施例1のWebサーバ11から分散装置10に送信される処理結果(P304)の説明図である。具体的には、図24に示す処理結果は、S304で、分散データ処理プログラム1110が分散装置10に送信する処理結果である。
FIG. 24 is an explanatory diagram of a processing result (P304) transmitted from the
処理結果(P304)は、IPヘッダ(P3041)、UDPヘッダ(P3042)、分散データ(P3043)、IPヘッダ(P3044)、TCPヘッダ(P3045)、HTTPヘッダ(P3046)、及びHTTPデータ(P3047)を含む。 The processing result (P304) includes an IP header (P3041), a UDP header (P3042), distributed data (P3043), an IP header (P3044), a TCP header (P3045), an HTTP header (P3046), and HTTP data (P3047). Including.
HTTPヘッダ(P3046)及びHTTPデータ(P3047)は、分散データ処理プログラム1110がS303でHTTPサーバプログラム1111から受信した処理結果のHTTPヘッダ及びHTTPデータである。
The HTTP header (P3046) and HTTP data (P3047) are the HTTP header and HTTP data of the processing result received by the distributed
IPヘッダ(P3041)及びUDPヘッダ(P3042)は、ステップS301で受信した処理要求(P283)のIPヘッダ(P2831)及びUDPヘッダ(P2832)と整合する。分散データ(P3043)は、ステップ301で受信した処理要求(P283)の分散データ(P2833)と同じであってもよいし、HTTPヘッダ(P3046)に含まれる情報及びHTTPデータ(P3047)のハッシュ値等の情報を分散データ(P2833)に付加してもよい。 The IP header (P3041) and the UDP header (P3042) match the IP header (P2831) and the UDP header (P2832) of the processing request (P283) received in step S301. The distributed data (P3043) may be the same as the distributed data (P2833) of the processing request (P283) received in step 301, or the information included in the HTTP header (P3046) and the hash value of the HTTP data (P3047). Etc. may be added to the distributed data (P2833).
図25は、実施例1の分散装置10による判定基準数更新処理のフローチャートである。
FIG. 25 is a flowchart of the determination reference number update process performed by the
図17に示す判定基準数情報送信処理によって管理サーバ9から送信された判定基準数情報を分散装置10が受信した場合、分散装置10の判定プログラム1210は、メモリ107に格納された判定基準数管理テーブル721を更新する判定基準数情報更新処理を実行する。
When the
判定プログラム1210は、管理サーバ9から判定基準数情報を受信する(S311)。次に、判定プログラム1210は、受信した判定基準数情報に基づいて、イベント型毎の判定基準数を判定基準数管理テーブル721に登録し(S312)、処理を終了する。
The
図26は、実施例1の分散装置10による処理結果判定処理のフローチャートである。
FIG. 26 is a flowchart of processing result determination processing by the
処理結果判定処理では、図22に示すWebサーバ11による分散データ処理によってWebサーバ11から送信された処理結果を分散装置10が受信した場合、分散装置10の判定プログラム1210は、受信した処理結果に基づいて、最も確からしい処理結果である推定処理結果を決定し、推定処理結果をクライアント7に送信する。
In the processing result determination process, when the
まず、判定プログラム1210は、Webサーバ11から処理結果を受信する(S321)。そして、判定プログラム1210は、受信した処理結果を図15に示す処理結果管理テーブル723に登録する(S322)。そして、判定プログラム1210は、分散装置10が処理結果を受信した旨の処理結果情報を管理サーバ9に送信する(S323)。処理結果情報は、処理結果を送信したWebサーバ11の識別情報、処理結果に含まれるイベント型、イベント種別、及び処理結果の内容等を含む。
First, the
次に、判定プログラム1210は、イベント型、イベント種別、及び処理結果の内容が一致する処理結果の数を集計し、集計した処理結果の数がイベント型に対応する判定基準数の過半数より大きいか否かを判定する(S324)。
Next, the
S324について具体的に説明する。まず、判定プログラム1210は、図16に示す判定基準数管理テーブル721を参照し、イベント型12211にS321で受信した処理結果のイベント型と一致するイベント型が登録されたレコードの判定基準数12212に登録された値を取得する。そして、判定プログラム1210は、処理結果管理テーブル723を参照し、イベント型12202及びイベント種別12204が受信した処理結果のイベント型及びイベント種別と一致する処理結果のうち、処理結果の内容が一致する処理結果の数を集計する。判定プログラム1210は、このようにして集計された処理結果の数が判定基準数の過半数より大きいか否かを判定する。
S324 will be specifically described. First, the
S324で、イベント型、イベント種別、及び処理結果の内容毎に集計された処理結果の数が当該イベント型に対応する判定基準数の過半数以下であると判定された場合(S324:No)、判定プログラム1210は、処理をステップS321に移行する。
If it is determined in S324 that the number of processing results totaled for each event type, event type, and processing result content is less than a majority of the number of determination criteria corresponding to the event type (S324: No) In the
一方、S324で、受信した処理結果のイベント型、イベント種別、及び内容と一致する処理結果の数が当該イベント型に対応する判定基準数の過半数より大きいと判定された場合、判定プログラム1210は、イベント型、イベント種別、及び処理結果の内容毎に集計された処理結果の数が当該イベント型に対応する判定基準数の過半数より大きいと判定された場合、処理結果の数が判定基準数より大きいと判定された処理結果のうち、処理結果の数が最大の処理結果の内容を、処理要求に対する最も確からしい処理結果である推定処理結果として決定する(S325)。S325の推定処理結果の決定方法を多数決判定という。
On the other hand, if it is determined in S324 that the number of processing results that match the event type, event type, and content of the received processing result is greater than the majority of the determination reference numbers corresponding to the event type, the
次に、判定プログラム1210は、S325で決定された推定処理結果をクライアント7に送信し(S326)、処理を終了する。
Next, the
処理結果判定処理によれば、複数の処理結果の中から最も確からしい処理結果を推定処理結果として決定でき、クライアント7が受信する処理結果の信頼性を向上させることができる。
According to the processing result determination processing, the most probable processing result can be determined as the estimation processing result from the plurality of processing results, and the reliability of the processing result received by the
また、S324及びS325の処理では、いずれかの内容の処理結果の数が判定基準数の過半数より大きくなった場合に、これらの処理結果の中から多数決判定を用いて推定処理結果を決定するため、分散装置10の処理負荷を軽減できる。また、分散装置10は、処理要求を受信した全てのWebサーバ11から処理結果を受信した場合に、上記した多数決判定を実行するようにすると、分散装置10に接続されるWebサーバ11を管理する必要があるだけでなく、推定処理結果を送信するまでの時間も長くなるが、本実施例では、S324及びS325によって、判定基準数を満たすだけの数の処理結果を分散装置10が受信したタイミングで、推定処理結果を決定でき、推定処理結果を送信するまでの時間を短縮でき、また、分散装置10に接続されるWebサーバ11を管理する必要もない。
Further, in the processes of S324 and S325, when the number of processing results of any content is larger than the majority of the determination reference numbers, the estimation processing result is determined using the majority decision from these processing results. The processing load on the
なお、推定処理結果を決定する方法には種々の方法がある。例えば、処理結果の内容がYESかNOのような2値である場合、判定プログラム1210は、処理結果の内容がYESである処理結果の数と処理結果の内容がNOである処理結果の数を集計し、数が多い方の内容を推定処理結果として決定してもよい。また、処理結果の内容が数値(多値)である場合、判定プログラム1210は、数値の平均値を推定処理結果として決定してもよいし、処理結果の確率分布を算出し、確率分布に基づく期待値を推定処理結果として決定してもよい。
There are various methods for determining the estimation processing result. For example, when the content of the processing result is binary such as YES or NO, the
異なる内容の処理結果の数が同数である場合、判定プログラム1210は、予め設定された値(指定値)を推定処理結果として決定してもよい。分散装置10への指定値の設定は、例えば、管理サーバ9に管理者から指定値が入力され、管理サーバ9は入力された指定値を分散装置10に送信してもよいし、分散装置10に管理者が指定値を直接入力してもよい。
When the number of processing results having different contents is the same, the
また、判定プログラム1210は、処理結果のHTTPヘッダのステータスコード、及びHTTPデータのハッシュ値等、及び分散データ(図24に示すP3043)も用いて、推定処理結果を決定してもよい。
Further, the
図27は、実施例1の管理サーバ9によって実行される処理結果登録処理のフローチャートである。
FIG. 27 is a flowchart of processing result registration processing executed by the
処理結果登録処理では、図26に示す処理結果判定処理で分散装置10から送信された処理結果情報を管理サーバ9が受信した場合、管理サーバ9の管理プログラム910は、受信した処理結果情報に基づいて、推定時間管理テーブル923及び統計時間管理テーブル924を更新する。管理サーバ9は、分散装置10から処理結果情報を受信することによって、分散装置10におけるWebサーバ11からの処理結果の受信状況を把握できる。また、処理結果情報は、Webサーバの識別情報、イベント型、イベント種別、及び処理結果の内容等を含む。
In the processing result registration processing, when the
まず、管理プログラム910は、分散装置10から処理結果情報を受信する(S241)。そして、管理プログラム910は、受信した処理結果情報に基づいて、推定時間管理テーブル923及び統計時間管理テーブル924を更新し(S242)、処理を終了する。
First, the
まず、推定時間管理テーブル923の更新処理について説明する。 First, update processing of the estimated time management table 923 will be described.
管理プログラム910は、管理サーバ9が処理結果情報を受信した場合、図12に示す推定時間管理テーブル923にレコードを追加する。管理プログラム910は、追加したレコードのWebサーバ9212に受信した処理結果情報に含まれるWebサーバ11の識別情報を登録し、追加したレコードのイベント型9233に受信した処理結果情報に含まれるイベント型を登録し、追加したレコードのイベント種別9224に受信した処理結果情報に含まれるイベント種別を登録する。また、管理プログラム910は、追加したレコードは処理結果情報の受信によって追加されたものであるので、追加したレコードの処理種別9232に「判定」を登録し、見積時間9235にNULLを登録する。また、管理プログラム910は、追加したレコードの更新時刻9236に当該レコードを更新した時刻を登録する。
When the
次に、統計時間管理テーブル924の更新処理について説明する。 Next, update processing of the statistical time management table 924 will be described.
管理プログラム910は、処理結果情報の受信による推定時間管理テーブル923の更新が完了すると、処理結果情報の受信によって追加されたレコードの更新時刻と、分散先情報の受信によって追加したレコード(Webサーバ931に処理要求の送信先のネットワーク17の識別情報が登録されたレコード)の更新時刻との差分を見積時間として算出しておく。
When the update of the estimated time management table 923 by receiving the processing result information is completed, the
管理プログラム910は、図13に示す統計時間管理テーブル924のWebサーバ9241に受信した処理結果情報に含まれるWebサーバ11の識別情報が登録され、URI926に受信した処理結果情報に含まれるURIが登録されたレコードの総時間9244に、現在の総時間9244に登録された時間に上記見積時間を加算した値を登録する。また、管理プログラム910は、当該レコードのカウンタ9245に、現在のカウンタ9245に登録された値に1を加算した値を登録する。また、管理プログラム910は、当該レコードの更新された総時間9244に登録された時間を、更新されたカウンタ9245に登録された値で除算することによって平均見積時間を算出し、当該レコードの平均見積時間9242に算出した平均見積時間を登録する。
In the
処理結果登録処理によれば、管理サーバ9は、Webサーバ11と通信することなく、分散装置10から処理結果情報を受信することによって、分散装置10がブロードキャストで送信した処理要求を受信し、当該処理要求に対応する処理を実行するWebサーバ11を把握でき、また、各Webサーバ11の当該処理要求に対応する処理にかかる時間(平均見積時間)も推定できる。管理サーバ9は、分散装置10から分散先情報を受信し、平均見積時間から所定時間以上を経過しても処理結果情報を受信しない場合、処理結果情報を受信していないWebサーバ11で異常が発生したと推定できる。この場合、管理サーバ9は、当該Webサーバ11で異常が発生している可能性がある旨を管理者に報知してもよい。例えば、管理サーバ9は、その旨をディスプレイ等に表示してもよい。
According to the process result registration process, the
本実施例によれば、Webサーバ11、APサーバ12及びDBサーバ13を有するWebシステムサーバ群を複数設置することによって、クライアント7からの処理要求に対応する処理を実行する一般的なWebシステムにおいて、複数のWebシステムサーバ群において、APサーバ12のアプリケーションによる業務ロジックを並列して実行でき、またDBサーバ13におけるDB処理も並列して実行できる。これによって、Webシステムサーバ群としてのサービスを停止することなく、一部のWebシステムサーバ群のハードウェア又はソフトウェアの交換等の保守作業を実施できる。
According to this embodiment, in a general Web system that executes a process corresponding to a processing request from the
また、本実施例によれば、この保守作業によって一部のWebシステムサーバ群の信頼性が低下した場合であっても、分散装置10は、複数の処理結果から推定処理結果を決定するので、推定処理結果の信頼性を維持できる。これによって、Webサーバ11、APサーバ12、及びDBサーバ13のバージョンアップ等を容易に実施できる。
Further, according to the present embodiment, even if the reliability of some Web system server groups is reduced by this maintenance work, the
また、本実施例によれば、分散装置10が処理要求をブロードキャストで複数のWebサーバ11に送信するため、Webサーバ11に関する情報を分散装置10に設定する必要がない。したがって、分散装置10にネットワーク17を介して接続されるWebシステムサーバ群を増設及び減設しても、分散装置10に設定しなくてもよい。このため、例えば、多重度を向上させる場合には、ネットワーク17に新たなWebサーバシステム群を接続するだけでよく、管理者の作業効率を向上させることができる。また、Webシステムサーバ群が有するWebサーバ11、APサーバ12、及びDBサーバ13を接続するネットワークを物理的又はVLAN(Virtual Local Area Network)技術を用いて論理的に分離することによって、各Webシステムサーバ群の中で使用するIPアドレスを同一とすることができる。
Further, according to the present embodiment, since the
また、本実施例では、Webシステムサーバ群全体で処理を並列して処理を実行するが、分散装置10の接続構成、及び分散データ処理プログラム1110の実装サーバを変更することによって、例えばAPサーバ12とDBサーバ13との間のみで処理を並列して実行でき、並列処理の部分的な適用も可能である。
In this embodiment, the processing is executed in parallel in the entire Web system server group. However, by changing the connection configuration of the distributed
実施例1の図21に示す管理サーバ9による分散先登録処理において、管理サーバ9が分散装置10から分散先情報を受信した場合、管理サーバ9の管理プログラム910は、図13に示す統計時間管理テーブル924を参照し、分散装置10が送信した処理要求に対応する処理を実行可能なWebサーバ11と当該Webサーバ11における見積時間を、推定時間管理テーブル923に登録する。
In the distribution destination registration process by the
統計時間管理テーブル924には、クライアント7から実際に送信された処理要求に基づく分散先情報、及び当該処理要求に対応する処理結果に基づく処理結果情報に基づいて平均時間等が登録される。このため、クライアント7から処理要求が送信されない時間帯等がある場合、統計時間管理テーブル924に登録された平均見積時間は現在のWebサーバ11の見積時間に適合しない可能性がある。
In the statistical time management table 924, the average time and the like are registered based on the distribution destination information based on the processing request actually transmitted from the
このため、本実施例では、分散装置10は、最後に処理要求を送信してから所定時間以上経過した場合、疑似的な処理要求(疑似処理要求)をネットワーク17にブロードキャストで送信し、疑似的な処理要求を送信した旨の分散先情報(疑似分散先情報)を管理サーバ9に送信する。
For this reason, in this embodiment, the distributed
そして、分散装置10から送信された処理要求を受信したWebサーバ11は、図22に示す分散データ処理を実行し、疑似的な処理要求に対応する処理結果(疑似処理結果)を分散装置10に送信する。
Then, the
分散装置10は、Webサーバ11から疑似処理結果を受信した場合、図26に示す処理結果判定処理を実行するが、疑似処理結果を受信した旨の処理結果情報(疑似処理結果情報)を管理サーバ9に送信し、推定処理結果を決定する処理(S324〜S326)は実行しない。
When the
管理サーバ9は、分散装置10から疑似分散先情報を受信した場合、図21に示す分散先登録処理を実行し、分散装置10から疑似処理結果情報を受信した場合、図27に示す処理結果登録処理を実行する。
When the
これによって、分散装置10がクライアント7から処理要求を所定時間受信しない場合であっても、疑似処理要求を送信するため、管理サーバ9の統計時間管理テーブル924に登録された平均見積時間を現在のWebサーバ11の見積時間に適合させることができ、クライアント7が処理要求を送信しない時間帯であっても、管理サーバ9は、Webサーバ11で異常が発生した可能性があることを把握できる。
As a result, even if the
特許請求の範囲で用いた用語について説明する。端末は処理要求を送信するクライアント7に対応する。処理装置は、Webサーバ11、APサーバ12、及びDBサーバ13等を上位概念化したものであり、分散装置10から処理要求を受信し、処理要求に対応する処理を実行する装置であれば、これらに限定されない。処理分散部は分散装置10に対応し、管理部は管理サーバ9に対応する。分散装置10の機能及び管理サーバ9の機能は同一のハードウェアに実装されてもよいため、処理分散部及び管理部と記載している。後続処理装置は、APサーバ12及びDBサーバ13等に対応する。
Terms used in the claims will be described. The terminal corresponds to the
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることも可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。 In addition, this invention is not limited to an above-described Example, Various modifications are included. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of a certain embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of a certain embodiment. Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、又は、ICカード、SDカード、DVD等の記録媒体に置くことができる。 Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor. Information such as programs, tables, and files that realize each function can be stored in a recording device such as a memory, a hard disk, or an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない、実際には殆ど全ての構成が相互に接続されていると考えてもよい。 In addition, control lines and information lines are those that are considered necessary for explanation, and not all control lines and information lines on the product are shown. In fact, almost all configurations are connected to each other. You may think that it is.
5,6,16〜19 ネットワーク
7 クライアント
9 管理サーバ
10 分散装置
11 Webサーバ
12 APサーバ
13 DBサーバ
5, 6, 16 to 19
Claims (11)
前記複数の処理装置にネットワークを介して接続され、前記端末から送信された処理要求を前記ネットワークを介して前記複数の処理装置に送信する処理分散部と、を備える処理制御システムであって、
前記処理分散部は、前記端末から処理要求を受信した場合、前記受信した処理要求を前記ネットワークにブロードキャストで送信し、
前記処理装置は、前記処理分散部から処理要求を受信した場合、前記受信した処理要求に対応する処理を実行し、処理結果を前記処理分散部に送信し、
前記処理分散部は、前記処理装置から処理結果を受信した場合、前記受信した複数の処理結果の分布に基づいて、前記処理要求に対する最も確からしい処理結果である推定処理結果を決定し、
前記処理要求を送信した端末に前記決定した推定処理結果を送信することを特徴とする処理制御システム。 A plurality of processing devices that execute processing corresponding to the processing request transmitted from the terminal;
A processing control system comprising: a processing distribution unit connected to the plurality of processing devices via a network and transmitting a processing request transmitted from the terminal to the plurality of processing devices via the network;
The processing distribution unit, when receiving a processing request from the terminal, broadcasts the received processing request to the network,
When the processing device receives a processing request from the processing distribution unit, the processing device executes a process corresponding to the received processing request, and transmits a processing result to the processing distribution unit.
When the processing distribution unit receives a processing result from the processing device, the processing distribution unit determines an estimation processing result that is the most probable processing result for the processing request based on the distribution of the plurality of received processing results,
A processing control system, wherein the determined estimation processing result is transmitted to a terminal that has transmitted the processing request.
前記処理分散部は、
内容が一致する処理結果の数を算出し、
前記内容が一致する処理結果の数が最も多い処理結果を前記推定処理結果として決定することを特徴とする処理制御システム。 The processing control system according to claim 1,
The processing distribution unit
Calculate the number of processing results that match,
A processing control system, wherein a processing result having the largest number of processing results having the same content is determined as the estimation processing result.
前記処理分散部は、
前記内容が一致する処理結果の数が予め設定された値に達した場合、当該内容の処理結果を前記推定処理結果として決定することを特徴とする処理制御システム。 The processing control system according to claim 2,
The processing distribution unit
When the number of processing results having the same content reaches a preset value, the processing result of the content is determined as the estimation processing result.
前記処理装置を管理する管理部をさらに備え、
前記処理分散部は、前記処理装置から前記処理結果を受信した場合、前記処理結果を受信した旨の処理結果情報を前記管理部に送信し、
前記管理部は、前記処理結果情報に基づいて、前記処理分散部がブロードキャストで送信する処理要求に対応する処理を実行する処理装置の数を算出することを特徴とする処理制御システム。 The processing control system according to claim 1,
A management unit for managing the processing apparatus;
When the processing distribution unit receives the processing result from the processing device, the processing distribution unit transmits processing result information indicating that the processing result has been received to the management unit,
The processing control system, wherein the management unit calculates the number of processing devices that execute processing corresponding to a processing request transmitted by the processing distribution unit by broadcast based on the processing result information.
前記処理分散部は、
前記受信した処理要求を前記ネットワークにブロードキャストで送信した場合、前記処理要求を前記ネットワークに送信した旨の分散先情報を前記管理部に送信し、
前記管理部は、前記分散先情報及び前記処理結果情報を受信した場合、前記受信した分散先情報及び処理結果情報に基づいて、前記処理結果を送信した処理装置の前記処理要求の処理の実行時間を算出し、
今回算出した実行時間及び以前に算出した実行時間に基づいて、前記処理結果を送信した処理装置の前記処理要求の処理の平均実行時間を算出し、
前記処理結果を送信した処理装置と前記算出した平均実行時間とを関連付けて統計時間管理情報に登録することを特徴とする処理制御システム。 The processing control system according to claim 4,
The processing distribution unit
When the received processing request is transmitted to the network by broadcast, the distribution destination information indicating that the processing request is transmitted to the network is transmitted to the management unit,
When the management unit receives the distribution destination information and the processing result information, an execution time of the processing request processing of the processing device that has transmitted the processing result based on the received distribution destination information and processing result information To calculate
Based on the execution time calculated this time and the previously calculated execution time, calculate the average execution time of the processing of the processing request of the processing device that transmitted the processing result,
A processing control system, wherein the processing device that has transmitted the processing result and the calculated average execution time are associated with each other and registered in statistical time management information.
前記管理部は、
前記分散先情報を受信した場合、前記統計時間管理情報に登録された処理装置と、当該処理装置の平均実行時間とを読み出し、
前記分散先情報を受信してから平均実行時間を超えて所定時間以上経過しても、当該平均時間に関連付けられた処理装置から処理結果を受信した旨の処理結果情報を前記処理分散部から受信しない場合、当該処理装置で異常が発生している可能性がある旨を管理者に報知することを特徴とする処理制御システム。 The processing control system according to claim 5,
The management unit
When the distribution destination information is received, the processing device registered in the statistical time management information and the average execution time of the processing device are read out,
Even if the predetermined execution time exceeds the average execution time after receiving the distribution destination information, processing result information indicating that the processing result is received from the processing device associated with the average time is received from the processing distribution unit. If not, a processing control system that notifies an administrator that there is a possibility that an abnormality has occurred in the processing device.
前記処理分散部は、
前記端末から処理要求を受信してから所定時間経過しても、新たな処理要求を受信しない場合、疑似的な処理要求である疑似処理要求を前記ネットワークにブロードキャストで送信し、
前記疑似処理要求を前記ネットワークにブロードキャストで送信した場合、前記疑似処理要求を前記ネットワークに送信した旨の疑似分散先情報を前記管理部に送信し、
前記処理装置は、前記処理分散部から前記疑似処理要求を受信した場合、前記受信した疑似処理要求に対応する処理を実行し、前記疑似処理要求に対応する処理結果である疑似処理結果を前記処理分散部に送信し、
前記処理分散部は、前記処理装置から前記疑似処理結果を受信した場合、前記疑似処理結果を受信した旨の疑似処理結果情報を前記管理部に送信し、
前記管理部は、
前記疑似分散先情報及び前記疑似処理結果情報を受信した場合、前記受信した疑似分散先情報及び疑似処理結果情報に基づいて、前記疑似処理結果を送信した処理装置の前記疑似処理要求の処理の実行時間を算出し、
今回算出した実行時間、以前に算出した処理要求に対応する処理の実行時間、及び以前に算出した疑似処理要求に対応する処理の実行時間に基づいて、前記疑似処理結果を送信した処理装置の前記処理要求の処理の実行にかかる平均実行時間を算出し、
前記疑似処理結果を送信した処理装置と前記算出した平均実行時間とを関連付けて前記統計時間管理情報に登録することを特徴とする処理制御システム。 The processing control system according to claim 5,
The processing distribution unit
If a new processing request is not received even after a predetermined time has elapsed since receiving a processing request from the terminal, a pseudo processing request that is a pseudo processing request is broadcasted to the network, and
When the pseudo processing request is transmitted to the network by broadcast, pseudo distributed destination information indicating that the pseudo processing request is transmitted to the network is transmitted to the management unit,
When the processing device receives the pseudo processing request from the processing distribution unit, the processing device executes processing corresponding to the received pseudo processing request, and processes the pseudo processing result that is a processing result corresponding to the pseudo processing request. Sent to the decentralized part
When the processing distribution unit receives the pseudo processing result from the processing device, the processing distribution unit transmits pseudo processing result information indicating that the pseudo processing result has been received to the management unit,
The management unit
When the pseudo-distribution destination information and the pseudo-processing result information are received, execution of the processing of the pseudo-processing request of the processing apparatus that has transmitted the pseudo-processing result based on the received pseudo-distribution destination information and pseudo-processing result information Calculate the time,
Based on the execution time calculated this time, the execution time of the process corresponding to the previously calculated process request, and the execution time of the process corresponding to the previously calculated pseudo process request, the processing apparatus that has transmitted the pseudo process result Calculate the average execution time required to execute the process request,
A processing control system, wherein the processing device that has transmitted the pseudo processing result and the calculated average execution time are associated with each other and registered in the statistical time management information.
前記処理分散部は、
前記端末から処理要求を受信した場合、前記受信した処理要求をブロードキャストで送信可能な形式に変換し、
前記変換した処理要求を前記ネットワークにブロードキャストで送信し、
前記処理装置は、
前記処理分散部から前記処理要求を受信した場合、前記受信した処理要求を前記処理装置が処理可能な形式に変換し、
前記変換した処理要求に対応する処理を実行することを特徴とする処理制御システム。 The processing control system according to claim 1,
The processing distribution unit
When a processing request is received from the terminal, the received processing request is converted into a format that can be transmitted by broadcast,
Broadcast the converted processing request to the network;
The processor is
When the processing request is received from the processing distribution unit, the received processing request is converted into a format that can be processed by the processing device,
A process control system for executing a process corresponding to the converted process request.
前記処理装置は後続処理装置に接続され、
前記処理装置は、
前記処理分散部から処理要求を受信した場合、前記受信した処理要求に対応する処理を前記後続処理装置に実行させ、
前記後続処理装置の処理結果を、前記処理結果として前記処理分散部に送信することを特徴とする処理制御システム。 The processing control system according to claim 1,
The processing device is connected to a subsequent processing device;
The processor is
When a processing request is received from the processing distribution unit, the subsequent processing device is caused to execute processing corresponding to the received processing request,
The processing control system, wherein the processing result of the subsequent processing device is transmitted to the processing distribution unit as the processing result.
前記複数の処理装置にネットワークを介して接続され、前記端末から送信された処理要求を前記ネットワークを介して前記複数の処理装置に送信する処理分散部と、を有する処理制御システムにおける処理制御方法であって、
前記処理分散部が、前記端末から処理要求を受信した場合、前記受信した処理要求を前記ネットワークにブロードキャストで送信し、
前記処理装置が、前記処理分散部から受信した処理要求に対応する処理を実行し、処理結果を前記処理分散部に送信し、
前記処理分散部が、前記処理装置から処理結果を受信した場合、前記受信した複数の処理結果の分布に基づいて、前記処理要求に対する最も確からしい処理結果である推定処理結果を決定し、
前記処理分散部が、前記処理要求を送信した端末に前記決定した推定処理結果を送信することを特徴とする処理制御方法。 A plurality of processing devices that execute processing corresponding to the processing request transmitted from the terminal;
A processing control method in a processing control system, comprising: a processing distribution unit connected to the plurality of processing devices via a network and transmitting a processing request transmitted from the terminal to the plurality of processing devices via the network. There,
When the processing distribution unit receives a processing request from the terminal, it broadcasts the received processing request to the network,
The processing device executes processing corresponding to the processing request received from the processing distribution unit, and transmits a processing result to the processing distribution unit.
When the processing distribution unit receives a processing result from the processing device, based on the distribution of the plurality of processing results received, determine an estimation processing result that is the most probable processing result for the processing request,
The processing control method, wherein the processing distribution unit transmits the determined estimation processing result to a terminal that has transmitted the processing request.
前記処理は、
前記端末から処理要求を受信した場合、前記受信した処理要求を前記ネットワークにブロードキャストで送信するステップと、
前記処理装置によって、前記処理分散部から受信した処理要求に対応する処理が実行され、送信される前記処理結果を受信するステップと、
前記受信した複数の処理結果の分布に基づいて、前記処理要求に対する最も確からしい処理結果である推定処理結果を決定するステップと、
前記処理要求を送信した端末に前記決定した推定処理結果を送信するステップと、を含むことを特徴とするプログラム。 A processing distribution unit connected to a plurality of processing devices that execute processing corresponding to a processing request transmitted from a terminal via a network, and having a processor and a storage area, transmits the processing request transmitted from the terminal via the network A program for causing the processor to execute a process of transmitting a processing result from the processing apparatus to the terminal.
The processing is as follows:
If a processing request is received from the terminal, the received processing request is broadcasted to the network; and
A step of executing processing corresponding to the processing request received from the processing distribution unit by the processing device and receiving the processing result to be transmitted;
Determining an estimated processing result that is the most probable processing result for the processing request based on the distribution of the plurality of processing results received;
Transmitting the determined estimation processing result to the terminal that has transmitted the processing request.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014028460A JP2015153299A (en) | 2014-02-18 | 2014-02-18 | Processing control system, processing control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014028460A JP2015153299A (en) | 2014-02-18 | 2014-02-18 | Processing control system, processing control method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015153299A true JP2015153299A (en) | 2015-08-24 |
Family
ID=53895431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014028460A Pending JP2015153299A (en) | 2014-02-18 | 2014-02-18 | Processing control system, processing control method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015153299A (en) |
-
2014
- 2014-02-18 JP JP2014028460A patent/JP2015153299A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10680874B2 (en) | Network service fault handling method, service management system, and system management module | |
CN110365748B (en) | Service data processing method and device, storage medium and electronic device | |
JP6563936B2 (en) | Method, system, and computer-readable medium for cloud-based virtual orchestrator | |
JP6974218B2 (en) | Storage system and its operation method | |
US9699085B2 (en) | Periodic advertisements of host capabilities in virtual cloud computing infrastructure | |
US9130943B1 (en) | Managing communications between client applications and application resources of on-premises and cloud computing nodes | |
US9264337B2 (en) | Service monitoring system, service monitoring method, and non-transitory computer-readable recording medium | |
US20190028435A1 (en) | Enhanced network processing of virtual node data packets | |
US20140059315A1 (en) | Computer system, data management method and data management program | |
JP6272190B2 (en) | Computer system, computer, load balancing method and program thereof | |
US20180176289A1 (en) | Information processing device, information processing system, computer-readable recording medium, and information processing method | |
US20160344582A1 (en) | Call home cluster | |
CN105391648A (en) | Technologies for aligning network flows to processing resources | |
JPWO2012133300A1 (en) | Virtual desktop system, network processing apparatus, management method, and management program | |
JP2010128597A (en) | Information processor and method of operating the same | |
JP2009026221A (en) | Business process operation management system, method, process operation management device, and its program | |
CN107426012B (en) | Fault recovery method and device based on super-fusion architecture | |
JP2016177324A (en) | Information processing apparatus, information processing system, information processing method, and program | |
JP6501924B2 (en) | Method and server for canceling alert | |
JP2016144186A (en) | Communication information controller, relay system, communication information control method, and communication information control program | |
JP5475130B2 (en) | Monitoring program, monitoring system, and monitoring method | |
JP6790667B2 (en) | Cluster system, server, operation method, and program | |
CN111629054B (en) | Message processing method, device and system, electronic equipment and readable storage medium | |
US20110185236A1 (en) | Common trouble case data generating method and non-transitory computer-readable medium storing common trouble case data generating program | |
JP2015153299A (en) | Processing control system, processing control method, and program |