JP2020160793A - Information processing device, system, program, and control method - Google Patents

Information processing device, system, program, and control method Download PDF

Info

Publication number
JP2020160793A
JP2020160793A JP2019059401A JP2019059401A JP2020160793A JP 2020160793 A JP2020160793 A JP 2020160793A JP 2019059401 A JP2019059401 A JP 2019059401A JP 2019059401 A JP2019059401 A JP 2019059401A JP 2020160793 A JP2020160793 A JP 2020160793A
Authority
JP
Japan
Prior art keywords
proxy
processing
server
information processing
information
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.)
Granted
Application number
JP2019059401A
Other languages
Japanese (ja)
Other versions
JP7230632B2 (en
Inventor
政義 大内
Masayoshi Ouchi
政義 大内
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2019059401A priority Critical patent/JP7230632B2/en
Publication of JP2020160793A publication Critical patent/JP2020160793A/en
Application granted granted Critical
Publication of JP7230632B2 publication Critical patent/JP7230632B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

To provide an information processing device, a system, a program, and a control method capable of further reducing the load in decentralized processing.SOLUTION: An information processing device includes receiving means for receiving a proxy execution request requesting proxy execution of processing of a request-source information processing device, execution determination means for determining, when the proxy execution request is received by the receiving means, whether a part or all of the processing of the request-source information processing device can be proxy-executed, proxy execution means for executing the processing of the request-source information processing device when the execution determination means determines that the proxy execution is feasible, distribution determination means for determining whether processing object information to be proxy-processed can be distributed to a plurality of information processing devices, and distribution means for distributing the processing object information to the information processing devices that proxy-execute the information when the distribution determination means determines that the information can be distributed.SELECTED DRAWING: Figure 11

Description

本発明は、情報処理装置、システム、プログラム及び制御方法に関する。 The present invention relates to information processing devices, systems, programs and control methods.

サーバの負荷を分散する技術として、特許文献1には、ネットワークに接続されたサーバが連携して処理を実行するシステムが開示されている。特許文献2には、他の装置に処理の実行を代行させる技術が開示されている。特許文献3には、処理を複数の処理ノードに分割処理させるとともに、処理の依頼元の処理ノードで処理ノードに割り当てる処理の調整を行う技術が開示されている。 As a technique for distributing the load on the server, Patent Document 1 discloses a system in which servers connected to a network cooperate to execute processing. Patent Document 2 discloses a technique for causing another device to perform processing on its behalf. Patent Document 3 discloses a technique for dividing a process into a plurality of processing nodes and adjusting the process assigned to the process node at the process node that requests the process.

国際公開第2017/145389号International Publication No. 2017/145389 特開2006−268166号公報Japanese Unexamined Patent Publication No. 2006-268166 特開2006−201896号公報Japanese Unexamined Patent Publication No. 2006-201896

依頼元の装置は、処理の負荷を分散させるために複数の他の装置に処理を依頼しても、処理の割り当てに関する負荷が発生し、依頼元の装置の負荷がさほど軽減されないという課題があった。 Even if the requesting device requests processing from a plurality of other devices in order to distribute the processing load, there is a problem that a load related to processing allocation is generated and the load of the requesting device is not reduced so much. It was.

そこでこの発明は、分散処理における負荷をより軽減可能な情報処理装置、システム、プログラム及び制御方法を提供することを目的としている。 Therefore, an object of the present invention is to provide an information processing device, a system, a program, and a control method capable of further reducing the load in distributed processing.

上記目的を達成するために、本発明は、依頼元の情報処理装置の処理の代理実行を要求する代理実行要求を受信する受信手段と、前記受信手段により、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する実行判定手段と、前記実行判定手段により、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する代理実行手段と、代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する分配判定手段と、前記分配判定手段により、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する分配手段と、を有する。 In order to achieve the above object, the present invention receives a proxy execution request requesting proxy execution of the processing of the requesting information processing apparatus, and a request when the proxy execution request is received by the receiving means. The execution determination means for determining whether or not a part or all of the processing of the original information processing device can be executed by proxy, and the information processing apparatus of the requesting source when the execution determination means determines that the processing can be executed by proxy. Distributable by the proxy execution means for executing the processing of the above, the distribution determination means for determining whether or not the processing target information to be the processing to be executed by proxy can be distributed to a plurality of information processing devices, and the distribution determination means. It has a distribution means for distributing the processing target information to an information processing apparatus that executes the processing target information on behalf of the information processing apparatus when it is determined.

上記目的を達成するために、本発明の別の態様によれば、複数の情報処理装置を含むシステムであって、処理の代理実行を要求する情報処理装置は、処理の代理実行を要求する代理実行要求を送信する送信手段を備え、前記代理実行要求を受信する情報処理装置は、前記代理実行要求を受信する受信手段と、前記受信手段により、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する実行判定手段と、前記実行判定手段により、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する代理実行手段と、代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する分配判定手段と、前記分配判定手段により、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する分配手段と、を有する。 In order to achieve the above object, according to another aspect of the present invention, an information processing device including a plurality of information processing devices and requesting proxy execution of processing is a proxy requesting proxy execution of processing. When the information processing apparatus including the transmission means for transmitting the execution request and receiving the proxy execution request receives the proxy execution request by the receiving means for receiving the proxy execution request and the receiving means, the information of the request source is obtained. The execution determination means for determining whether or not a part or all of the processing of the processing device can be executed by proxy, and the processing of the information processing apparatus of the requesting source when the execution determination means determines that the processing can be performed by proxy. It was determined by the proxy execution means to be executed, the distribution determination means for determining whether or not the processing target information to be the processing to be executed by proxy can be distributed to a plurality of information processing devices, and the distribution determination means. In this case, it has a distribution means for distributing the processing target information to an information processing apparatus that executes the processing target information on behalf of the information processing apparatus.

上記目的を達成するために、本発明の別の態様によれば、コンピュータに、依頼元の情報処理装置の処理の代理実行を要求する代理実行要求を受信する受信ステップと、前記受信ステップにより、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する実行判定ステップと、前記実行判定ステップにより、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する代理実行ステップと、代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する分配判定ステップと、前記分配判定ステップにより、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する分配ステップと、を実行させるためのプログラムである。 In order to achieve the above object, according to another aspect of the present invention, the receiving step of receiving the proxy execution request requesting the computer to execute the processing of the requesting information processing apparatus as a proxy, and the receiving step, When the proxy execution request is received, the execution determination step of determining whether or not a part or all of the processing of the requesting information processing apparatus can be proxy-executed, and the execution determination step determine that the proxy execution is possible. In addition, a proxy execution step for executing the processing of the requesting information processing device, a distribution determination step for determining whether or not the processing target information to be the processing to be executed by proxy can be distributed to a plurality of information processing devices, and This is a program for executing a distribution step of distributing the processing target information to an information processing apparatus that executes the processing target information on behalf of the information processing apparatus when it is determined by the distribution determination step that the information can be distributed.

上記目的を達成するために、本発明の別の態様によれば、情報処理装置の制御方法であって、依頼元の情報処理装置の処理の代理実行を要求する代理実行要求を受信する受信ステップと、前記受信ステップにより、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する実行判定ステップと、前記実行判定ステップにより、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する代理実行ステップと、代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する分配判定ステップと、前記分配判定ステップにより、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する分配ステップと、を有する。 In order to achieve the above object, according to another aspect of the present invention, a receiving step of receiving a proxy execution request requesting proxy execution of processing of the information processing device of the requesting source, which is a control method of the information processing device. When the proxy execution request is received by the reception step, the execution determination step of determining whether or not a part or all of the processing of the requesting information processing apparatus can be proxy executed, and the execution determination step of the proxy execution determination step. When it is determined that the information processing device can be executed, the proxy execution step for executing the processing of the requesting information processing device and whether or not the processing target information to be the processing to be executed by proxy can be distributed to a plurality of information processing devices. It has a distribution determination step for determining, and a distribution step for distributing the processing target information to an information processing apparatus that executes the processing target information on behalf of the information processing device when it is determined by the distribution determination step that distribution is possible.

本発明によれば、分散処理における負荷をより軽減可能という効果が得られる。 According to the present invention, the effect that the load in the distributed processing can be further reduced can be obtained.

本発明の一実施形態の構成を示す情報処理システムの構成例を示す図である。It is a figure which shows the structural example of the information processing system which shows the structure of one Embodiment of this invention. サーバの構成を示すブロック図である。It is a block diagram which shows the structure of a server. サーバ一覧DB、履歴DB、メッセージフォーマットを示す図である。It is a figure which shows the server list DB, history DB, and message format. 適用例(その1)を示すシーケンス図である。It is a sequence diagram which shows the application example (the 1). 適用例(その2)を示すシーケンス図である。It is a sequence diagram which shows the application example (the 2). 適用例(その3)を示すシーケンス図である。It is a sequence diagram which shows the application example (the 3). 依頼元サーバの処理の流れを示すフローチャートである。It is a flowchart which shows the processing flow of the request source server. 代理実行要求を受信したときの受信サーバの処理の流れを示すフローチャートである。It is a flowchart which shows the processing flow of the receiving server when the proxy execution request is received. 代理実行応答を送信した後の受信サーバの処理の流れを示すフローチャートである。It is a flowchart which shows the processing flow of the receiving server after transmitting the proxy execution response. 代理実行応答を送信した後の受信サーバの処理の流れを示すフローチャートである。It is a flowchart which shows the processing flow of the receiving server after transmitting the proxy execution response. 本実施形態による情報処理装置の最小構成を示す図である。It is a figure which shows the minimum structure of the information processing apparatus by this embodiment.

以下、本発明の一実施形態による情報処理システムを図面を参照して説明する。図1は、本発明の一実施形態の構成を示す情報処理システム100の構成例を示す図である。本実施形態では、情報処理システムの一例として、カメラで撮像された画像に所定の被写体が含まれる場合に、パトライト(登録商標)を点灯させるシステムを例にしている。 Hereinafter, an information processing system according to an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing a configuration example of an information processing system 100 showing the configuration of an embodiment of the present invention. In the present embodiment, as an example of an information processing system, a system in which a Patlite (registered trademark) is turned on when a predetermined subject is included in an image captured by a camera is used as an example.

情報処理システム100は、バックエンドサーバ1、および複数台のサーバ2A、2B、2C、2Dを含む。以下、サーバ2A、2B、2C、2Dのそれぞれを特に区別しない場合には任意の1台をサーバ2と表現する。サーバ2は、情報処理装置の一例である。また、サーバ2は、エッジサーバを想定している。エッジサーバは一般的に、他のサーバと比較して処理能力が低いことが多い。 The information processing system 100 includes a back-end server 1 and a plurality of servers 2A, 2B, 2C, and 2D. Hereinafter, when each of the servers 2A, 2B, 2C, and 2D is not particularly distinguished, any one is expressed as the server 2. The server 2 is an example of an information processing device. Further, the server 2 is assumed to be an edge server. Edge servers generally have less processing power than other servers.

サーバ2A、2B、2C、2Dには、それぞれカメラ102A、102B、102C、102Dが接続されている。サーバ2A、2B、2C、2Dには、それぞれパトライト202A、202B、202C、202Dが接続されている。以下、カメラ102A、102B、102C、102Dのそれぞれを特に区別しない場合には任意の1台をカメラ102と表現する。パトライト202A、202B、202C、202Dのそれぞれを特に区別しない場合には任意の1台をパトライト202と表現する。 Cameras 102A, 102B, 102C, and 102D are connected to the servers 2A, 2B, 2C, and 2D, respectively. Patlites 202A, 202B, 202C, and 202D are connected to the servers 2A, 2B, 2C, and 2D, respectively. Hereinafter, if each of the cameras 102A, 102B, 102C, and 102D is not particularly distinguished, any one of them will be referred to as a camera 102. When each of Patlite 202A, 202B, 202C, and 202D is not particularly distinguished, any one unit is expressed as Patlite 202.

バックエンドサーバ1とサーバ2は、ネットワーク10で接続され、互いに通信可能である。バックエンドサーバ1は、サーバ2に他のサーバ2と通信するための後述するサーバ情報を提供する。 The back-end server 1 and the server 2 are connected by the network 10 and can communicate with each other. The back-end server 1 provides the server 2 with server information described later for communicating with another server 2.

サーバ2は、カメラ102およびパトライト202を制御する。サーバ2は、カメラ102で撮像された画像を示す画像データに所定の被写体が含まれているか否かを判定する画像判定処理を実行する。画像判定処理の処理結果は、所定の被写体が含まれているか否かを示す。サーバ2は、画像判定処理の結果、所定の被写体が含まれている場合に、パトライト202を点灯させる。サーバ2は、上記画像判定処理の代理実行を他のサーバ2に要求することが可能である。他のサーバ2への代理実行の要求を代理実行要求と表現することがある。 The server 2 controls the camera 102 and the patrol light 202. The server 2 executes an image determination process for determining whether or not a predetermined subject is included in the image data indicating the image captured by the camera 102. The processing result of the image determination process indicates whether or not a predetermined subject is included. The server 2 turns on the patlite 202 when a predetermined subject is included as a result of the image determination process. The server 2 can request another server 2 to execute the image determination process on behalf of the server 2. A request for proxy execution to another server 2 may be expressed as a proxy execution request.

代理実行要求を受信したサーバ2は、処理の一部または全部を代理実行可能か否かを判定する。サーバ2は、代理実行不可能と判定した場合には、代理実行要求を、依頼元のサーバ2とは異なる他のサーバ2に転送する。 The server 2 that has received the proxy execution request determines whether or not a part or all of the processing can be proxy executed. When the server 2 determines that the proxy execution is not possible, the server 2 transfers the proxy execution request to another server 2 different from the requesting server 2.

一方、処理の一部または全部を代理実行可能と判定した場合には、サーバ2は、3つの動作モードのいずれかで動作する。代理実行に関してサーバ2が実行する主な処理として、上述した画像判定処理、分配処理、および処理結果送信処理がある。このうちの分配処理は、画像判定処理の対象となる処理対象情報(本実施形態では、カメラ102で撮像された画像を示す画像データ)をいくつかのサーバに分配する処理である。処理結果送信処理は、画像判定処理の処理結果を依頼元のサーバ2に送信する処理である。サーバ2は、分配処理によって他のサーバ2に画像情報を分配した場合には、処理結果送信処理において、分配したサーバ2から処理結果を受信し、受信した処理結果を依頼元のサーバ2に送信する。 On the other hand, when it is determined that a part or all of the processing can be executed by proxy, the server 2 operates in any of the three operation modes. The main processes executed by the server 2 regarding the proxy execution include the image determination process, the distribution process, and the process result transmission process described above. Of these, the distribution process is a process of distributing processing target information (in the present embodiment, image data indicating an image captured by the camera 102) that is the target of the image determination process to several servers. The process result transmission process is a process of transmitting the process result of the image determination process to the requesting server 2. When the server 2 distributes the image information to another server 2 by the distribution process, the server 2 receives the process result from the distributed server 2 in the process result transmission process, and transmits the received process result to the requesting server 2. To do.

動作モードには、全処理モード、一部処理(分配あり)モード、一部処理(分配なし)モード、および分配モードの4つのモードがある。このうちの全処理モードは、代理実行要求で要求された処理の全てを自らのサーバで処理するモードである。全処理モードで動作する場合、サーバ2は、1台で上記画像判定処理、および処理結果送信処理を実行する。 There are four operation modes: full processing mode, partial processing (with distribution) mode, partial processing (without distribution) mode, and distribution mode. Of these, all processing modes are modes in which all the processing requested by the proxy execution request is processed by the own server. When operating in all processing modes, one server 2 executes the above image determination processing and processing result transmission processing.

一部処理(分配あり)モードは、画像判定処理の一部の処理を実行するとともに、他のサーバ2に処理対象情報を分配する処理を実行するモードである。例えば、サーバAが画像判定処理の50%を実行し、サーバBが残りの50%を実行するものとする。そして、サーバBが一部処理(分配あり)モードで動作する場合には、サーバBは依頼元のサーバから処理対象情報を受信し、サーバAに50%分を分配し、自らも50%分の画像判定処理を実行する。 The partial processing (with distribution) mode is a mode in which a part of the image determination processing is executed and the processing of distributing the processing target information to the other server 2 is executed. For example, it is assumed that the server A executes 50% of the image determination processing and the server B executes the remaining 50%. Then, when the server B operates in the partial processing (with distribution) mode, the server B receives the processing target information from the requesting server, distributes 50% to the server A, and also 50% by itself. Executes the image judgment process of.

一部処理(分配なし)モードは、画像判定処理の一部の処理を実行するが、分配する処理は実行しないモードである。例えば、上記サーバAが一部処理(分配なし)モードで動作している。 The partial processing (no distribution) mode is a mode in which a part of the image determination processing is executed, but the distribution processing is not executed. For example, the server A is operating in a partial processing (no distribution) mode.

分配モードは、分配処理のみを行うモードである。例えば、上記サーバBが一部処理(分配なし)モードで動作するとし、サーバAが50%の処理を実行可能で、サーバBが50%の処理を実行可能であることを示した代理実行要求をサーバCに転送したものとする。サーバCは、サーバA、Bで合わせて100%の画像判定処理が実行されることから、自らが画像判定処理を実行する余地はないため、分配モードで動作するか否かを判定することとなる。サーバCが分配モードで動作する場合には、サーバCは依頼元のサーバから処理対象情報を受信し、サーバA、Bに50%ずつ分配する。サーバCは、サーバA、Bから処理結果を受信し、処理結果送信処理を実行する。 The distribution mode is a mode in which only distribution processing is performed. For example, assuming that the server B operates in a partial processing (no distribution) mode, a proxy execution request indicating that the server A can execute 50% of the processing and the server B can execute 50% of the processing. Was transferred to the server C. Since the server C executes 100% of the image determination processing in total on the servers A and B, there is no room for the server C to execute the image determination processing by itself, so it is determined whether or not to operate in the distribution mode. Become. When the server C operates in the distribution mode, the server C receives the processing target information from the requesting server and distributes it to the servers A and B by 50% each. The server C receives the processing results from the servers A and B, and executes the processing result transmission processing.

図2は、サーバ2の構成を示すブロック図である。サーバ2は、メッセージ受信部501、結果確認部502、指示取得部503、判定部504、デバイス指示作成部505、状態更新部506、状態反映部507、メッセージ送信部509、要求作成部510、指示作成部511、結果作成部512、処理実行部514、ライト制御部516、および画像取得部515を含む。サーバ2は、サーバ一覧DB508、履歴DB513を含む。サーバ一覧DB508、履歴DB513におけるDBはデータベースを示す。サーバ一覧DB508は、代理実行要求を送信するサーバ2を定めるときに用いられるデータベースであり、詳細については後述する。履歴DB513は、実行した処理概要を示すデータベースであり、詳細は後述する。 FIG. 2 is a block diagram showing the configuration of the server 2. The server 2 includes a message receiving unit 501, a result confirmation unit 502, an instruction acquisition unit 503, a determination unit 504, a device instruction creation unit 505, a status update unit 506, a status reflection unit 507, a message transmission unit 509, a request creation unit 510, and an instruction. It includes a creation unit 511, a result creation unit 512, a processing execution unit 514, a light control unit 516, and an image acquisition unit 515. The server 2 includes a server list DB 508 and a history DB 513. The DB in the server list DB 508 and the history DB 513 indicates a database. The server list DB 508 is a database used when defining a server 2 for transmitting a proxy execution request, and the details will be described later. The history DB 513 is a database showing an outline of executed processing, and the details will be described later.

メッセージ受信部501は、ネットワーク10から各種情報を受信する。メッセージ受信部501は、他のサーバ2から画像判定処理の処理結果を受信した場合には、処理結果を結果確認部502に出力する。なお、処理結果とともに、当該処理を実行したサーバ2の状態や性能に関するサーバ情報が受信されるので、当該サーバ情報も出力される。サーバ情報の詳細については後述する。メッセージ受信部501は、他のサーバ2から処理対象情報を受信した場合には、指示取得部503に出力する。指示取得部503は、取得した処理対象情報を処理実行部514に出力する。メッセージ受信部501は、他のサーバ2から代理実行要求を受信した場合には、判定部504に出力する。なお、代理実行要求とともに、他のサーバ2のサーバ情報が受信されるので、当該サーバ情報も出力される。 The message receiving unit 501 receives various information from the network 10. When the message receiving unit 501 receives the processing result of the image determination processing from the other server 2, the message receiving unit 501 outputs the processing result to the result confirmation unit 502. Since the server information regarding the status and performance of the server 2 that executed the process is received together with the process result, the server information is also output. Details of the server information will be described later. When the message receiving unit 501 receives the processing target information from the other server 2, it outputs the processing target information to the instruction acquisition unit 503. The instruction acquisition unit 503 outputs the acquired processing target information to the processing execution unit 514. When the message receiving unit 501 receives the proxy execution request from the other server 2, it outputs the message receiving unit 501 to the determination unit 504. Since the server information of the other server 2 is received together with the proxy execution request, the server information is also output.

結果確認部502は、処理結果を確認し、当該処理結果をデバイス指示作成部505に出力する。デバイス指示作成部505は、処理結果に基づき、パトライト202に対する指示を作成し、当該指示をライト制御部516に出力する。ライト制御部516は、指示に基づき、パトライト202を制御する。また、結果確認部502は、サーバ情報を状態更新部506に出力する。状態更新部506は、サーバ情報に基づき、サーバ一覧DB508を更新する。 The result confirmation unit 502 confirms the processing result and outputs the processing result to the device instruction creation unit 505. The device instruction creation unit 505 creates an instruction for the patrol light 202 based on the processing result, and outputs the instruction to the light control unit 516. The light control unit 516 controls the patrol light 202 based on the instruction. Further, the result confirmation unit 502 outputs the server information to the state update unit 506. The state update unit 506 updates the server list DB 508 based on the server information.

判定部504は、代理実行要求を受信すると、依頼元のサーバ2の処理の一部または全部を代理実行可能か否かを判定する。さらに、判定部504は、処理対象情報を複数のサーバ2に分配可能か否かを判定する。また、判定部504は、サーバ情報を状態反映部507に出力する。状態反映部507は、サーバ情報を、サーバ一覧DB508に反映する。 Upon receiving the proxy execution request, the determination unit 504 determines whether or not a part or all of the processing of the requesting server 2 can be proxy executed. Further, the determination unit 504 determines whether or not the processing target information can be distributed to the plurality of servers 2. Further, the determination unit 504 outputs the server information to the state reflection unit 507. The state reflection unit 507 reflects the server information in the server list DB 508.

メッセージ送信部509は、ネットワーク10に各種情報を送信する。要求作成部510は、依頼元のサーバ2として動作する場合に、サーバ一覧DB508および履歴DB513を参照して、代理実行要求をメッセージ送信部509によって他のサーバ2に送信する。また、要求作成部510は、判定部504による判定結果が、他のサーバ2に代理実行要求を送信する必要がある場合、サーバ一覧DB508および履歴DB513を参照して、他のサーバ2に代理実行要求をメッセージ送信部509によって転送する。 The message transmission unit 509 transmits various information to the network 10. When operating as the request source server 2, the request creation unit 510 refers to the server list DB 508 and the history DB 513, and transmits a proxy execution request to another server 2 by the message transmission unit 509. Further, when the determination result by the determination unit 504 needs to send the proxy execution request to the other server 2, the request creation unit 510 refers to the server list DB 508 and the history DB 513 and executes the proxy execution to the other server 2. The request is forwarded by the message transmitter 509.

デバイス指示作成部505は、依頼元のサーバ2として動作する場合に、他のサーバ2に処理対象情報をメッセージ送信部509によって転送する。なお、処理対象情報は、画像取得部515により取得される。結果作成部512は、代理実行した画像判定処理の処理結果をメッセージ送信部509によって送信する。また、結果作成部512は、他のサーバ2に処理対象情報を分配する場合には、分配する処理対象情報をメッセージ送信部509によって送信する。 When operating as the requesting server 2, the device instruction creation unit 505 transfers the processing target information to another server 2 by the message transmission unit 509. The processing target information is acquired by the image acquisition unit 515. The result creation unit 512 transmits the processing result of the image determination process executed by proxy by the message transmission unit 509. Further, when the result creation unit 512 distributes the processing target information to the other server 2, the processing target information to be distributed is transmitted by the message transmission unit 509.

処理実行部514は、画像取得部515が取得した処理対象情報や、指示取得部503が出力した処理対象情報に対し、画像判定処理を実行する。画像判定処理の処理結果は、結果作成部512に出力される。処理実行部514は、画像判定処理の処理結果に基づき、パトライト202に対する指示を作成し、当該指示をライト制御部516に出力する。 The processing execution unit 514 executes image determination processing on the processing target information acquired by the image acquisition unit 515 and the processing target information output by the instruction acquisition unit 503. The processing result of the image determination processing is output to the result creation unit 512. The processing execution unit 514 creates an instruction for the patrol light 202 based on the processing result of the image determination processing, and outputs the instruction to the light control unit 516.

処理実行部514は、画像判定処理の実行実績(データサイズ等)を履歴DB513に出力する。処理実行部514は、指示取得部503が出力した処理対象情報を、他のサーバ2に分配するために分割する。分割された処理対象情報は、結果作成部512に出力される。 The process execution unit 514 outputs the execution result (data size, etc.) of the image determination process to the history DB 513. The processing execution unit 514 divides the processing target information output by the instruction acquisition unit 503 in order to distribute it to the other servers 2. The divided processing target information is output to the result creation unit 512.

画像取得部515は、カメラ102で撮像された画像を示す画像データを処理実行部514に出力したり、サーバ一覧DB508を経由して各部に提供する。ライト制御部516は、指示に基づき、パトライト202を制御したり、パトライト202の状態を取得する。 The image acquisition unit 515 outputs image data indicating an image captured by the camera 102 to the processing execution unit 514, or provides the image data to each unit via the server list DB 508. The light control unit 516 controls the patlite 202 and acquires the state of the patlite 202 based on the instruction.

次に、上述したサーバ一覧DB508と履歴DB513について説明する。図3(A)は、サーバ一覧DB508の一例を示す図である。サーバ一覧DB508は、サーバ名、IPアドレス、性能情報、状態、および最終更新時刻で構成される。このうちのサーバ名、IPアドレス、性能情報、および状態がサーバ情報である。 Next, the server list DB 508 and the history DB 513 described above will be described. FIG. 3A is a diagram showing an example of the server list DB508. The server list DB508 is composed of a server name, an IP address, performance information, a status, and a last update time. Of these, the server name, IP address, performance information, and status are server information.

サーバ名は、サーバ2の名称を示す。IPアドレスは、サーバ2のIPアドレスを示す。性能情報には、CPU(Central Processing Unit)の動作周波数(Hz)とコア数の情報が含まれる。状態は、サーバ2の状態を示す。状態には、アイドル、制御中、代理実行中がある。このうちの制御中は、代理実行ではなく自身の処理を実行している状態を示す。代理実行中は、他のサーバ2の処理を実行している状態を示す。最終更新時刻は、サーバ情報が更新された時刻を示す。なお、時刻に加えて年月日を記憶してもよい。 The server name indicates the name of the server 2. The IP address indicates the IP address of the server 2. The performance information includes information on the operating frequency (Hz) of the CPU (Central Processing Unit) and the number of cores. The state indicates the state of the server 2. The states include idle, controlling, and surrogate execution. During control, it indicates that its own processing is being executed instead of proxy execution. During proxy execution, it indicates that the processing of the other server 2 is being executed. The last update time indicates the time when the server information was updated. In addition to the time, the date may be stored.

図3(A)において、例えばサーバDは、IPアドレスが192.168.0.3で、CPUの動作周波数は1.5G Hzで、コア数は4つであり、4時22分時点での状態は代理実行中であることがわかる。 In FIG. 3A, for example, the server D has an IP address of 192.168.0.3, a CPU operating frequency of 1.5 GHz, and four cores, as of 4:22. It can be seen that the state is being executed by proxy.

図3(B)は、履歴DB513の一例を示す図である。履歴DB513は、データサイズ、CPU使用率、および処理時間で構成される。データサイズは、処理対象情報のデータサイズを示し、単位はキロバイトやメガバイト等が用いられる。CPU使用率は、処理対象情報に対して画像判定処理を実行したときのCPU使用率を示し、単位は%が用いられる。処理時間は、画像判定処理の実行に要した時間であり、単位は秒が用いられる。図3(B)に示される履歴を有するサーバ2の処理能力は、CPU使用率が100%だとすると約100KB/秒であることわかる。 FIG. 3B is a diagram showing an example of the history DB 513. The history DB 513 is composed of a data size, a CPU usage rate, and a processing time. The data size indicates the data size of the information to be processed, and the unit is kilobytes, megabytes, or the like. The CPU usage rate indicates the CPU usage rate when the image determination process is executed for the processing target information, and% is used as the unit. The processing time is the time required to execute the image determination processing, and the unit is seconds. It can be seen that the processing capacity of the server 2 having the history shown in FIG. 3B is about 100 KB / sec when the CPU usage rate is 100%.

図3(C)は、代理実行要求のメッセージフォーマットを示す図である。代理実行要求は、依頼元、処理量、処理時間、および0個以上の代理実行情報で構成される。このうちの依頼元は、依頼元のサーバ2のIPアドレスである。処理量は、代理実行を依頼する処理対象情報のデータサイズである。処理時間は、依頼元が指定する、画像判定処理に要する時間であり、当該時間内に処理を終えることが要求される。 FIG. 3C is a diagram showing a message format of a proxy execution request. The proxy execution request is composed of a request source, a processing amount, a processing time, and 0 or more proxy execution information. The request source is the IP address of the request source server 2. The processing amount is the data size of the processing target information for which proxy execution is requested. The processing time is the time required for the image determination processing specified by the requester, and it is required that the processing be completed within the time.

代理実行情報は、サーバ情報と、処理量とで構成される。代理実行情報は、代理実行要求を受信したサーバ2の数だけ設けられる。代理実行情報は、サーバ2が受信した元のメッセージに、新たに代理実行情報を追加して他のサーバ2に転送する。代理実行情報におけるサーバ情報は、代理実行情報を受信したサーバ2のサーバ情報であり、処理量はサーバ情報に示されるサーバ2が処理する処理量である。受信したサーバ2が代理実行を全く行わない場合は、処理量を0として代理実行情報を追加する。 The proxy execution information is composed of server information and processing amount. Proxy execution information is provided for the number of servers 2 that have received the proxy execution request. The proxy execution information is transferred to another server 2 by adding new proxy execution information to the original message received by the server 2. The server information in the proxy execution information is the server information of the server 2 that has received the proxy execution information, and the processing amount is the processing amount processed by the server 2 shown in the server information. If the receiving server 2 does not perform proxy execution at all, the processing amount is set to 0 and proxy execution information is added.

依頼元は、サーバ一覧DB508を参照して、代理実行要求の送信先を決定する。このサーバ一覧DB508は、サーバ2の起動時と、代理実行要求を受信したときなどに更新されたり、処理結果を受信した場合に反映される。サーバ2の起動時には、上述したバックエンドサーバ1から他のサーバ2のサーバ情報が提供されるので、このときサーバ一覧DB508が作成される。バックエンドサーバ1が提供するサーバ情報は、提供されるサーバ2に隣接するサーバ2や、システム管理者により設定されたサーバ2のサーバ情報であってもよい。なお、隣接するサーバ2とは、例えば物理的に最も近いサーバ2や、ネットワーク遅延が少ないサーバ2や、同一のハブに接続されているサーバ2をいう。 The requester determines the destination of the proxy execution request by referring to the server list DB508. This server list DB 508 is reflected when the server 2 is started, when a proxy execution request is received, or when a processing result is received. When the server 2 is started, the server information of the other server 2 is provided from the back-end server 1 described above, so that the server list DB 508 is created at this time. The server information provided by the back-end server 1 may be the server information of the server 2 adjacent to the provided server 2 or the server 2 set by the system administrator. The adjacent server 2 means, for example, a physically closest server 2, a server 2 having a small network delay, or a server 2 connected to the same hub.

また、本実施形態によれば、依頼元のサーバ2は、依頼元が代理実行要求を送信したサーバ2が更に転送するサーバ2のサーバ情報を記憶する必要がないこととなる。また、サーバ一覧DB508には、バックエンドサーバ1が提供するサーバ情報や、代理実行要求を受信したときに加わるサーバ情報が記憶されるので、必要以上にサーバ情報が記憶されることがない。 Further, according to the present embodiment, the requesting server 2 does not need to store the server information of the server 2 further transferred by the server 2 to which the requesting source has transmitted the proxy execution request. Further, since the server information provided by the back-end server 1 and the server information added when the proxy execution request is received are stored in the server list DB 508, the server information is not stored more than necessary.

これにより、サーバ2は、多くのサーバ情報を記憶する必要がないので、サーバ2のハードウェアリソースを有効に利用でき、また全サーバ情報を記憶するようなサーバも必要ない。 As a result, the server 2 does not need to store a large amount of server information, so that the hardware resources of the server 2 can be effectively used, and a server that stores all the server information is not required.

依頼元のサーバ2は、サーバ一覧DB508に複数のサーバ2が記憶されている場合、代理実行要求の送信先として、アイドル状態のサーバ2や、性能の良い(例えば動作周波数とコア数の積が大きいなど)サーバ2を優先的に決定する。 When a plurality of servers 2 are stored in the server list DB508, the requesting server 2 has an idle server 2 or a good performance (for example, the product of the operating frequency and the number of cores) as the destination of the proxy execution request. (Large, etc.) The server 2 is preferentially determined.

代理実行要求を受信したサーバ2は、上記代理実行要求の処理量や自らの状態等に基づき代理実行可能か否かを判定する(換言すると、処理可能量(0%〜100%)を判定する)。例えば、代理実行要求による画像判定処理を実行したとき、以下の(a)、(b)のいずれかの条件を満たす場合に、代理実行可能と判定する。
(a)サーバ2が元々実行する必要のある計算やパトライト202の制御処理と代理実行要求による画像判定処理を並行して実行しても、そのサーバ2での各種制御のリアルタイム性を損なわないこと
(b)サーバ2が元々実行する必要のある計算やパトライト202の制御処理を行う必要のない時間内に画像判定処理が終了すること
The server 2 that has received the proxy execution request determines whether or not proxy execution is possible based on the processing amount of the proxy execution request, its own state, and the like (in other words, determines the processable amount (0% to 100%). ). For example, when the image determination process based on the proxy execution request is executed, it is determined that the proxy execution is possible if any of the following conditions (a) and (b) is satisfied.
(A) Even if the calculation that the server 2 originally needs to execute, the control process of Patlite 202, and the image determination process by the proxy execution request are executed in parallel, the real-time performance of various controls on the server 2 is not impaired. (B) The image determination process is completed within a time when the server 2 does not need to perform the calculation originally required to be executed or the control process of Patlite 202.

(a)の場合は、例えばサーバ2は、履歴DB513を参照し、画像判定処理を実行したときのCPU使用率の最大値と、パトライト202の制御中のCPU使用率の最大値のいずれか大きい方のCPU使用率を求める。このCPU使用率と、これから代理実行を行った場合の代理実行によるCPU使用率とを合わせてもCPU使用率が100%以下となる場合に、(a)を満たすと判定する。(b)は、例えば、これから10分程度アイドル状態が継続することが予めわかっているときになどに有効な条件となる。 In the case of (a), for example, the server 2 refers to the history DB 513, and either the maximum value of the CPU usage rate when the image determination process is executed or the maximum value of the CPU usage rate under the control of Patlite 202 is larger. Find the CPU usage rate of the other side. It is determined that (a) is satisfied when the CPU usage rate is 100% or less even if the CPU usage rate and the CPU usage rate due to the proxy execution when the proxy execution is performed from now on are combined. (B) is an effective condition, for example, when it is known in advance that the idle state will continue for about 10 minutes from now on.

次に、具体的な適用例や処理の流れについてシーケンス図やフローチャートを用いて説明する。以下の説明では、分かりやすくするために、依頼元のサーバ2を依頼元サーバと表現し、代理実行要求を受信するサーバ2をサーバA、B、Cや受信サーバなどと表現する。 Next, specific application examples and processing flows will be described using sequence diagrams and flowcharts. In the following description, for the sake of clarity, the requesting server 2 is referred to as a requesting server, and the server 2 that receives the proxy execution request is referred to as servers A, B, C, a receiving server, and the like.

図4は、適用例(その1)を示すシーケンス図である。依頼元サーバは、サーバAに代理実行要求を送信する(ステップS101)。代理実行要求を受信したサーバAは、実行不可能と判定し、サーバBに代理実行要求を転送する(ステップS102)。代理実行要求を受信したサーバBは、処理の全部を代理実行可能と判定し、代理実行応答を依頼元サーバに送信する(ステップS103)。これにより、サーバBは、全処理モードで動作する。 FIG. 4 is a sequence diagram showing an application example (No. 1). The requesting server sends a proxy execution request to the server A (step S101). The server A that has received the proxy execution request determines that it cannot be executed, and transfers the proxy execution request to the server B (step S102). Upon receiving the proxy execution request, the server B determines that all the processing can be executed by proxy, and transmits the proxy execution response to the requesting server (step S103). As a result, the server B operates in all processing modes.

依頼元サーバは、処理対象情報をサーバBに送信する(ステップS104)。サーバBは、画像判定処理を代理実行し、処理結果を通知する結果通知を依頼元サーバに送信し(ステップS105)、処理を終了する。図4の適用例において、サーバA、サーバBは代理実行要求受信時にサーバ一覧DB508を更新可能で、依頼元サーバは代理実行応答受信時または結果通知受信時にサーバ一覧DB508を更新可能である。これから説明する他の適用例においても、同様にサーバ一覧DB508を更新可能である。 The requesting server transmits the processing target information to the server B (step S104). The server B executes the image determination process on behalf of the server, transmits a result notification for notifying the process result to the requesting server (step S105), and ends the process. In the application example of FIG. 4, the server A and the server B can update the server list DB 508 when receiving the proxy execution request, and the requesting server can update the server list DB 508 when receiving the proxy execution response or receiving the result notification. In the other application examples described below, the server list DB 508 can be updated in the same manner.

図5は、適用例(その2)を示すシーケンス図である。依頼元サーバは、サーバAに代理実行要求を送信する(ステップS201)。代理実行要求を受信したサーバAは、処理量の30%を実行可能と判定し、サーバBに代理実行要求を転送する(ステップS202)。代理実行要求を受信したサーバBは、残りの処理量の70%を代理実行可能と判定し、さらに分配も可能と判定し、代理実行応答を依頼元サーバに送信する(ステップS203)。これにより、サーバAは、一部処理(分配なし)モードで動作し、サーバBは、一部処理(分配あり)モードで動作する。 FIG. 5 is a sequence diagram showing an application example (No. 2). The requesting server sends a proxy execution request to the server A (step S201). Upon receiving the proxy execution request, the server A determines that 30% of the processing amount can be executed, and transfers the proxy execution request to the server B (step S202). The server B that has received the proxy execution request determines that 70% of the remaining processing amount can be proxy executed, further determines that distribution is possible, and transmits a proxy execution response to the requesting server (step S203). As a result, the server A operates in the partial processing (without distribution) mode, and the server B operates in the partial processing (with distribution) mode.

依頼元サーバは、処理対象情報をサーバBに送信する(ステップS204)。サーバBは、処理対象情報の30%をサーバAに送信し(ステップS205)、また70%分の画像判定処理を代理実行する。サーバAは30%分の画像判定処理を代理実行し、結果通知をサーバBに送信する(ステップS206)。サーバBは、自らの処理結果とサーバAの処理結果を通知する結果通知を依頼元サーバに送信し(ステップS207)、処理を終了する。 The requesting server transmits the processing target information to the server B (step S204). The server B transmits 30% of the processing target information to the server A (step S205), and executes 70% of the image determination processing on behalf of the server B. The server A executes the image determination process for 30% on behalf of the server, and transmits the result notification to the server B (step S206). The server B transmits a result notification for notifying its own processing result and the processing result of the server A to the requesting server (step S207), and ends the processing.

図6は、適用例(その3)を示すシーケンス図である。依頼元サーバは、サーバAに代理実行要求を送信する(ステップS301)。代理実行要求を受信したサーバAは、処理量の30%を実行可能と判定し、サーバBに代理実行要求を転送する(ステップS302)。代理実行要求を受信したサーバBは、残りの処理量の70%を代理実行可能と判定するが、分配は不可能と判定し、サーバCに代理実行要求を転送する(ステップS303)。 FIG. 6 is a sequence diagram showing an application example (No. 3). The requesting server sends a proxy execution request to the server A (step S301). Upon receiving the proxy execution request, the server A determines that 30% of the processing amount can be executed, and transfers the proxy execution request to the server B (step S302). The server B that has received the proxy execution request determines that 70% of the remaining processing amount can be proxy executed, but determines that distribution is not possible, and transfers the proxy execution request to the server C (step S303).

代理実行要求を受信したサーバCは、分配可能と判定し、代理実行応答を依頼元サーバに送信する(ステップS304)。これにより、サーバA、サーバBは、一部処理(分配なし)モードで動作し、サーバCは、分配モードで動作する。 The server C that has received the proxy execution request determines that it can be distributed, and transmits the proxy execution response to the requesting server (step S304). As a result, the server A and the server B operate in the partial processing (no distribution) mode, and the server C operates in the distribution mode.

依頼元サーバは、処理対象情報をサーバCに送信する(ステップS305)。サーバCは、処理対象情報の30%をサーバAに送信し(ステップS306)、処理対象情報の70%をサーバBに送信する(ステップS307)。サーバAは30%分の画像判定処理を代理実行し、結果通知をサーバCに送信する(ステップS308)。サーバAは30%分の画像判定処理を代理実行し、結果通知をサーバCに送信する(ステップS308)。サーバBは70%分の画像判定処理を代理実行し、結果通知をサーバCに送信する(ステップS309)。サーバCは、サーバAの処理結果とサーバBの処理結果を通知する結果通知を依頼元サーバに送信し(ステップS310)、処理を終了する。 The requesting server transmits the processing target information to the server C (step S305). The server C transmits 30% of the processing target information to the server A (step S306), and transmits 70% of the processing target information to the server B (step S307). The server A executes the image determination process for 30% on behalf of the server, and transmits the result notification to the server C (step S308). The server A executes the image determination process for 30% on behalf of the server, and transmits the result notification to the server C (step S308). Server B executes 70% of the image determination processing on behalf of the server, and transmits a result notification to server C (step S309). The server C transmits a result notification for notifying the processing result of the server A and the processing result of the server B to the requesting server (step S310), and ends the processing.

上述した適用例に示されるように、依頼元サーバは、代理実行要求を送信し、処理対象情報を送信し、結果通知を待っていればよい。このように、依頼元サーバは、依頼先を何度も探す必要がなく、また受信サーバが実行する処理の割り当てに関する負荷(処理対象情報の分配による負荷など)も発生しないため、分散処理における負荷をより軽減可能となる。 As shown in the application example described above, the requesting server may send a proxy execution request, send processing target information, and wait for result notification. In this way, the requesting server does not need to search for the requesting destination many times, and the load related to the allocation of the processing executed by the receiving server (such as the load due to the distribution of the processing target information) does not occur, so that the load in the distributed processing does not occur. Can be further reduced.

また、受信サーバにおいても、受信サーバが可能な範囲で代理処理を実行でき、また分配のみを実行可能など、受信サーバの性能や状態に応じて柔軟に対応できるため、負荷を軽減できるだけではなく、より実態に応じた分散処理を行うことができる。 In addition, the receiving server can not only reduce the load but also reduce the load because it can flexibly respond to the performance and status of the receiving server, such as being able to execute proxy processing to the extent possible by the receiving server and executing only distribution. It is possible to perform distributed processing more according to the actual situation.

次に、依頼元サーバや受信サーバの処理の流れをフローチャートを用いて説明する。図7は、依頼元サーバの処理の流れを示すフローチャートである。依頼元サーバは、サーバ一覧DB508を参照し、代理実行を要求する受信サーバを決定する(ステップS401)。依頼元サーバは、決定した受信サーバに、代理実行要求を送信する(ステップS402)。 Next, the processing flow of the requesting server and the receiving server will be described using a flowchart. FIG. 7 is a flowchart showing a processing flow of the requesting server. The requesting server refers to the server list DB508 and determines the receiving server requesting proxy execution (step S401). The requesting server transmits a proxy execution request to the determined receiving server (step S402).

依頼元サーバは、受信サーバからの代理実行応答を待ち、代理実行応答を受信すると(ステップS403:YES)、代理実行応答を送信した受信サーバに処理対象情報を送信する(ステップS404)。依頼元サーバは、受信サーバからの結果通知を待ち、結果通知を受信すると(ステップS405:YES)、処理結果に応じた制御を実行し(ステップS406)、処理を終了する。 When the requesting server waits for the proxy execution response from the receiving server and receives the proxy execution response (step S403: YES), the requesting server transmits the processing target information to the receiving server that sent the proxy execution response (step S404). The requesting server waits for the result notification from the receiving server, and when it receives the result notification (step S405: YES), executes the control according to the processing result (step S406), and ends the processing.

図7に示されるように、依頼元サーバは、代理実行要求を送信し、処理対象情報を送信し、結果通知を待っていればよい。また、フローチャートに示されるように非常に軽い処理であるため、依頼元サーバの負荷をより軽減可能となる。 As shown in FIG. 7, the requesting server may send a proxy execution request, send processing target information, and wait for the result notification. Moreover, since the processing is very light as shown in the flowchart, the load on the requesting server can be further reduced.

次に、受信サーバの処理の流れを説明する。図8は、代理実行要求を受信したときの受信サーバの処理の流れを示すフローチャートである。受信サーバは、代理実行要求を受信すると、代理実行情報がある場合には、代理実行情報に示される処理量の総和を求め、残処理量は0%以外か否かを判定する。代理実行情報がない場合には残処理量は100%である。 Next, the processing flow of the receiving server will be described. FIG. 8 is a flowchart showing a processing flow of the receiving server when the proxy execution request is received. When the receiving server receives the proxy execution request, if there is proxy execution information, the receiving server obtains the sum of the processing amounts shown in the proxy execution information, and determines whether or not the remaining processing amount is other than 0%. If there is no proxy execution information, the remaining processing amount is 100%.

残処理量は0%以外の場合には(ステップS501:YES)、受信サーバは、処理可能量を判定し(ステップS502)、判定された処理可能量で分岐する(ステップS503)。処理可能量が0%の場合、すなわち全く処理できない場合、受信サーバは、サーバ一覧DB508を参照して、代理実行要求の転送先を決定する(ステップS504)。受信サーバは、決定した転送先に代理実行要求を転送して(ステップS505)、処理を終了する。 When the remaining processing amount is other than 0% (step S501: YES), the receiving server determines the processingable amount (step S502) and branches according to the determined processingable amount (step S503). When the processable amount is 0%, that is, when processing is not possible at all, the receiving server refers to the server list DB508 and determines the transfer destination of the proxy execution request (step S504). The receiving server transfers the proxy execution request to the determined transfer destination (step S505), and ends the process.

上記ステップS502において、処理可能量が100%と判定された場合、受信サーバは全処理モードで動作し(ステップS506)、依頼元に代理実行応答を送信し(ステップS511)、処理を終了する。 If the processable amount is determined to be 100% in step S502, the receiving server operates in all processing modes (step S506), sends a proxy execution response to the requester (step S511), and ends the processing.

上記ステップS502において、処理可能量が一部(0%より大きく、100%未満)と判定された場合、受信サーバは、この処理可能量により残処理量が0となるか否かを判定する(ステップS507)。残処理量が0となる場合には、受信サーバは、処理対象情報の分配処理も可能か否かを判定する(ステップS508)。分配処理も可能場合には(ステップS508:YES)、受信サーバは、一部処理(分配あり)モードで動作し(ステップS509)、依頼元に代理実行応答を送信し(ステップS511)、処理を終了する。 If it is determined in step S502 that the processable amount is a part (greater than 0% and less than 100%), the receiving server determines whether or not the remaining processable amount becomes 0 based on this processable amount. Step S507). When the remaining processing amount becomes 0, the receiving server determines whether or not the processing target information can be distributed (step S508). If the distribution process is also possible (step S508: YES), the receiving server operates in the partial process (with distribution) mode (step S509), sends a proxy execution response to the requester (step S511), and performs the process. finish.

分配処理が不可能場合には(ステップS508:NO)、受信サーバは、一部処理(分配なし)モードで動作し(ステップS510)、受信サーバは、サーバ一覧DB508を参照して、代理実行要求の転送先を決定する(ステップS504)。受信サーバは、決定した転送先に代理実行要求を転送して(ステップS505)、処理を終了する。 When the distribution process is impossible (step S508: NO), the receiving server operates in the partial processing (no distribution) mode (step S510), and the receiving server refers to the server list DB508 and makes a proxy execution request. The transfer destination of is determined (step S504). The receiving server transfers the proxy execution request to the determined transfer destination (step S505), and ends the process.

上記ステップS501において、残処理量は0%の場合には(ステップS501:NO)、受信サーバは、分配モードで動作可能か否かを判定する(ステップS512)。分配モードで動作不可能な場合には(ステップS512:NO)、受信サーバは、サーバ一覧DB508を参照して、代理実行要求の転送先を決定する(ステップS504)。受信サーバは、決定した転送先に代理実行要求を転送して(ステップS505)、処理を終了する。 In step S501, when the remaining processing amount is 0% (step S501: NO), the receiving server determines whether or not it can operate in the distribution mode (step S512). If it cannot operate in the distribution mode (step S512: NO), the receiving server refers to the server list DB508 and determines the transfer destination of the proxy execution request (step S504). The receiving server transfers the proxy execution request to the determined transfer destination (step S505), and ends the process.

一方、分配モードで動作可能な場合には(ステップS512:YES)、受信サーバは、分配モードで動作し(ステップS513)、依頼元に代理実行応答を送信し(ステップS511)、処理を終了する。 On the other hand, if it can operate in the distribution mode (step S512: YES), the receiving server operates in the distribution mode (step S513), sends a proxy execution response to the requester (step S511), and ends the process. ..

次に、図9を用いて、全処理モードまたは一部処理(分配あり)モードで動作する受信サーバの処理の流れを説明する。図9は、代理実行応答を送信した後の受信サーバの処理の流れを示すフローチャートである。受信サーバは、処理対象情報を受信すると(ステップS601:YES)、全処理モードで動作しているか否かを判定する(ステップS602)。 Next, the processing flow of the receiving server operating in the full processing mode or the partial processing (with distribution) mode will be described with reference to FIG. FIG. 9 is a flowchart showing a processing flow of the receiving server after transmitting the proxy execution response. When the receiving server receives the processing target information (step S601: YES), the receiving server determines whether or not it is operating in all processing modes (step S602).

全処理モードで動作している場合には(ステップS602:YES)、受信サーバは、代理処理を実行し(ステップS607)、依頼元サーバに結果通知を送信し(ステップS606)、処理を終了する。 When operating in all processing modes (step S602: YES), the receiving server executes proxy processing (step S607), sends a result notification to the requesting server (step S606), and ends the processing. ..

全処理モードで動作していない場合には(ステップS602:NO)、一部処理(分配あり)モードで動作しているため、受信サーバは、分配先にデータ通知を送信する(ステップS604)。次いで、受信サーバは、代理処理を実行し(ステップS604)、分配先からの結果通知を待ち、結果通知を受信すると(ステップS605)、自らの処理結果と分配先の処理結果を通知する結果通知を依頼元サーバに送信し(ステップS606)、処理を終了する。 If it is not operating in all processing modes (step S602: NO), it is operating in partial processing (with distribution) mode, so the receiving server transmits a data notification to the distribution destination (step S604). Next, the receiving server executes proxy processing (step S604), waits for the result notification from the distribution destination, and when it receives the result notification (step S605), the result notification that notifies its own processing result and the processing result of the distribution destination. Is transmitted to the requesting server (step S606), and the process ends.

このように、複数のサーバ2によって分散処理される場合であっても、処理結果は1つのサーバ2によって送信される。したがって、依頼元サーバは、代理実行するサーバ2の各々から処理結果を待たなくてもよいため、分散処理に係る負荷をより低減可能となる。 In this way, even when distributed processing is performed by a plurality of servers 2, the processing result is transmitted by one server 2. Therefore, since the requesting server does not have to wait for the processing result from each of the servers 2 to be executed by proxy, the load related to the distributed processing can be further reduced.

次に、図10を用いて、分配モードで動作する受信サーバの処理の流れを説明する。図10は、代理実行応答を送信した後の受信サーバの処理の流れを示すフローチャートである。受信サーバは、処理対象情報を受信すると(ステップS701:YES)、分配先にデータ通知を送信する(ステップS702)。次いで、受信サーバは、分配先からの結果通知を待ち、結果通知を受信すると(ステップS703:YES)、分配先の処理結果を通知する結果通知を依頼元サーバに送信し(ステップS704)、処理を終了する。 Next, the processing flow of the receiving server operating in the distribution mode will be described with reference to FIG. FIG. 10 is a flowchart showing a processing flow of the receiving server after transmitting the proxy execution response. When the receiving server receives the processing target information (step S701: YES), the receiving server transmits a data notification to the distribution destination (step S702). Next, the receiving server waits for the result notification from the distribution destination, and when receiving the result notification (step S703: YES), sends the result notification notifying the processing result of the distribution destination to the requesting server (step S704), and processes. To finish.

このように、分配のみを実行することを可能とすることで、代理実行要求を受信したサーバ2は、その負荷に応じて、画像判定処理を実行するか、または分配のみを実行するかを柔軟に決定することができる。 By making it possible to execute only the distribution in this way, the server 2 that has received the proxy execution request can flexibly execute the image determination process or only the distribution according to the load. Can be decided.

上述した実施形態では、一例としてカメラとパトライトを制御するサーバを例にしたが、これに限るものではない。例えばフラッパーゲートなど、サーバが制御可能な装置であれば、制御対象はどのような装置であってもよい。 In the above-described embodiment, a server that controls a camera and a patrol light is taken as an example, but the present invention is not limited to this. As long as the device can be controlled by the server, such as a flapper gate, the control target may be any device.

図11は本実施形態による情報処理装置600の最小構成を示す図である。本実施形態による情報処理装置600は少なくとも受信手段601と、実行判定手段602と、代理実行手段603と、分配判定手段604と、分配手段605とを有していればよい。 FIG. 11 is a diagram showing a minimum configuration of the information processing apparatus 600 according to the present embodiment. The information processing apparatus 600 according to the present embodiment may include at least the receiving means 601, the execution determining means 602, the proxy executing means 603, the distribution determining means 604, and the distributing means 605.

受信手段601は、依頼元の情報処理装置の処理の代理実行を要求する代理実行要求を受信する。実行判定手段602は、前記受信手段601により、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する。代理実行手段603は、前記実行判定手段602により、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する。分配判定手段604は、代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する。分配手段605は、前記分配判定手段604により、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する。 The receiving means 601 receives a proxy execution request requesting proxy execution of the processing of the requesting information processing apparatus. When the execution determination means 602 receives the proxy execution request by the reception means 601, the execution determination means 602 determines whether or not a part or all of the processing of the requesting information processing apparatus can be proxy execution. The proxy execution means 603 executes the processing of the requesting information processing apparatus when the execution determination means 602 determines that the proxy execution is possible. The distribution determination means 604 determines whether or not the processing target information to be processed by proxy execution can be distributed to a plurality of information processing devices. When the distribution determination means 604 determines that the distribution means can be distributed, the distribution means 605 distributes the processing target information to the information processing apparatus that executes the processing target information on behalf of the information processing device.

上述の情報処理装置600は内部に、コンピュータシステムを有している。そして、上述した図4−図10に示される処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。 The information processing device 600 described above has a computer system inside. The process of the process shown in FIGS. 4 to 10 described above is stored in a computer-readable recording medium in the form of a program, and the process is performed by the computer reading and executing this program. .. Here, the computer-readable recording medium refers to a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory, or the like. Further, this computer program may be distributed to a computer via a communication line, and the computer receiving the distribution may execute the program.

なお、図11における情報処理装置600の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより図4−図10に示される処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。 Note that the program for realizing the function of the information processing apparatus 600 in FIG. 11 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read by the computer system and executed. -The process shown in FIG. 10 may be performed. The term "computer system" as used herein includes hardware such as an OS and peripheral devices. Further, the "computer system" shall also include a WWW system provided with a homepage providing environment (or display environment). Further, the "computer-readable recording medium" refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, or a CD-ROM, or a storage device such as a hard disk built in a computer system. Furthermore, a "computer-readable recording medium" is a volatile memory (RAM) inside a computer system that serves as a server or client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. In addition, it shall include those that hold the program for a certain period of time.

また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。 Further, the program may be transmitted from a computer system in which this program is stored in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the "transmission medium" for transmitting a program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. Further, the above program may be for realizing a part of the above-mentioned functions. Further, a so-called difference file (difference program) may be used, which can realize the above-mentioned functions in combination with a program already recorded in the computer system.

本発明は、情報処理装置、システム、プログラム及び制御方法に関する。 The present invention relates to information processing devices, systems, programs and control methods.

1 バックエンドサーバ
2 サーバ
10 ネットワーク
102 カメラ
202 パトライト
501 メッセージ受信部
502 結果確認部
503 指示取得部
504 判定部
505 デバイス指示作成部
506 状態更新部
507 状態反映部
508 サーバ一覧DB
509 メッセージ送信部
510 要求作成部
511 指示作成部
512 結果作成部
513 履歴DB
514 処理実行部
515 画像取得部
516 ライト制御部
600 情報処理装置
601 受信手段
602 実行判定手段
603 代理実行手段
604 分配判定手段
605 分配手段
1 Back-end server 2 Server 10 Network 102 Camera 202 Patlite 501 Message receiving unit 502 Result confirmation unit 503 Instruction acquisition unit 504 Judgment unit 505 Device instruction creation unit 506 Status update unit 507 Status reflection unit 508 Server list DB
509 Message transmission unit 510 Request creation unit 511 Instruction creation unit 512 Result creation unit 513 History DB
514 Processing execution unit 515 Image acquisition unit 516 Light control unit 600 Information processing device 601 Information processing device 601 Reception means 602 Execution determination means 603 Proxy execution means 604 Distribution judgment means 605 Distribution means

Claims (9)

依頼元の情報処理装置の処理の代理実行を要求する代理実行要求を受信する受信手段と、
前記受信手段により、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する実行判定手段と、
前記実行判定手段により、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する代理実行手段と、
代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する分配判定手段と、
前記分配判定手段により、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する分配手段と、
を有する情報処理装置。
A receiving means for receiving a proxy execution request requesting proxy execution of the processing of the requesting information processing device, and
When the proxy execution request is received by the receiving means, the execution determination means for determining whether or not a part or all of the processing of the requesting information processing apparatus can be proxy executed, and
When the execution determination means determines that the proxy execution is possible, the proxy execution means for executing the processing of the requesting information processing device and the proxy execution means.
A distribution determination means for determining whether or not processing target information to be processed by proxy can be distributed to a plurality of information processing devices.
When the distribution determination means determines that the information can be distributed, the distribution means that distributes the processing target information to the information processing apparatus that executes the processing target information on behalf of the information processing apparatus.
Information processing device with.
前記実行判定手段により、代理実行不可能と判定された場合には、前記代理実行要求を、前記依頼元の情報処理装置とは異なる他の情報処理装置に転送する請求項1に記載の情報処理装置。 The information processing according to claim 1, wherein when the execution determination means determines that proxy execution is not possible, the proxy execution request is transferred to another information processing device different from the information processing device of the request source. apparatus. 前記実行判定手段により、一部の処理を実行可能と判定された場合には、一部の処理を実行可能であることを示した前記代理実行要求を、前記依頼元の情報処理装置とは異なる他の情報処理装置に転送可能である請求項1または請求項2に記載の情報処理装置。 When it is determined by the execution determination means that some processes can be executed, the proxy execution request indicating that some processes can be executed is different from the information processing device of the request source. The information processing device according to claim 1 or 2, which can be transferred to another information processing device. 前記代理実行要求を転送可能な情報処理装置の性能および状態を示すリストに基づき前記代理実行要求を転送する請求項2または請求項3に記載の情報処理装置。 The information processing device according to claim 2 or 3, wherein the proxy execution request is transferred based on a list showing the performance and state of the information processing device capable of transferring the proxy execution request. 前記実行判定手段により、一部の処理を代理実行可能と判定され、かつ前記分配判定手段により、分配可能と判定された場合には、前記依頼元の情報処理装置の処理を実行するとともに、前記処理対象情報を代理実行する情報処理装置に分配する請求項1から請求項4のいずれか1項に記載の情報処理装置。 When it is determined by the execution determination means that a part of the processing can be executed by proxy and the distribution determination means determines that the distribution is possible, the processing of the information processing apparatus of the requesting source is executed and the above The information processing apparatus according to any one of claims 1 to 4, which distributes information to be processed to an information processing apparatus that executes proxy execution. 前記分配手段により、代理実行する情報処理装置に前記処理対象情報が分配された場合には、分配された情報処理装置から代理処理の処理結果を受信し、当該処理結果を前記依頼元の情報処理装置に送信する請求項1から請求項5のいずれか1項に記載の情報処理装置。 When the processing target information is distributed to the information processing apparatus to be executed by proxy by the distribution means, the processing result of the proxy processing is received from the distributed information processing apparatus, and the processing result is processed by the requester. The information processing device according to any one of claims 1 to 5, which is transmitted to the device. 複数の情報処理装置を含むシステムであって、
処理の代理実行を要求する情報処理装置は、
処理の代理実行を要求する代理実行要求を送信する送信手段を備え、
前記代理実行要求を受信する情報処理装置は、
前記代理実行要求を受信する受信手段と、
前記受信手段により、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する実行判定手段と、
前記実行判定手段により、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する代理実行手段と、
代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する分配判定手段と、
前記分配判定手段により、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する分配手段と、
を有するシステム。
A system that includes multiple information processing devices
An information processing device that requires proxy execution of processing
A transmission means for sending a proxy execution request requesting proxy execution of processing is provided.
The information processing device that receives the proxy execution request is
A receiving means for receiving the proxy execution request and
When the proxy execution request is received by the receiving means, the execution determination means for determining whether or not a part or all of the processing of the requesting information processing apparatus can be proxy executed, and
When the execution determination means determines that the proxy execution is possible, the proxy execution means for executing the processing of the requesting information processing device and the proxy execution means.
A distribution determination means for determining whether or not processing target information to be processed by proxy can be distributed to a plurality of information processing devices.
When the distribution determination means determines that the information can be distributed, the distribution means that distributes the processing target information to the information processing apparatus that executes the processing target information on behalf of the information processing apparatus.
System with.
コンピュータに、
依頼元の情報処理装置の処理の代理実行を要求する代理実行要求を受信する受信ステップと、
前記受信ステップにより、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する実行判定ステップと、
前記実行判定ステップにより、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する代理実行ステップと、
代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する分配判定ステップと、
前記分配判定ステップにより、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する分配ステップと、
を実行させるためのプログラム。
On the computer
A receiving step for receiving a proxy execution request requesting proxy execution of the processing of the requesting information processing device, and
When the proxy execution request is received by the reception step, an execution determination step of determining whether or not a part or all of the processing of the requesting information processing apparatus can be proxy executed is performed.
When it is determined by the execution determination step that the proxy execution is possible, the proxy execution step for executing the process of the requesting information processing device and the proxy execution step
A distribution determination step for determining whether or not the processing target information to be processed by proxy can be distributed to a plurality of information processing devices, and a distribution determination step.
When the distribution determination step determines that the information can be distributed, the distribution step distributes the processing target information to the information processing apparatus that executes the processing target information on behalf of the information processing device.
A program to execute.
情報処理装置の制御方法であって、
依頼元の情報処理装置の処理の代理実行を要求する代理実行要求を受信する受信ステップと、
前記受信ステップにより、前記代理実行要求を受信すると、依頼元の情報処理装置の処理の一部または全部を代理実行可能か否かを判定する実行判定ステップと、
前記実行判定ステップにより、代理実行可能と判定された場合に、前記依頼元の情報処理装置の処理を実行する代理実行ステップと、
代理実行する処理の対象となる処理対象情報を複数の情報処理装置に分配可能か否かを判定する分配判定ステップと、
前記分配判定ステップにより、分配可能と判定された場合に、前記処理対象情報を代理実行する情報処理装置に分配する分配ステップと、
を有する制御方法。
It is a control method for information processing equipment.
A receiving step for receiving a proxy execution request requesting proxy execution of the processing of the requesting information processing device, and
When the proxy execution request is received by the reception step, an execution determination step of determining whether or not a part or all of the processing of the requesting information processing apparatus can be proxy executed is performed.
When it is determined by the execution determination step that the proxy execution is possible, the proxy execution step for executing the process of the requesting information processing device and the proxy execution step
A distribution determination step for determining whether or not the processing target information to be processed by proxy can be distributed to a plurality of information processing devices, and a distribution determination step.
When the distribution determination step determines that the information can be distributed, the distribution step distributes the processing target information to the information processing apparatus that executes the processing target information on behalf of the information processing device.
Control method having.
JP2019059401A 2019-03-26 2019-03-26 Information processing device, system, program and control method Active JP7230632B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019059401A JP7230632B2 (en) 2019-03-26 2019-03-26 Information processing device, system, program and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019059401A JP7230632B2 (en) 2019-03-26 2019-03-26 Information processing device, system, program and control method

Publications (2)

Publication Number Publication Date
JP2020160793A true JP2020160793A (en) 2020-10-01
JP7230632B2 JP7230632B2 (en) 2023-03-01

Family

ID=72643479

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019059401A Active JP7230632B2 (en) 2019-03-26 2019-03-26 Information processing device, system, program and control method

Country Status (1)

Country Link
JP (1) JP7230632B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08278948A (en) * 1995-04-07 1996-10-22 Hitachi Ltd Distributed processing system
JPH09237194A (en) * 1996-03-01 1997-09-09 Mitsubishi Electric Corp Dynamic load distribution method for parallel computer
JP2001209622A (en) * 1999-12-09 2001-08-03 Hewlett Packard Co <Hp> System for managing constitution of data processor
JP2008191787A (en) * 2007-02-01 2008-08-21 Taito Corp Mobile terminal and parallel processing control program
JPWO2013021472A1 (en) * 2011-08-09 2015-03-05 富士通株式会社 Scheduling method and scheduling system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5693405B2 (en) 2011-07-11 2015-04-01 株式会社Nttドコモ Transmission device, communication system, and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08278948A (en) * 1995-04-07 1996-10-22 Hitachi Ltd Distributed processing system
JPH09237194A (en) * 1996-03-01 1997-09-09 Mitsubishi Electric Corp Dynamic load distribution method for parallel computer
JP2001209622A (en) * 1999-12-09 2001-08-03 Hewlett Packard Co <Hp> System for managing constitution of data processor
JP2008191787A (en) * 2007-02-01 2008-08-21 Taito Corp Mobile terminal and parallel processing control program
JPWO2013021472A1 (en) * 2011-08-09 2015-03-05 富士通株式会社 Scheduling method and scheduling system

Also Published As

Publication number Publication date
JP7230632B2 (en) 2023-03-01

Similar Documents

Publication Publication Date Title
US10594591B2 (en) Information processing apparatus, method and non-transitory computer-readable storage medium
JP6378057B2 (en) Connection control device, connection control method, connection control system, and computer program
JP2007066161A (en) Cache system
KR20180073154A (en) Apparatus and method for logical grouping method of iot connected client nodes using client identifier
US20120072607A1 (en) Communication apparatus, system, method, and recording medium of program
JP2010026814A (en) Resource migration system, resource migration method, information processor, and computer program
US11394800B2 (en) Systems and methods for remote network topology discovery
US10761888B2 (en) Method for deploying task to node based on execution completion point, task deployment apparatus and storage medium
JP5845877B2 (en) Information processing apparatus, data control method, and data control program
CN113162970A (en) Message routing method, device, equipment and medium based on publish/subscribe model
JP2005070987A (en) Node to be used in file sharing system, file storage method to be used in file sharing system, and file storing program
JP5808700B2 (en) Communication control device, communication control system, virtualization server management device, switch device, and communication control method
JP6904011B2 (en) Servers, terminals, control systems, control methods and programs
CN109587185B (en) Cloud storage system and object processing method in cloud storage system
JP5526780B2 (en) Load distribution system, service processing server, load distribution method, and load distribution program
JP5549189B2 (en) Virtual machine management apparatus, virtual machine management method, and virtual machine management program
JP7230632B2 (en) Information processing device, system, program and control method
EP3685567B1 (en) Load shedding of traffic based on current load state of target capacity
KR101883671B1 (en) Method and management server for dtitributing node
JP2011141695A (en) Message processing apparatus and message processing method
JP2004064284A (en) Traffic control method for p2p network and device, program and recording medium
CN110958182B (en) Communication method and related equipment
JP5488029B2 (en) Distributed processing system, distributed processing method, and program
JP2005339079A (en) Processing proxy method for database management system
JP2022048200A (en) Device for acquiring information, electronic apparatus, storage medium, and computer program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221221

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230130

R151 Written notification of patent or utility model registration

Ref document number: 7230632

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151