JP2023130943A - Information processing device, distributed processing system, and program - Google Patents

Information processing device, distributed processing system, and program Download PDF

Info

Publication number
JP2023130943A
JP2023130943A JP2022035543A JP2022035543A JP2023130943A JP 2023130943 A JP2023130943 A JP 2023130943A JP 2022035543 A JP2022035543 A JP 2022035543A JP 2022035543 A JP2022035543 A JP 2022035543A JP 2023130943 A JP2023130943 A JP 2023130943A
Authority
JP
Japan
Prior art keywords
processing
server
distributed
identification information
servers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022035543A
Other languages
Japanese (ja)
Inventor
日史 佐々木
Hirofumi Sasaki
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fujifilm Business Innovation 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 Fujifilm Business Innovation Corp filed Critical Fujifilm Business Innovation Corp
Priority to JP2022035543A priority Critical patent/JP2023130943A/en
Priority to US17/873,163 priority patent/US20230291859A1/en
Publication of JP2023130943A publication Critical patent/JP2023130943A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32609Fault detection or counter-measures, e.g. original mis-positioned, shortage of paper
    • H04N1/32646Counter-measures
    • H04N1/32678Performing substitution, e.g. substitute reception or substituting a corrupted line of data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/0097Storage of instructions or parameters, e.g. customised instructions or different parameters for different user IDs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32609Fault detection or counter-measures, e.g. original mis-positioned, shortage of paper
    • H04N1/32646Counter-measures
    • H04N1/32651Indicating or reporting
    • H04N1/32662Indicating or reporting remotely, e.g. to the transmitter from the receiver

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

To provide a system in which distributed processing is executed by a plurality of servers, and when a failure occurs in one of the servers, can acquire a result of processing distributed to the server.SOLUTION: An information processing device 100 issues, to cloud servers 200 that execute distributed processing, an instruction to execute the processing, acquires, from the individual cloud servers 200, results of the processing distributed to the cloud servers 200 in the distributed processing, when the processing results are not acquired and a predetermined condition is satisfied for individual pieces of processing related to the distributed processing, issues a notification indicating that the processing results are not acquired to the cloud servers 200 that execute the distributed processing, and after the notification, acquires the processing result from the cloud server 200, of the cloud servers 200 that execute the distributed processing, which is different from the cloud server 200 that is distributed with the processing related to the processing result not acquired when the condition is satisfied.SELECTED DRAWING: Figure 5

Description

本発明は、情報処理装置、分散処理システムおよびプログラムに関する。 The present invention relates to an information processing device, a distributed processing system, and a program.

データ処理において、複数の外部サーバを用いた分散処理が行われる場合、分散して実行される処理を管理するための仕組みを用意する必要がある。分散処理を管理するためのサーバを用いない場合、例えば、サーバ間やサーバと端末装置との間で送受信されるデータにジョブの識別情報を付加し、この識別情報に基づいて端末装置において処理を管理すること等が行われる。 In data processing, when distributed processing is performed using multiple external servers, it is necessary to prepare a mechanism for managing the distributed processing. When a server is not used to manage distributed processing, for example, job identification information is added to data sent and received between servers or between a server and a terminal device, and processing is performed on the terminal device based on this identification information. Management, etc. will be carried out.

特許文献1には、複数のクライアントPCと印刷装置とを備えたシステムが開示されている。同システムにおいて、一のクライアントPCは、印刷データを複数の分割データに分割し、それに分割情報及びジョブ識別情報を付加して分散委託データを生成し他の複数のクライアントPCに分配する。他のクライアントPCは、受信した分散委託データに含まれる分割データをラスタライズし、ラスタライズ後の分割データと、分割情報と、ジョブ情報とを含む分割印刷ジョブを生成し印刷装置に送信する。印刷装置は、受信した分割印刷ジョブに対応付けて分割印刷ジョブレコードをスプールに登録し、スプールに登録されている分割印刷ジョブのうちで、印刷データに対応する全ての分割印刷ジョブが集まっている分割印刷ジョブを、分割情報に示される印刷データ内での順番で印刷する。 Patent Document 1 discloses a system including a plurality of client PCs and a printing device. In this system, one client PC divides print data into a plurality of divided data, adds division information and job identification information to the divided data, generates distributed consignment data, and distributes the data to a plurality of other client PCs. The other client PC rasterizes the divided data included in the received distributed entrustment data, generates a divided print job including the rasterized divided data, divided information, and job information, and sends it to the printing device. The printing device registers a divided print job record in the spool in association with the received divided print job, and collects all divided print jobs corresponding to the print data among the divided print jobs registered in the spool. Print the divided print job in the order within the print data indicated by the division information.

特開2013-77129号公報Japanese Patent Application Publication No. 2013-77129

複数のサーバにより分散処理が実行されるシステムにおいて、何れかのサーバで障害が発生し、そのサーバによる処理結果が得られない場合、全体の処理を完了することができない。 In a system in which distributed processing is executed by a plurality of servers, if a failure occurs in one of the servers and a processing result by that server cannot be obtained, the entire processing cannot be completed.

本発明は、複数のサーバにより分散処理が実行されるシステムにおいて、何れかのサーバで障害が発生した場合に、そのサーバに振り分けられた処理の処理結果を取得可能とすることを目的とする。 An object of the present invention is to enable, in a system where distributed processing is executed by a plurality of servers, when a failure occurs in any server, to obtain the processing results of the processing distributed to that server.

請求項1に係る本発明は、
プロセッサを備え、
前記プロセッサは、
分散処理を実行するサーバに対して処理の実行指示を行い、
個々の前記サーバから前記分散処理における当該サーバに振り分けられた処理の処理結果を取得し、
前記分散処理に係る個々の処理に関して、処理結果が取得されずに予め定められた条件を満足した場合、当該分散処理を実行する各サーバに対して当該処理結果を取得していないことを示す通知を行い、
前記通知の後、前記分散処理を実行するサーバのうち、前記条件を満足した際に取得されなかった前記処理結果に係る処理が振り分けられたサーバとは異なるサーバから当該処理結果を取得することを特徴とする、情報処理装置である。
請求項2に係る本発明は、
前記プロセッサは、
個々の前記サーバから前記処理結果の送信先を示す装置識別情報を取得し、
取得した前記装置識別情報が自装置の装置識別情報である場合に、当該装置識別情報の送信元であるサーバから前記処理結果を取得することを特徴とする、請求項1に記載の情報処理装置である。
請求項3に係る本発明は、
前記プロセッサは、
前記サーバとの間で前記処理結果を取得するための通信を開始する際に、各々の当該サーバから前記装置識別情報を取得して自装置の装置識別情報か否かを判断し、
各々の前記サーバから前記処理結果を取得する際に、再度、前記装置識別情報を取得して自装置の装置識別情報か否かを判断することを特徴とする、請求項2に記載の情報処理装置である。
請求項4に係る本発明は、
前記プロセッサは、前記通知の後、前記異なるサーバから前記処理結果を取得する際に、前記装置識別情報を取得して自装置の装置識別情報か否かを判断することを特徴とする、請求項3に記載の情報処理装置である。
請求項5に係る本発明は、
前記プロセッサは、分散処理を実行するサーバに対して前記処理の実行指示と共に自装置の装置識別情報を提供することを特徴とする、請求項2に記載の情報処理装置である。
請求項6に係る本発明は、
前記プロセッサは、前記分散処理における全ての処理結果を取得し、当該処理結果に基づく処理を実行することを特徴とする、請求項1に記載の情報処理装置である。
請求項7に係る本発明は、
前記プロセッサは、前記分散処理における処理結果のうち、一または複数の処理結果に関して、
前記通知を予め定められた回数行っても取得されない場合、前記分散処理の処理結果に基づく処理を実行せず、予め定められたエラー処理を実行することを特徴とする、請求項6に記載の情報処理装置である。
請求項8に係る本発明は、
端末装置からの指示に応じて複数のサーバによる分散処理を実行し、処理結果を当該端末装置に提供する分散処理システムにおいて、
前記複数のサーバにおける各サーバは、
前記端末装置から処理の実行指示を取得し、
前記実行指示に応じて前記分散処理における自サーバに振り分けられた処理を実行し、
実行した前記処理の識別情報と処理結果の送信先を示す装置識別情報とを前記端末装置に送信し、当該端末装置からの応答に応じて、当該端末装置へ処理結果を送信し、
前記端末装置から前記分散処理における個々の処理の何れかに関して処理結果を取得していないことを示す通知を受け付け、自サーバが当該通知に係る処理の少なくとも一つが振り分けられた場合に、新たに振り分けられた当該処理を実行し、当該端末装置へ処理結果を送信することを特徴とする、分散処理システムである。
請求項9に係る本発明は、
前記複数のサーバにおける各サーバは、
前記分散処理に係る全ての処理の対象データを予め保持し、
保持している前記対象データから自サーバに振り分けられた処理の対象データを用いて当該処理を実行することを特徴とする、請求項8に記載の分散処理システムである。
請求項10に係る本発明は、
前記サーバに対する前記分散処理の振り分けを管理する管理サーバをさらに備え、
前記管理サーバは、前記複数のサーバにおける各サーバが前記通知を受け付けた場合に、当該通知により特定される処理を、当該処理が振り分けられているサーバとは異なるサーバに振り分けることを特徴とする、請求項9に記載の分散処理システムである。
請求項11に係る本発明は、
前記複数のサーバにおける各サーバは、前記通知を受け付けると、他の前記サーバと通信を行って、当該通知により特定される処理を実行するサーバを決定することを特徴とする、請求項9に記載の分散処理システムである。
請求項12に係る本発明は、
前記複数のサーバにおける各サーバは
前記端末装置との間で前記処理結果を取得するための通信を開始する際に、前記装置識別情報を当該端末装置へ送信し、
前記端末装置へ前記処理結果を送信する際に、再度、前記装置識別情報を送信することを特徴とする、請求項8に記載の分散処理システムである。
請求項13に係る本発明は、
前記複数のサーバにおける各サーバは、前記処理結果を前記端末装置へ送信する際に、当該処理結果と共に前記装置識別情報を送信することを特徴とする、請求項12に記載の分散処理システムである。
請求項14に係る本発明は、
コンピュータに、
分散処理を実行するサーバに対して処理の実行指示および自装置の装置識別情報を提供する機能と、
個々の前記サーバから処理の識別情報および自装置の前記装置識別情報を受け付けて、当該装置識別情報の送信元であるサーバから当該装置識別情報と共に取得した当該処理の識別情報により識別される処理の処理結果を取得する機能と、
前記分散処理に係る個々の処理に関して、処理結果が取得されずに予め定められた条件を満足した場合、当該分散処理を実行する各サーバに対して当該処理結果を取得していないことを示す通知を行う機能と、
前記通知の後、前記分散処理を実行するサーバのうち何れかのサーバから自装置の前記装置識別情報を受け付けて、前記条件を満足した際に取得されなかった前記処理結果を取得する機能と、
を実現させることを特徴とする、プログラムである。
The present invention according to claim 1 includes:
Equipped with a processor,
The processor includes:
Instructs the server that executes distributed processing to execute the process,
Obtaining the processing results of the processing distributed to the server in the distributed processing from each of the servers,
When a predetermined condition is satisfied with respect to individual processing related to the distributed processing without obtaining processing results, a notification is sent to each server that executes the distributed processing indicating that the processing results have not been obtained. and
After the notification, among the servers that execute the distributed processing, the processing result is acquired from a server different from the server to which the processing related to the processing result that was not obtained when the condition was satisfied is distributed. This is an information processing device.
The present invention according to claim 2 includes:
The processor includes:
obtaining device identification information indicating a destination of the processing result from each of the servers;
The information processing device according to claim 1, characterized in that, when the acquired device identification information is the device identification information of the own device, the processing result is acquired from a server that is a source of the device identification information. It is.
The present invention according to claim 3 includes:
The processor includes:
When starting communication to obtain the processing results with the servers, obtain the device identification information from each of the servers and determine whether it is the device identification information of the own device,
Information processing according to claim 2, characterized in that when acquiring the processing result from each of the servers, the device identification information is acquired again to determine whether it is the device identification information of the own device. It is a device.
The present invention according to claim 4 includes:
The processor, when acquiring the processing result from the different server after the notification, acquires the device identification information and determines whether it is the device identification information of the own device. 3.
The present invention according to claim 5 includes:
3. The information processing apparatus according to claim 2, wherein the processor provides a server that executes distributed processing with its own device identification information together with an instruction to execute the process.
The present invention according to claim 6 includes:
The information processing apparatus according to claim 1, wherein the processor acquires all processing results in the distributed processing and executes processing based on the processing results.
The present invention according to claim 7 includes:
The processor may perform one or more processing results among the processing results in the distributed processing,
7. If the notification is not obtained even after the notification is performed a predetermined number of times, the process based on the processing result of the distributed processing is not executed, and a predetermined error process is executed. It is an information processing device.
The present invention according to claim 8 includes:
In a distributed processing system that executes distributed processing by multiple servers in response to instructions from a terminal device and provides processing results to the terminal device,
Each server in the plurality of servers is
Obtaining a process execution instruction from the terminal device,
Executing the process distributed to the own server in the distributed processing in accordance with the execution instruction,
transmitting identification information of the executed processing and device identification information indicating a destination of the processing result to the terminal device, and transmitting the processing result to the terminal device in response to a response from the terminal device;
If a notification indicating that processing results have not been obtained for any of the individual processes in the distributed processing is received from the terminal device, and at least one of the processes related to the notification has been allocated, the own server will perform a new allocation. A distributed processing system is characterized in that the processing executed in the distributed processing system is executed and the processing results are transmitted to the terminal device.
The present invention according to claim 9 includes:
Each server in the plurality of servers is
Pre-holding target data for all processing related to the distributed processing,
9. The distributed processing system according to claim 8, wherein the processing is executed using target data for processing distributed to the own server from among the held target data.
The present invention according to claim 10 includes:
further comprising a management server that manages distribution of the distributed processing to the servers,
The management server is characterized in that, when each of the plurality of servers receives the notification, the management server distributes the process specified by the notification to a server different from the server to which the process is distributed. A distributed processing system according to claim 9.
The present invention according to claim 11 includes:
According to claim 9, each server among the plurality of servers, upon receiving the notification, communicates with the other servers to determine a server to execute the process specified by the notification. It is a distributed processing system.
The present invention according to claim 12 includes:
Each server among the plurality of servers transmits the device identification information to the terminal device when starting communication to obtain the processing result with the terminal device,
9. The distributed processing system according to claim 8, wherein when transmitting the processing result to the terminal device, the device identification information is transmitted again.
The present invention according to claim 13 includes:
13. The distributed processing system according to claim 12, wherein each server in the plurality of servers transmits the device identification information together with the processing result when transmitting the processing result to the terminal device. .
The present invention according to claim 14 includes:
to the computer,
a function that provides processing execution instructions and device identification information of its own device to a server that executes distributed processing;
The processing identification information and the device identification information of the own device are received from each of the servers, and the processing identified by the processing identification information acquired together with the device identification information from the server that is the source of the device identification information. A function to obtain processing results,
When a predetermined condition is satisfied with respect to individual processing related to the distributed processing without obtaining processing results, a notification is sent to each server that executes the distributed processing indicating that the processing results have not been obtained. and the ability to
After the notification, a function of receiving the device identification information of the own device from one of the servers that executes the distributed processing, and obtaining the processing result that was not obtained when the condition was satisfied;
This is a program that is characterized by realizing the following.

請求項1の発明によれば、処理結果の不取得時に通知を行わない構成と異なり、何れかのサーバで障害が発生した場合にも、そのサーバに振り分けられた処理の処理結果を取得することができる。
請求項2の発明によれば、処理結果のみを取得する構成と異なり、サーバによる処理結果の送信先が自装置か否かを確認することができる。
請求項3の発明によれば、通信開始時にのみ装置識別情報を取得する構成と異なり、サーバが複数の端末装置に係る分散処理を実行する場合に、処理結果ごとに送信先が自装置か否かを確認することができる。
請求項4の発明によれば、通信開始時にのみ装置識別情報を取得する構成と異なり、情報処理装置からの通知により取得する処理結果に関しても送信先が自装置か否かを確認することができる。
請求項5の発明によれば、自装置以外から装置識別情報を提供する構成と比較して、実行しようとする分散処理と処理結果の送信先との関連付けが容易になる。
請求項6の発明によれば、分散処理の処理結果の取得のみを行う構成と比較して、処理結果に基づいて他の処理を実行することができる。
請求項7の発明によれば、単に予め定められた規則や方針に基づいて画像を処理する構成と比較して、画像の各部の顕著性を反映させて画像における各小領域の重要性を特定することができる。
請求項8の発明によれば、各サーバが最初に振り分けられた処理のみを実行する構成と異なり、何れかのサーバで障害が発生した場合にも、そのサーバに振り分けられた処理を実行することができる。
請求項9の発明によれば、各サーバが振り分けられた処理の対象データのみを保持する構成と異なり、通知後に振り分けられた処理を直ちに実行することができる。
請求項10の発明によれば、各サーバが最初に振り分けられた処理のみを実行する構成と異なり、何れかのサーバで障害が発生した場合に、管理サーバにより該当の処理を他のサーバに振り分けることができる。
請求項11の発明によれば、各サーバが最初に振り分けられた処理のみを実行する構成と異なり、何れかのサーバで障害が発生した場合に、各サーバ間の通信を経て該当の処理を他のサーバに振り分けることができる。
請求項12の発明によれば、通信開始時にのみ装置識別情報を送信する構成と異なり、クラウドサーバが複数の端末装置に係る分散処理を実行する場合に、処理結果ごとに送信先を確認することができる。
請求項13の発明によれば、装置識別情報を送信した後に処理結果を送信する構成と比較して、通信に要する時間を短縮することができる。
請求項14の発明によれば、本発明のプログラムをインストールしたコンピュータにおいて、処理結果の不取得時に通知を行わない構成と異なり、何れかのサーバで障害が発生した場合にも、そのサーバに振り分けられた処理の処理結果を取得することができる。
According to the invention of claim 1, unlike the configuration in which notification is not performed when processing results are not obtained, even if a failure occurs in any server, the processing results of the processing distributed to that server can be obtained. I can do it.
According to the invention of claim 2, unlike the configuration in which only the processing results are acquired, it is possible to confirm whether or not the destination of the processing results by the server is the own device.
According to the invention of claim 3, unlike a configuration in which device identification information is acquired only at the start of communication, when a server executes distributed processing related to a plurality of terminal devices, it is determined whether the destination is the own device or not for each processing result. You can check whether
According to the invention of claim 4, unlike the configuration in which device identification information is acquired only at the start of communication, it is possible to confirm whether or not the destination is the own device regarding processing results acquired by notification from the information processing device. .
According to the invention of claim 5, it becomes easier to associate the distributed processing to be executed with the destination of the processing results, compared to a configuration in which device identification information is provided from a device other than the device itself.
According to the sixth aspect of the invention, other processing can be executed based on the processing results, compared to a configuration in which only the processing results of the distributed processing are acquired.
According to the invention of claim 7, the importance of each small area in an image is identified by reflecting the salience of each part of the image, compared to a configuration that processes an image simply based on a predetermined rule or policy. can do.
According to the invention of claim 8, unlike a configuration in which each server executes only the process to which it is initially allocated, even if a failure occurs in any server, the process allocated to that server can be executed. I can do it.
According to the invention of claim 9, unlike the configuration in which each server holds only the target data of the assigned processing, it is possible to immediately execute the assigned processing after notification.
According to the invention of claim 10, unlike the configuration in which each server executes only the process to which it is initially assigned, when a failure occurs in any server, the management server distributes the corresponding process to another server. be able to.
According to the invention of claim 11, unlike the configuration in which each server executes only the first assigned process, when a failure occurs in any server, the corresponding process is executed by another through communication between each server. can be distributed to different servers.
According to the invention of claim 12, unlike the configuration in which device identification information is transmitted only at the start of communication, when the cloud server executes distributed processing related to a plurality of terminal devices, the destination of the transmission can be confirmed for each processing result. I can do it.
According to the thirteenth aspect of the invention, the time required for communication can be reduced compared to a configuration in which the processing result is transmitted after transmitting the device identification information.
According to the invention of claim 14, unlike a configuration in which a computer installed with the program of the present invention does not notify when processing results are not obtained, even if a failure occurs in any server, the processing results are distributed to that server. It is possible to obtain the processing results of the processed processing.

本実施形態が適用されるシステムの構成例を示す図である。1 is a diagram illustrating an example configuration of a system to which this embodiment is applied. 本実施形態が適用される画像形成装置の構成を示す図である。1 is a diagram showing the configuration of an image forming apparatus to which this embodiment is applied. クラウドサーバから画像形成装置への画像データの送信手順を示す図である。FIG. 3 is a diagram illustrating a procedure for transmitting image data from a cloud server to an image forming apparatus. 画像データの送信中に一のクラウドサーバにおいて障害が発生し、画像データの送信が中断した様子を示す図である。FIG. 3 is a diagram illustrating a situation in which a failure occurs in one cloud server during image data transmission, and the image data transmission is interrupted. クラウドサーバに障害が発生した後の画像形成装置およびクラウドサーバの動作を示す図である。FIG. 3 is a diagram illustrating operations of the image forming apparatus and the cloud server after a failure occurs in the cloud server. クラウドサーバの動作を示すフローチャートである。It is a flowchart showing the operation of the cloud server. 画像形成装置の動作を示すフローチャートである。3 is a flowchart showing the operation of the image forming apparatus.

以下、添付図面を参照して、本発明の実施形態について詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

<システム構成>
図1は、本実施形態が適用されるシステムの構成例を示す図である。本実施形態のシステムは、画像形成装置100と、クラウドサーバ200とを備える。図1には、2つの画像形成装置100と、3つのクラウドサーバ200とが示されているが、各々は、図示の数に限定されない。各画像形成装置100を区別する場合、図1に示すように、画像形成装置100A、100B等と添え字を付して記す。同様に、各クラウドサーバ200を区別する場合、図1に示すように、クラウドサーバ200A、200B、200C等と添え字を付して記す。
<System configuration>
FIG. 1 is a diagram showing an example of the configuration of a system to which this embodiment is applied. The system of this embodiment includes an image forming apparatus 100 and a cloud server 200. Although two image forming apparatuses 100 and three cloud servers 200 are shown in FIG. 1, the number of cloud servers 200 is not limited to that shown in the figure. When distinguishing each image forming apparatus 100, as shown in FIG. 1, the image forming apparatuses 100A, 100B, etc. are written with subscripts. Similarly, when distinguishing each cloud server 200, as shown in FIG. 1, they are written with subscripts such as cloud servers 200A, 200B, 200C, etc.

画像形成装置100は、クラウドサーバ200から処理対象の画像データを取得し、用紙等の媒体に対して画像形成処理を行い、出力する。画像形成装置100は、情報処理装置の一例である。クラウドサーバ200は、インターネット上のいわゆるクラウド環境に構築されたサーバであり、画像形成装置100により出力される画像データに対する画像処理を行う。クラウドサーバ200は、例えば、画像のラスタライズ、画像の圧縮、二値化等の処理を行う。 The image forming apparatus 100 acquires image data to be processed from the cloud server 200, performs image forming processing on a medium such as paper, and outputs the image data. Image forming apparatus 100 is an example of an information processing apparatus. The cloud server 200 is a server built in a so-called cloud environment on the Internet, and performs image processing on image data output by the image forming apparatus 100. The cloud server 200 performs processing such as image rasterization, image compression, and binarization, for example.

本実施形態では、図1に示すように、複数のクラウドサーバ200(図示の例では、クラウドサーバ200A、200B、200C)の分散処理により画像処理が行われる。画像形成装置100は、複数のクラウドサーバ200に分散して行われた画像処理の結果のデータを各クラウドサーバ200から取得し、統合して印刷出力する。また、図1に示すように、各クラウドサーバ200は、複数の画像形成装置100(図示の例では、画像形成装置100A、100B)において出力される画像データの画像処理を並行して行っても良い。 In this embodiment, as shown in FIG. 1, image processing is performed by distributed processing of a plurality of cloud servers 200 (in the illustrated example, cloud servers 200A, 200B, and 200C). The image forming apparatus 100 acquires data as a result of image processing distributed among the plurality of cloud servers 200 from each cloud server 200, integrates the data, and prints out the data. Further, as shown in FIG. 1, each cloud server 200 may perform image processing of image data output from a plurality of image forming apparatuses 100 (in the illustrated example, image forming apparatuses 100A and 100B) in parallel. good.

<画像形成装置100の構成>
図2は、本実施形態が適用される画像形成装置100の構成を示す図である。画像形成装置100は、制御部110と、記憶部120と、操作部130と、表示部140と、画像読み取り部150と、画像形成部160と、通信部170と、画像処理部180とを備える。これらの各機能部は、バス101に接続され、このバス101を介してデータの授受を行う。
<Configuration of image forming apparatus 100>
FIG. 2 is a diagram showing the configuration of an image forming apparatus 100 to which this embodiment is applied. The image forming apparatus 100 includes a control section 110, a storage section 120, an operation section 130, a display section 140, an image reading section 150, an image forming section 160, a communication section 170, and an image processing section 180. . Each of these functional units is connected to a bus 101 and exchanges data via this bus 101.

制御部110は、画像形成装置100における上記の各機能部を制御する。また、制御部110は、各種のデータ処理を実行する機能部である。制御部110は、演算手段であるCPU(Central Processing Unit)111と、記憶手段であるRAM(Random Access Memory)112およびROM(Read Only Memory)113とを備える。RAM112は、主記憶装置(メイン・メモリ)であり、CPU111が演算処理を行う際の作業用メモリとして用いられる。ROM113にはプログラムや予め用意された設定値等のデータが保持されており、CPU111はROM113から直接プログラムやデータを読み込んで処理を実行する。また、プログラムやデータは、記憶部120にも記憶される。CPU111は記憶部120に格納されたプログラムをRAM112に読み込んで実行する。 The control unit 110 controls each of the above-mentioned functional units in the image forming apparatus 100. Further, the control unit 110 is a functional unit that executes various data processing. The control unit 110 includes a CPU (Central Processing Unit) 111 which is a calculation means, and a RAM (Random Access Memory) 112 and a ROM (Read Only Memory) 113 which are storage means. The RAM 112 is a main memory, and is used as a working memory when the CPU 111 performs arithmetic processing. The ROM 113 stores programs and data such as pre-prepared setting values, and the CPU 111 directly reads programs and data from the ROM 113 and executes processing. Further, programs and data are also stored in the storage unit 120. The CPU 111 loads the program stored in the storage unit 120 into the RAM 112 and executes it.

本実施形態では、制御部110のCPU111がプログラムを読み込んで実行することにより、後述する各種の機能を実現する。本実施形態において実現される機能には、装置IDの送信、装置IDを含む各種IDの受信および確認、処理対象のデータの受信等が含まれる。 In this embodiment, the CPU 111 of the control unit 110 reads and executes a program to realize various functions described below. The functions realized in this embodiment include transmission of a device ID, reception and confirmation of various IDs including the device ID, reception of data to be processed, and the like.

記憶部120は、上記のようにCPU111が実行するためのプログラムやデータを記憶する他、画像読み取り部150により読み取った画像のデータ等、各種の動作により生成された種々のデータを記憶する機能部である。記憶部120は、例えば、磁気ディスク装置やSSD(Solid State Drive)等の記憶装置により実現される。 The storage unit 120 is a functional unit that stores programs and data to be executed by the CPU 111 as described above, as well as various data generated by various operations, such as image data read by the image reading unit 150. It is. The storage unit 120 is realized by, for example, a storage device such as a magnetic disk device or a solid state drive (SSD).

操作部130は、ユーザの操作を受け付ける機能部である。操作部130は、例えば、ハードウェアキーや、指等で押圧または触れた位置に応じた制御信号を出力するタッチセンサ等により構成される。タッチセンサと表示部140を構成する液晶ディスプレイとを組み合わせたタッチパネルとして構成しても良い。 The operation unit 130 is a functional unit that receives user operations. The operation unit 130 includes, for example, a hardware key, a touch sensor that outputs a control signal according to a position pressed or touched by a finger, or the like. It may be configured as a touch panel that combines a touch sensor and a liquid crystal display that constitutes the display section 140.

表示部140は、ユーザに各種の情報を提示する情報画像、読み取りや出力等の処理対象となる画像のプレビュー画像、ユーザが操作を行うための操作画像等を表示する機能部である。表示部140は、例えば、液晶ディスプレイにより構成される。上記の操作部130と表示部140とを組み合わせて、ユーザが画像形成装置100に対して情報の入出力を行うためのユーザインターフェイス手段として用い得る。 The display unit 140 is a functional unit that displays information images that present various information to the user, preview images of images to be processed such as reading and output, and operation images for the user to perform operations. The display unit 140 is configured by, for example, a liquid crystal display. The above-described operation unit 130 and display unit 140 can be combined and used as a user interface means for a user to input and output information to and from the image forming apparatus 100.

画像読み取り部150は、原稿上の画像を光学的に読み取る機能部である。画像の読み取り方式としては、例えば、光源から原稿に照射した光に対する反射光をレンズで縮小してCCD(Charge Coupled Devices)で受光するCCD方式や、LED(Light Emitting Diode)光源から原稿に順に照射した光に対する反射光をCIS(Contact Image Sensor)で受光するCIS方式等が用いられる。 The image reading unit 150 is a functional unit that optically reads an image on a document. Image reading methods include, for example, the CCD method, in which the reflected light from the light irradiated onto the original from a light source is reduced by a lens and received by a CCD (Charge Coupled Devices), and the CCD method, in which the light is received by a CCD (Charge Coupled Devices), or the light emitting diode (LED) method, in which the light is sequentially irradiated onto the original from a light source. A CIS method or the like is used in which a CIS (Contact Image Sensor) receives reflected light from the reflected light.

画像形成部160は、用紙等の記録材に対して、画像形成材を用いて画像データに基づく画像を形成する機能部である。記録材に画像を形成する方式としては、例えば、画像形成材としてトナーを用い、感光体に付着させたトナーを記録材に転写して像を形成する電子写真方式が用いられる。 The image forming unit 160 is a functional unit that forms an image based on image data using an image forming material on a recording material such as paper. As a method for forming an image on a recording material, for example, an electrophotographic method is used in which toner is used as an image forming material and the toner adhered to a photoreceptor is transferred to the recording material to form an image.

通信部170は、外部装置との間で命令やデータを送受信する機能部である。通信部170としては、外部装置との通信方式に応じたインターフェイスが用いられる。外部装置との接続は、ネットワークを介して行っても良いし、直接接続により行っても良い。通信回線は、有線回線であっても無線回線であっても良い。 The communication unit 170 is a functional unit that transmits and receives commands and data to and from external devices. As the communication unit 170, an interface according to a communication method with an external device is used. Connection with an external device may be made via a network or may be made by direct connection. The communication line may be a wired line or a wireless line.

画像処理部180は、演算手段であるプロセッサと作業用メモリとを備え、画像データが表す画像に色補正や階調補正等の画像処理を施す機能部である。なお、プロセッサとして制御部110のCPU111を、作業用メモリとして制御部110のRAM112を、それぞれ兼用しても良い。本実施形態では、画像データに対して行われる画像処理の少なくとも一部がクラウドサーバ200により行われる。画像処理部180は、クラウドサーバ200において行われない画像処理であって、画像形成装置100による出力の際に適用するか否かが決定される処理や設定の変更が行われ得る処理を実行する。 The image processing unit 180 is a functional unit that includes a processor as a calculation means and a working memory, and performs image processing such as color correction and gradation correction on an image represented by image data. Note that the CPU 111 of the control unit 110 may be used as a processor, and the RAM 112 of the control unit 110 may be used as a working memory. In this embodiment, at least part of the image processing performed on image data is performed by the cloud server 200. The image processing unit 180 executes image processing that is not performed in the cloud server 200 and that determines whether or not to be applied when outputting by the image forming apparatus 100 or that may change settings. .

<画像データの送信手順>
図3は、クラウドサーバ200から画像形成装置100への画像データの送信手順を示す図である。図3には、一つの画像形成装置100が、二つのクラウドサーバ200A、200Bから画像データを取得する例が示されている。ここで、分散処理は、処理対象のデータを、予め定められたデータブロックごとに各クラウドサーバ200A、200Bに振り分けて行われる。データブロックは、処理対象のデータの種類や、クラウドサーバ200A、200Bおよび画像形成装置100の処理能力、通信速度等に応じて設定し得るが、本実施形態では、例えば、データブロックの単位を1ページ分の画像データとしても良い。図示の例では、3ページ分の画像データが送受信され、第1ページおよび第3ページの画像処理をクラウドサーバ200Aが行い、第2ページの画像処理をクラウドサーバ200Bが行うものとする。
<Procedure for sending image data>
FIG. 3 is a diagram showing a procedure for transmitting image data from cloud server 200 to image forming apparatus 100. FIG. 3 shows an example in which one image forming apparatus 100 acquires image data from two cloud servers 200A and 200B. Here, the distributed processing is performed by distributing the data to be processed to each of the cloud servers 200A and 200B for each predetermined data block. The data block can be set according to the type of data to be processed, the processing capacity, communication speed, etc. of the cloud servers 200A, 200B and the image forming apparatus 100, but in this embodiment, for example, the unit of the data block is 1. It may also be image data for pages. In the illustrated example, three pages of image data are transmitted and received, the cloud server 200A performs image processing on the first page and the third page, and the cloud server 200B performs image processing on the second page.

事前の動作として、各クラウドサーバ200A、200Bには、画像形成装置100の出力処理の単位(以下、「ジョブ」と呼ぶ)における処理対象の画像データおよび画像処理における設定情報が予め与えられている。一方、各クラウドサーバ200A、200Bには、分散処理における処理対象の画像データの振り分けに関わらず、ジョブにおける画像データの全てが与えられるものとする。各クラウドサーバ200A、200Bは、取得したジョブに係る全ての画像データのうち、自サーバに割り当てられた画像データに対する画像処理を行うと共に、処理結果の画像データを画像形成装置100へ送信する。各クラウドサーバ200A、200Bに対する画像データや設定情報の提供、分散処理における画像データの振り分けは、例えば、クラウドサーバ200とは別に設けられた管理サーバ(図示せず)により行われる。 As a preliminary operation, each cloud server 200A, 200B is given in advance image data to be processed and setting information for image processing in a unit of output processing (hereinafter referred to as a "job") of the image forming apparatus 100. . On the other hand, it is assumed that all image data in a job is provided to each cloud server 200A, 200B, regardless of the distribution of image data to be processed in distributed processing. Each of the cloud servers 200A and 200B performs image processing on the image data assigned to the server itself among all the image data related to the acquired job, and transmits the image data resulting from the processing to the image forming apparatus 100. Provision of image data and setting information to each cloud server 200A, 200B and distribution of image data in distributed processing are performed by, for example, a management server (not shown) provided separately from the cloud server 200.

図3に示す例において、画像形成装置100は、ジョブの実行に際し、クラウドサーバ200A、200Bから画像処理の結果としてページごとの画像データを取得する。画像データの取得は、下記の手順で行われる。以下の説明で符号(a)~(k)は、図3においてクラウドサーバ200A、200Bと画像形成装置100との間で行われるデータ交換を表す矢印に付された符号(a)~(k)に対応している。 In the example shown in FIG. 3, the image forming apparatus 100 acquires image data for each page as a result of image processing from the cloud servers 200A and 200B when executing a job. Image data is acquired using the following procedure. In the following explanation, the symbols (a) to (k) are the symbols (a) to (k) attached to the arrows representing data exchange performed between the cloud servers 200A, 200B and the image forming apparatus 100 in FIG. It corresponds to

画像形成装置100は、まず、ジョブの実行指示および装置IDをクラウドサーバ200Aへ送信する(a)。ここで、ジョブの実行指示は、画像形成装置100が印刷処理を開始するために、クラウドサーバ200に画像処理および処理された画像データの送信を実行させるための命令である。装置IDは、画像形成装置100を識別するための識別情報である。 The image forming apparatus 100 first transmits a job execution instruction and the apparatus ID to the cloud server 200A (a). Here, the job execution instruction is a command for causing the cloud server 200 to execute image processing and transmitting the processed image data in order for the image forming apparatus 100 to start printing processing. The device ID is identification information for identifying the image forming device 100.

クラウドサーバ200Aは、画像形成装置100からジョブの実行指示および装置IDを受け取ると、実行指示に係るジョブに対してジョブIDを設定し、ジョブの対象である画像データに対する画像処理を実行する。そして、クラウドサーバ200Aは、設定したジョブIDと画像形成装置100から取得した装置IDとを、装置IDにより特定される画像形成装置100へ送信する(b)。ジョブIDは、実行指示に係るジョブを識別するための識別情報である。また、クラウドサーバ200Aは、受け取ったジョブの実行指示、装置IDおよび設定したジョブIDを、分散処理を分担するクラウドサーバ200Bへ転送する。 When the cloud server 200A receives the job execution instruction and device ID from the image forming apparatus 100, it sets a job ID for the job related to the execution instruction, and executes image processing on the image data that is the object of the job. Then, the cloud server 200A transmits the set job ID and the device ID acquired from the image forming device 100 to the image forming device 100 specified by the device ID (b). The job ID is identification information for identifying the job related to the execution instruction. Further, the cloud server 200A transfers the received job execution instruction, device ID, and set job ID to the cloud server 200B that shares distributed processing.

画像形成装置100は、クラウドサーバ200AからジョブIDおよび装置IDを取得し、取得した装置IDが自装置の装置IDか否かを確認する。取得した装置IDが自装置の装置IDと一致した場合、画像形成装置100は、クラウドサーバ200Aに、装置IDが正しいことを示す通知(以下、「確認通知」と呼ぶ)を行う(c)。また、画像形成装置100は、取得したジョブIDを保持し、この後クラウドサーバ200Aから受信する画像データが実行指示に係るジョブのデータであることを判断するために用いる。 The image forming apparatus 100 obtains a job ID and a device ID from the cloud server 200A, and confirms whether the obtained device ID is the device ID of its own device. If the acquired device ID matches the device ID of its own device, the image forming device 100 notifies the cloud server 200A that the device ID is correct (hereinafter referred to as "confirmation notification") (c). Furthermore, the image forming apparatus 100 retains the acquired job ID and uses it to determine that the image data subsequently received from the cloud server 200A is data of a job related to the execution instruction.

クラウドサーバ200Aは、画像形成装置100から確認通知を受け取ると、画像データの送信を開始する。画像データの送信は、ページごとに行われる。クラウドサーバ200Aには第1ページと第3ページとが割り当てられているので、クラウドサーバ200Aは、まず、第1ページの画像データ、ジョブID、装置IDおよびページIDを画像形成装置100へ送信する(d)。 Upon receiving the confirmation notification from the image forming apparatus 100, the cloud server 200A starts transmitting image data. Image data is transmitted page by page. Since the first page and the third page are assigned to the cloud server 200A, the cloud server 200A first sends the image data, job ID, device ID, and page ID of the first page to the image forming apparatus 100. (d).

画像形成装置100は、クラウドサーバ200Aから受信した各IDを確認する。具体的には、例えば、ジョブIDが上記(b)でクラウドサーバ200Aから受信したジョブIDか否か、装置IDが自装置の装置IDか否か、既に受信したページのページIDと重複していないか等が確認される。各IDに問題がなければ、画像形成装置100は、受信した第1ページの画像データを保存し、クラウドサーバ200Aに、画像データを受け取った旨の通知(以下、「取得通知」と呼ぶ)を行う(e)。 Image forming apparatus 100 checks each ID received from cloud server 200A. Specifically, for example, it is determined whether the job ID is the job ID received from the cloud server 200A in (b) above, whether the device ID is the device ID of the own device, and whether the device ID is the same as the page ID of a page that has already been received. It is checked whether there are any. If there is no problem with each ID, the image forming apparatus 100 saves the received image data of the first page and sends a notification to the cloud server 200A that the image data has been received (hereinafter referred to as "acquisition notification"). Do (e).

クラウドサーバ200Aは、次に、第3ページの画像データ、ジョブID、装置IDおよびページIDを画像形成装置100へ送信する(f)。画像形成装置100は、クラウドサーバ200Aから受信した各IDを確認する。そして、各IDに問題がなければ、画像形成装置100は、受信した第3ページの画像データを保存し、クラウドサーバ200Aに取得通知を行う(g)。以下、未送信の画像データがあれば、クラウドサーバ200Aおよび画像形成装置100は、上記の処理を繰り返す。 Cloud server 200A then transmits the third page image data, job ID, device ID, and page ID to image forming apparatus 100 (f). Image forming apparatus 100 checks each ID received from cloud server 200A. Then, if there is no problem with each ID, the image forming apparatus 100 saves the received image data of the third page and notifies the cloud server 200A of the acquisition (g). Thereafter, if there is any unsent image data, the cloud server 200A and the image forming apparatus 100 repeat the above process.

図3に示す例では、以上で振り分けられた全ての画像データの送信を完了したので、クラウドサーバ200Aは、終了処理を行って、このジョブに関する処理を終了する。終了処理としては、例えば、クラウドサーバ200Aにおける該当ジョブの画像データの送信終了を示す通知を画像形成装置100へ送信すること等が挙げられる。 In the example shown in FIG. 3, since the transmission of all the image data sorted above has been completed, the cloud server 200A performs termination processing and ends the processing related to this job. Examples of the termination process include transmitting to the image forming apparatus 100 a notification indicating the completion of transmission of image data of the corresponding job in the cloud server 200A.

次に、クラウドサーバ200Bの動作を説明する。クラウドサーバ200Bは、クラウドサーバ200Aからジョブの実行指示、装置IDおよびジョブIDを受け取ると、ジョブの対象である画像データに対する画像処理を実行する。そして、クラウドサーバ200Bは、クラウドサーバ200Aから受け取った装置IDおよびジョブIDを、装置IDにより特定される画像形成装置100へ送信する(h)。画像形成装置100は、クラウドサーバ200BからジョブIDおよび装置IDを取得し、取得した装置IDが自装置の装置IDか否かを確認する。取得した装置IDが自装置の装置IDと一致した場合、画像形成装置100は、クラウドサーバ200Bに、装置IDが正しいことを示す確認通知を行う(i)。 Next, the operation of the cloud server 200B will be explained. Upon receiving the job execution instruction, device ID, and job ID from the cloud server 200A, the cloud server 200B executes image processing on the image data that is the object of the job. The cloud server 200B then transmits the device ID and job ID received from the cloud server 200A to the image forming device 100 specified by the device ID (h). The image forming apparatus 100 obtains a job ID and a device ID from the cloud server 200B, and confirms whether the obtained device ID is the device ID of its own device. If the acquired device ID matches the device ID of its own device, the image forming device 100 sends a confirmation notification to the cloud server 200B indicating that the device ID is correct (i).

クラウドサーバ200Bは、画像形成装置100から確認通知を受け取ると、画像データの送信を開始する。画像データの送信はページごとに行われ、クラウドサーバ200Bには第2ページが割り当てられている。したがって、クラウドサーバ200Bは、第2ページの画像データ、ジョブID、装置IDおよびページIDを画像形成装置100へ送信する(j)。 Upon receiving the confirmation notification from the image forming apparatus 100, the cloud server 200B starts transmitting image data. Image data is transmitted page by page, and the second page is assigned to the cloud server 200B. Therefore, the cloud server 200B transmits the second page image data, job ID, device ID, and page ID to the image forming apparatus 100 (j).

画像形成装置100は、クラウドサーバ200Bから受信した各IDを確認する。そして、各IDに問題がなければ、画像形成装置100は、受信した第2ページの画像データを保存し、クラウドサーバ200Bに取得通知を行う(k)。以下、未送信の画像データがあれば、クラウドサーバ200Bおよび画像形成装置100は、上記の処理を繰り返す。図3に示す例では、クラウドサーバ200Bに割り当てられたページは第2ページのみなので、クラウドサーバ200Bは、終了処理を行って、このジョブに関する処理を終了する。 Image forming apparatus 100 checks each ID received from cloud server 200B. Then, if there is no problem with each ID, the image forming apparatus 100 saves the received image data of the second page and notifies the cloud server 200B of the acquisition (k). Thereafter, if there is any unsent image data, the cloud server 200B and the image forming apparatus 100 repeat the above process. In the example shown in FIG. 3, the second page is the only page assigned to the cloud server 200B, so the cloud server 200B performs termination processing and ends the processing related to this job.

上記の動作例では、画像形成装置100からのジョブの実行指示に応じてクラウドサーバ200AがジョブIDを設定した。これに対し、ジョブIDを予め設定して分散処理を行う各クラウドサーバ200A、200B間で共有しておいても良い。また、画像形成装置100がジョブIDを設定し、分散処理を行う各クラウドサーバ200A、200Bに送っても良い。また、上記の動作例では、クラウドサーバ200Aが、分散処理を行う他のクラウドサーバ200Bへ画像形成装置100から取得した実行指示および装置IDを転送した。これに対し、画像形成装置100が分散処理を行う各クラウドサーバ200A、200Bに実行指示および装置IDを送っても良い。 In the above operation example, the cloud server 200A sets the job ID in response to a job execution instruction from the image forming apparatus 100. On the other hand, the job ID may be set in advance and shared between the cloud servers 200A and 200B that perform distributed processing. Alternatively, the image forming apparatus 100 may set a job ID and send it to each cloud server 200A, 200B that performs distributed processing. Further, in the above operation example, the cloud server 200A transferred the execution instruction and the device ID acquired from the image forming device 100 to another cloud server 200B that performs distributed processing. On the other hand, the image forming apparatus 100 may send the execution instruction and the apparatus ID to each cloud server 200A, 200B that performs distributed processing.

上記の動作例において、クラウドサーバ200A、200Bは、通信開始時に装置IDを送信し、画像形成装置100による確認通知を受信した。これにより、クラウドサーバ200A、200Bと画像形成装置100との間で、ジョブにおける画像データの送信先が正しいことが確認される。また、クラウドサーバ200A、200Bは、ページごとの画像データを送信する際に、再度、装置IDを送信し、画像形成装置100による確認通知を受信した。これにより、クラウドサーバ200A、200Bと画像形成装置100との間で、ページごとに送信先が正しいことが改めて確認される。 In the above operation example, the cloud servers 200A and 200B transmit the device ID at the time of starting communication, and receive a confirmation notification from the image forming device 100. Thereby, it is confirmed between the cloud servers 200A, 200B and the image forming apparatus 100 that the destination of the image data in the job is correct. Furthermore, when transmitting the image data for each page, the cloud servers 200A and 200B transmit the device ID again and receive a confirmation notification from the image forming device 100. Thereby, it is confirmed again between the cloud servers 200A, 200B and the image forming apparatus 100 that the destination is correct for each page.

上記の動作例では一の画像形成装置100が画像データを取得する動作を説明したが、一のクラウドサーバ200が複数の画像形成装置100A、100Bに対して画像データを送信する場合、画像形成装置100Aおよび画像形成装置100Bへのページごとの送信が交互に行われることが起こり得る。このような場合、ページごとに送信先を確認することで、ページ単位で誤送信の発生を防止し得る。なお、上記の動作例では、ページごとの画像データと共に装置IDを送ることとしたが、この手順は例示に過ぎない。クラウドサーバ200は、画像データを送る際に、まず装置IDを送信し、画像形成装置100からの確認通知を取得して画像データを送るようにしても良い。 In the above operation example, the operation in which one image forming apparatus 100 acquires image data has been described, but when one cloud server 200 transmits image data to a plurality of image forming apparatuses 100A and 100B, the image forming apparatus Page-by-page transmission to image forming apparatus 100A and image forming apparatus 100B may occur alternately. In such a case, by checking the destination for each page, it is possible to prevent erroneous transmission on a page-by-page basis. Note that in the above operation example, the device ID is sent together with the image data for each page, but this procedure is merely an example. When sending the image data, the cloud server 200 may first send the device ID, obtain a confirmation notification from the image forming device 100, and then send the image data.

<障害発生時の対応動作>
図4は、画像データの送信中に一のクラウドサーバ200において障害が発生し、画像データの送信が中断した様子を示す図である。クラウドサーバ200において障害が発生した場合、画像形成装置100は、障害が発生したクラウドサーバ200からそのクラウドサーバ200に割り当てられたデータを得ることができない。そこで、本実施形態では、一のクラウドサーバ200で障害が発生した場合に他のクラウドサーバ200から必要なデータを取得する。
<Response actions when a failure occurs>
FIG. 4 is a diagram showing a state in which a failure occurs in one cloud server 200 during image data transmission, and the image data transmission is interrupted. When a failure occurs in the cloud server 200, the image forming apparatus 100 cannot obtain data allocated to the cloud server 200 from the cloud server 200 where the failure has occurred. Therefore, in this embodiment, when a failure occurs in one cloud server 200, necessary data is acquired from other cloud servers 200.

図4に示す例では、三つのクラウドサーバ200A、200B、200Cから画像形成装置100へ画像データが送信される。クラウドサーバ200Aには第1ページが割り当てられ、クラウドサーバ200Bには第3ページおよび第4ページが割り当てられ、クラウドサーバ200Cには第2ページが割り当てられているものとする。 In the example shown in FIG. 4, image data is transmitted to the image forming apparatus 100 from three cloud servers 200A, 200B, and 200C. It is assumed that the first page is assigned to the cloud server 200A, the third and fourth pages are assigned to the cloud server 200B, and the second page is assigned to the cloud server 200C.

クラウドサーバ200A、200B、200Cから画像形成装置100へ画像データを送信する動作の実行中に、クラウドサーバ200Bにおいて障害が発生したものとする。障害は、クラウドサーバ200Bが第3ページの画像データを送信した後、第4ページの画像データを送信する前に発生したものとする。クラウドサーバ200A、200Cによる画像データは正常に送信された。この場合、画像形成装置100は、第1ページから第3ページまでの画像データを取得し、第4ページの画像データを取得できない。本実施形態では、次のようにして、障害の発生していないクラウドサーバ200A、200Cが第4ページの画像データを画像形成装置100へ送る。 Assume that a failure occurs in the cloud server 200B while executing an operation of transmitting image data from the cloud servers 200A, 200B, and 200C to the image forming apparatus 100. It is assumed that the failure occurs after the cloud server 200B transmits the image data of the third page but before transmitting the image data of the fourth page. Image data by the cloud servers 200A and 200C was transmitted normally. In this case, the image forming apparatus 100 acquires the image data of the first page to the third page, but cannot acquire the image data of the fourth page. In this embodiment, the cloud servers 200A and 200C in which no failure has occurred send the image data of the fourth page to the image forming apparatus 100 in the following manner.

図5は、クラウドサーバ200に障害が発生した後の画像形成装置100およびクラウドサーバ200の動作を示す図である。画像形成装置100は、第4ページの画像データが得られない状態で予め定められた条件を満足すると、第4ページの画像データを取得していないことを示す通知(以下、「未受信通知」と呼ぶ)を各クラウドサーバ200に行う。予め定められた条件は様々に設定し得るが、例えば、予め設定された時間が経過したこと等としても良い。未受信通知は、分散処理の実行対象である全てのクラウドサーバ200(200A、200B、200C)に対して行われる。画像形成装置100において、何れのクラウドサーバ200に障害が発生したかわからないためである。 FIG. 5 is a diagram showing the operations of the image forming apparatus 100 and the cloud server 200 after a failure occurs in the cloud server 200. When the image forming apparatus 100 satisfies a predetermined condition in a state where the image data of the fourth page is not obtained, the image forming apparatus 100 issues a notification indicating that the image data of the fourth page has not been obtained (hereinafter referred to as "unreceived notification"). ) is performed on each cloud server 200. The predetermined condition can be set in various ways; for example, it may be that a preset time has elapsed. The non-reception notification is sent to all cloud servers 200 (200A, 200B, 200C) that are the targets of distributed processing. This is because it is not known which cloud server 200 in the image forming apparatus 100 has a failure.

障害の発生していないクラウドサーバ200A、200Cは、通知を受け取ると、送信されていない第4ページの追加割り当てを受け付ける。これにより、障害が発生したクラウドサーバ200Bに割り当てられていたページが、障害の発生していない他のクラウドサーバ200(クラウドサーバ200Aまたはクラウドサーバ200C)に割り当てられる。追加割り当ては、例えば、管理サーバ300により行われる。管理サーバ300は、ジョブの実行を管理するサーバであり、各クラウドサーバ200に対してジョブにおける処理対象の画像データや設定情報の提供、分散処理における画像データの振り分け等を行うサーバである。ここでは、クラウドサーバ200Cに第4ページが割り当てられたものとする。 When the cloud servers 200A and 200C in which no failure has occurred receive the notification, they accept additional allocation of the fourth page that has not been sent. As a result, the page that was assigned to the cloud server 200B where the failure occurred is assigned to another cloud server 200 (the cloud server 200A or the cloud server 200C) where the failure did not occur. Additional allocation is performed by the management server 300, for example. The management server 300 is a server that manages job execution, and is a server that provides each cloud server 200 with image data and setting information to be processed in the job, and distributes image data in distributed processing. Here, it is assumed that the fourth page is allocated to the cloud server 200C.

第4ページが割り当てられたクラウドサーバ200Cは、第4ページに対する画像処理を実行する。そして、クラウドサーバ200Cは、図3を参照して説明した手順で第4ページの画像データを送信する。すなわち、送信開始時のジョブIDおよび装置IDの確認を経た後、第4ページの画像データ、ジョブID、装置IDおよびページIDを画像形成装置100へ送信する。 The cloud server 200C to which the fourth page is assigned executes image processing on the fourth page. The cloud server 200C then transmits the image data of the fourth page using the procedure described with reference to FIG. That is, after confirming the job ID and device ID at the time of starting transmission, the image data of the fourth page, job ID, device ID, and page ID are transmitted to the image forming device 100.

画像形成装置100は、分散処理を実行する各クラウドサーバ200へ未受信通知を送った後、通信開始時にクラウドサーバ200CからジョブIDと共に受信した装置IDが自装置の装置IDか否かを確認し、自装置の装置IDであれば確認通知を返す。また、画像形成装置100は、第4ページの画像データの受信時に、クラウドサーバ200Cから画像データと共に受信した各IDを確認する。そして、問題が無ければ、画像形成装置100は、受信した第4ページの画像データを保存し、クラウドサーバ200Cに、取得通知を行う。 After sending a non-reception notification to each cloud server 200 that executes distributed processing, the image forming apparatus 100 checks whether the device ID received along with the job ID from the cloud server 200C at the start of communication is the device ID of its own device. , if it is the device ID of the device itself, a confirmation notification is returned. Further, when receiving the image data of the fourth page, the image forming apparatus 100 checks each ID received together with the image data from the cloud server 200C. Then, if there is no problem, the image forming apparatus 100 saves the received image data of the fourth page and notifies the cloud server 200C of the acquisition.

なお、クラウドサーバ200Cにおいて、追加割り当てされたデータと同じジョブによるデータ送信処理が継続中である場合、送信開始時の確認は省略しても良い。例えば、ジョブに係る画像データの総ページ数が10ページであり、第3、第6、第9ページがクラウドサーバ200Cに振り分けられている場合を考える。クラウドサーバ200において、第6ページまで送信完了し、第9ページが未送信のときに第8ページが追加で割り当てられたものとする。この場合、クラウドサーバ200Cは、このジョブによる送信処理が継続中(第9ページが未送信)であるため、かかる送信処理の一部として第8ページの送信を行っても良い。 Note that if the cloud server 200C is continuing data transmission processing by the same job as the additionally allocated data, the confirmation at the start of transmission may be omitted. For example, consider a case where the total number of pages of image data related to a job is 10 pages, and the third, sixth, and ninth pages are distributed to the cloud server 200C. In the cloud server 200, it is assumed that the eighth page is additionally allocated when the transmission of up to the sixth page has been completed and the ninth page has not been transmitted. In this case, the cloud server 200C may transmit the eighth page as part of the transmission process because the transmission process for this job is still ongoing (the ninth page has not been transmitted).

上記の動作例において、障害の発生したクラウドサーバ200Bにおいて画像形成装置100に送信できなかった画像データに対する処理の追加割り当てを管理サーバ300が行うこととしたが、これは例示に過ぎない。例えば、障害が発生していないクラウドサーバ200どうしで情報をやり取りし、追加の画像処理および送信を行うクラウドサーバ200を決定しても良い。この場合、クラウドサーバ200間の情報のやり取りにおいて、例えば、各クラウドサーバ200の負荷の状態等を比較し、現状の負荷が最も軽いクラウドサーバ200に対して追加割り当てを行っても良い。 In the above operation example, the management server 300 additionally allocates processing to the image data that could not be transmitted to the image forming apparatus 100 in the cloud server 200B where the failure occurred, but this is merely an example. For example, information may be exchanged between cloud servers 200 in which no failure has occurred, and a cloud server 200 to perform additional image processing and transmission may be determined. In this case, when exchanging information between the cloud servers 200, for example, the load status of each cloud server 200 may be compared, and additional allocation may be made to the cloud server 200 with the lightest current load.

<クラウドサーバ200の動作>
図6は、クラウドサーバ200の動作を示すフローチャートである。クラウドサーバ200は、画像形成装置100からジョブの実行指示および装置IDを受信すると(S601)、ジョブIDを設定し、受信した実行指示にしたがって画像処理を実行する(S602)。そして、クラウドサーバ200は、画像形成装置100へジョブIDおよび装置IDを送信する(S603)。
<Operation of cloud server 200>
FIG. 6 is a flowchart showing the operation of the cloud server 200. When the cloud server 200 receives the job execution instruction and device ID from the image forming apparatus 100 (S601), it sets the job ID and executes image processing according to the received execution instruction (S602). Then, the cloud server 200 transmits the job ID and the device ID to the image forming apparatus 100 (S603).

次に、クラウドサーバ200は、規定時間内に画像形成装置100から確認通知を受信すると(S604でYES)、S602で処理した画像データを、予め定められたデータブロックごと(例えばページごと)に画像形成装置100へ送信する。また、クラウドサーバ200は、画像データと共に各ID(ジョブID、ページIDおよび装置ID)を画像形成装置100へ送信する(S605)。規定時間内に確認通知を受信しなかった場合(S604でNO)、クラウドサーバ200は、ジョブがエラーにより終了したことを示す通知を画像形成装置100へ送信する(S611)。 Next, when the cloud server 200 receives a confirmation notification from the image forming apparatus 100 within a specified time (YES in S604), the cloud server 200 divides the image data processed in S602 into images for each predetermined data block (for example, for each page). It is transmitted to the forming apparatus 100. Further, the cloud server 200 transmits each ID (job ID, page ID, and device ID) to the image forming apparatus 100 together with the image data (S605). If the confirmation notification is not received within the specified time (NO in S604), the cloud server 200 transmits a notification indicating that the job has ended due to an error to the image forming apparatus 100 (S611).

クラウドサーバ200は、送信したページの画像データの取得通知を画像形成装置100から規定時間内に受信すると(S606でYES)、ジョブに係る全ての画像データ(全ページ)の送信を完了したか否かを判断する。完了していない場合(S607でNO)、S605に戻り、クラウドサーバ200は、未送信の画像データおよび各IDを画像形成装置100へ送信する。一方、ジョブに係る全ての画像データの送信を完了したならば(S607でYES)、クラウドサーバ200は、画像形成装置100から未受信通知を受信したか否かを判断する。また、規定時間内に取得通知を受信しなかった場合(S606でNO)、クラウドサーバ200は、ジョブがエラーにより終了したことを示す通知を画像形成装置100へ送信する(S611)。 When the cloud server 200 receives the image data acquisition notification for the transmitted page from the image forming apparatus 100 within the specified time (S606: YES), the cloud server 200 determines whether transmission of all image data (all pages) related to the job has been completed. to judge. If the process has not been completed (NO in S607), the process returns to S605, and the cloud server 200 sends the unsent image data and each ID to the image forming apparatus 100. On the other hand, if the transmission of all image data related to the job is completed (S607: YES), the cloud server 200 determines whether a non-reception notification has been received from the image forming apparatus 100. Further, if the acquisition notification is not received within the specified time (NO in S606), the cloud server 200 transmits a notification indicating that the job has ended due to an error to the image forming apparatus 100 (S611).

未受信通知を受信していない場合(S608でNO)、クラウドサーバ200は、このジョブにおける自サーバの処理が終了したことを示す通知を画像形成装置100へ送信する(S609)。分散処理に係る他のクラウドサーバ200で障害が発生し、画像形成装置100から未受信通知を受信した場合(S608でYES)、次にクラウドサーバ200は、このジョブにおける処理対象の画像データの追加割り当てを受けたか否かを判断する。 If the non-reception notification has not been received (NO in S608), the cloud server 200 transmits to the image forming apparatus 100 a notification indicating that the processing of the own server for this job has been completed (S609). If a failure occurs in another cloud server 200 related to distributed processing and a non-reception notification is received from the image forming apparatus 100 (YES in S608), then the cloud server 200 adds image data to be processed in this job. Determine whether you have received an assignment.

追加割り当てを受けていない場合(S610でNO)、クラウドサーバ200は、このジョブにおける自サーバの処理が終了したことを示す通知を画像形成装置100へ送信する(S609)。一方、画像データの追加割り当てを受けた場合(S610でYES)、S602に戻り、クラウドサーバ200は、追加割り当てされた画像データに対する画像処理を行う。そして、クラウドサーバ200は、新たに画像処理を行った画像データに関して、画像形成装置100へのジョブIDおよび装置IDの送信(S603)以降の処理を実行する。 If no additional allocation has been received (NO in S610), the cloud server 200 sends a notification to the image forming apparatus 100 indicating that the server's processing for this job has ended (S609). On the other hand, if additional allocation of image data is received (YES in S610), the process returns to S602, and the cloud server 200 performs image processing on the additional allocated image data. The cloud server 200 then executes the process after transmitting the job ID and device ID to the image forming apparatus 100 (S603) regarding the newly image-processed image data.

上記の動作例において、クラウドサーバ200は、ジョブに係る全ての画像データの送信を完了した後に、画像形成装置100から未受信通知を受信したか否かを判断することとした。これに対し、ジョブに係る全ての画像データの送信を完了する前であっても、未受信通知を受信し、画像データの追加割り当てを受け付けた場合は、当初の振り分けで自サーバに割り当てられた画像データと同様に追加割り当てによる画像データの処理を行っても良い。 In the above operation example, the cloud server 200 determines whether or not it has received a non-reception notification from the image forming apparatus 100 after completing the transmission of all image data related to the job. On the other hand, if an unreceived notification is received and additional allocation of image data is accepted even before all image data related to the job has been sent, the original allocation of image data will be Image data may be processed by additional allocation in the same way as image data.

<画像形成装置100の動作>
図7は、画像形成装置100の動作を示すフローチャートである。画像形成装置100は、ジョブを開始する場合、まず、分散処理による画像処理を実行するクラウドサーバ200へジョブの実行指示および装置IDを送信し(S701)、クラウドサーバ200からの応答を待つ。そして、画像形成装置100は、クラウドサーバ200からジョブIDおよび装置IDを受信すると(S702)、受信した装置IDが正しいか否か(自装置の装置IDと一致しているか否か)を判断する。
<Operation of image forming apparatus 100>
FIG. 7 is a flowchart showing the operation of image forming apparatus 100. When starting a job, the image forming apparatus 100 first transmits a job execution instruction and an apparatus ID to the cloud server 200 that executes image processing using distributed processing (S701), and waits for a response from the cloud server 200. Then, upon receiving the job ID and device ID from the cloud server 200 (S702), the image forming device 100 determines whether the received device ID is correct (whether it matches the device ID of its own device). .

受信した装置IDが正しい場合(S703でYES)、画像形成装置100は、クラウドサーバ200へ確認通知を送信する(S704)。受信した装置IDが正しくない場合(S703でNO)、画像形成装置100は、ジョブをエラー終了する(S713)。エラー終了では、例えば、画像形成装置100の表示部140(図2参照)に表示されたUI画面において、エラー終了したことを示すメッセージの表示等が行われる。表示されるメッセージには、例えば、エラーにより終了したこと、エラーの種類、対応手段等の情報を含んでも良い。 If the received device ID is correct (YES in S703), the image forming apparatus 100 transmits a confirmation notification to the cloud server 200 (S704). If the received device ID is incorrect (NO in S703), the image forming apparatus 100 ends the job with an error (S713). When the process ends due to an error, for example, a message indicating that the process ends due to an error is displayed on the UI screen displayed on the display unit 140 (see FIG. 2) of the image forming apparatus 100. The displayed message may include information such as the fact that the process ended due to an error, the type of error, and countermeasures.

画像形成装置100は、確認通知を送信した後、規定時間内に画像データを受信したか否かを判断する。規定時間内に受信した場合(S705でYES)、画像形成装置100は、画像データと共に受信した各IDに問題がないかを判断する。受信した各IDが正しい場合(S706でYES)、画像形成装置100は、受信した画像データを保存し、クラウドサーバ200へ取得通知を返す(S707)。一方、受信した各IDの何れかが正しくない場合(S706でNO)、画像形成装置100は、ジョブをエラー終了する(S713)。 After transmitting the confirmation notification, image forming apparatus 100 determines whether image data has been received within a specified time. If received within the specified time (YES in S705), the image forming apparatus 100 determines whether there is any problem with each ID received together with the image data. If each received ID is correct (YES in S706), the image forming apparatus 100 saves the received image data and returns an acquisition notification to the cloud server 200 (S707). On the other hand, if any of the received IDs is incorrect (NO in S706), the image forming apparatus 100 ends the job with an error (S713).

取得通知をクラウドサーバ200へ送信した後、画像形成装置100は、保存した画像データをページ順に出力する(S708)。画像形成装置100は、S705~S708の動作をジョブに係る全ての画像データ(全ページ)について出力するまで繰り返す(S709でNO)。全ての画像データの出力が完了したならば(S709でYES)、画像形成装置100は、ジョブを正常終了する(S710)。正常終了では、例えば、画像形成装置100の表示部140に表示されたUI画面において、正常終了したことを示すメッセージの表示等が行われる。 After transmitting the acquisition notification to the cloud server 200, the image forming apparatus 100 outputs the saved image data in page order (S708). The image forming apparatus 100 repeats the operations of S705 to S708 until all image data (all pages) related to the job are output (NO in S709). If output of all image data is completed (YES in S709), the image forming apparatus 100 normally ends the job (S710). When the process ends normally, for example, a message indicating that the process ends normally is displayed on the UI screen displayed on the display unit 140 of the image forming apparatus 100.

確認通知を送信した後、規定時間内に画像データを受信しなかった場合(S705でNO)、画像形成装置100は、クラウドサーバ200へ未受信通知を送信し(S711)、クラウドサーバ200からの応答を待つ。画像形成装置100は、規定回数に至るまでは(S712でNO)、例えばS705で述べた規定時間ごとに、未受信通知を繰り返す。そして、未受信通知が規定回数に達するまでに画像データおよび各IDを受信したならば(S705でYES)、画像形成装置100は、各IDの確認(S706)以降の処理を実行する。一方、未受信通知が規定回数に達した場合(S712でYES)、画像形成装置100は、ジョブをエラー終了する(S713)。 If the image forming apparatus 100 does not receive the image data within the specified time after sending the confirmation notification (NO in S705), the image forming apparatus 100 sends a non-reception notification to the cloud server 200 (S711), and Wait for response. The image forming apparatus 100 repeats the non-reception notification at each specified time period described in S705, for example, until the specified number of times is reached (NO in S712). If the image data and each ID are received before the non-reception notification reaches the specified number of times (S705: YES), the image forming apparatus 100 executes the processing after confirming each ID (S706). On the other hand, if the number of unreceived notifications reaches the specified number (YES in S712), the image forming apparatus 100 ends the job with an error (S713).

上記の動作において、画像形成装置100は、全ての画像データを取得してから印刷出力を行っても良いし、画像データを受信しながら並行して出力処理を行っても良い。ここで、複数のクラウドサーバ200からの画像データの受信が、必ずしもページ順となるとは限らない。例えば、図4、5を参照して説明した例において、クラウドサーバ200Cから第2ページの画像データを受信する前に、クラウドサーバ200Bから第3ページの画像データを受信することが起こり得る。このような場合、後者の例では、例えば、画像形成装置100において十分なデータ容量(例えば、数ページ分のデータ量に相当する容量)のバッファメモリを用意しておき、ページ順が前後して受信された画像データをバッファしてページ順に出力することにより対応しても良い。 In the above operation, the image forming apparatus 100 may perform print output after acquiring all image data, or may perform output processing in parallel while receiving image data. Here, image data is not necessarily received from the plurality of cloud servers 200 in page order. For example, in the example described with reference to FIGS. 4 and 5, it may happen that the third page image data is received from the cloud server 200B before the second page image data is received from the cloud server 200C. In such a case, in the latter example, for example, a buffer memory with sufficient data capacity (for example, a capacity equivalent to the data amount of several pages) is prepared in the image forming apparatus 100, and the page order is changed. This may be handled by buffering the received image data and outputting it in page order.

<他の適用例>
上記の実施形態では、情報処理装置を画像形成装置100とし、複数のクラウドサーバ200の分散処理による画像処理が行われた画像データを取得して印刷出力するジョブを実行する場合を例として説明したが、本実施形態は上記の実施形態以外にも、複数のクラウドサーバ200の分散処理を経たデータを取得してジョブを実行する種々のシステムに対して適用し得る。例えば、情報処理装置を動画再生装置とし、複数のクラウドサーバ200の分散処理により編集された動画データを取得して再生するジョブを実行するシステムに適用しても良い。
<Other application examples>
In the above embodiment, the information processing apparatus is the image forming apparatus 100, and a case is described as an example in which a job is executed to acquire and print out image data that has been subjected to image processing through distributed processing of a plurality of cloud servers 200. However, in addition to the embodiments described above, this embodiment can be applied to various systems that acquire data that has undergone distributed processing by a plurality of cloud servers 200 and execute a job. For example, the information processing device may be a video playback device, and the present invention may be applied to a system that executes a job of acquiring and playing back video data edited by distributed processing of a plurality of cloud servers 200.

この場合、各クラウドサーバ200における処理および情報処理装置(動画再生装置)への送信の単位であるデータブロックは、例えば、フレーム単位の動画データ等としても良い。この適用例では、分散処理を行う各クラウドサーバ200は、情報処理装置からジョブの実行指示および装置IDを取得し、処理対象の動画データを処理する(言い換えれば、処理済みの動画データを生成する)。そして、クラウドサーバ200は、ジョブIDと装置IDとを情報処理装置に送信し、確認通知を待つ。クラウドサーバ200は、確認通知を受け取ると、フレーム単位の処理済みの動画データ、ジョブID、装置IDおよびフレームの識別情報としてのフレームIDを情報処理装置へ送信する。 In this case, the data block that is the unit of processing in each cloud server 200 and transmission to the information processing device (video playback device) may be, for example, video data in units of frames. In this application example, each cloud server 200 that performs distributed processing acquires a job execution instruction and a device ID from an information processing device, and processes video data to be processed (in other words, generates processed video data). ). Then, the cloud server 200 transmits the job ID and device ID to the information processing device, and waits for a confirmation notification. Upon receiving the confirmation notification, the cloud server 200 transmits the processed video data in units of frames, job ID, device ID, and frame ID as frame identification information to the information processing device.

情報処理装置は、ジョブの実行に際し、まず、ジョブの実行指示および装置IDをクラウドサーバ200へ送信する。情報処理装置は、クラウドサーバ200からジョブIDおよび装置IDを取得すると、装置IDを確認して確認通知を行い、データが送られるのを待つ。情報処理装置は、クラウドサーバ200からフレーム単位の処理済みの動画データ、ジョブID、装置IDおよびフレームIDを受信すると、各IDを確認し、動画データを保存して取得通知を行う。そして、情報処理装置は、取得した動画データを時系列にしたがって再生する。 When executing a job, the information processing apparatus first transmits a job execution instruction and an apparatus ID to the cloud server 200. Upon acquiring the job ID and device ID from the cloud server 200, the information processing device checks the device ID, issues a confirmation notification, and waits for data to be sent. When the information processing device receives the processed video data, job ID, device ID, and frame ID in units of frames from the cloud server 200, it checks each ID, stores the video data, and issues an acquisition notification. The information processing device then plays back the acquired video data in chronological order.

また、上記の実施形態では、情報処理装置の一例である画像形成装置100とクラウドサーバ200とが直接、命令やデータのやり取りを行う構成としたが、かかる命令やデータのやり取りを、管理サーバ300による中継を経て行う構成としても良い。例えば、図3に示した構成例では、画像形成装置100が、分散処理を実行するクラウドサーバ200の一つ(図3の例ではクラウドサーバ200A)に対し、ジョブの実行指示および装置IDを送信する構成とした。また、一つのクラウドサーバ200だけではなく、分散処理を実行する各クラウドサーバ200に対して画像形成装置100が実行指示および装置IDを送信しても良いことを述べた。 Further, in the above embodiment, the image forming apparatus 100, which is an example of an information processing apparatus, and the cloud server 200 directly exchange commands and data, but the management server 300 It is also possible to perform the configuration through relaying by. For example, in the configuration example shown in FIG. 3, the image forming apparatus 100 sends a job execution instruction and a device ID to one of the cloud servers 200 (cloud server 200A in the example of FIG. 3) that executes distributed processing. It was configured to do this. Further, as described above, the image forming apparatus 100 may transmit the execution instruction and the apparatus ID not only to one cloud server 200 but also to each cloud server 200 that executes distributed processing.

これに対し、画像形成装置100は管理サーバ300に対して実行指示および装置IDを送信し、管理サーバ300がこれらの実行指示および装置IDを、分散処理を実行するクラウドサーバ200へ送信するようにしても良い。管理サーバ300は、分散処理を実行するクラウドサーバ200に対し分散処理に係るデータの振り分けを行って管理しているので、ジョブごとに、実行指示および装置IDの送信先のクラウドサーバ200を特定し得る。これにより、画像形成装置100が分散処理を実行するクラウドサーバ200の情報を事前に有している必要がなくなる。同様に、クラウドサーバ200に障害が発生した場合の未受信通知についても、画像形成装置100から管理サーバ300を経由して障害の発生していないクラウドサーバ200へ送信するようにしても良い。 In response, the image forming apparatus 100 sends an execution instruction and a device ID to the management server 300, and the management server 300 sends these execution instructions and device ID to the cloud server 200 that executes distributed processing. It's okay. Since the management server 300 distributes and manages data related to distributed processing to the cloud servers 200 that execute distributed processing, it specifies the cloud server 200 to which execution instructions and device IDs are sent for each job. obtain. This eliminates the need for the image forming apparatus 100 to have in advance information about the cloud server 200 that executes distributed processing. Similarly, a non-reception notification when a failure occurs in the cloud server 200 may also be transmitted from the image forming apparatus 100 via the management server 300 to the cloud server 200 in which the failure has not occurred.

以上、本発明の実施形態について説明したが、本発明の技術的範囲は上記実施形態には限定されない。例えば、上記の実施形態では、情報処理装置の一例である画像形成装置100が、複数のクラウドサーバ200から取得した画像データをページ順に出力するためにバッファリングを行う構成を取り得ることについて述べた。これに対し、対象データである画像データや動画データのバッファリングを管理サーバ300が行い、情報処理装置は管理サーバ300からページ順や時系列順に整列された画像データや動画データを取得するようにしても良い。また、上記の実施形態では、画像処理を行うサーバとしてクラウドサーバ200を用いる構成を例として説明したが、サーバは上記クラウドサーバ200には限定されない。例えば、LAN(Local Area Network)やインターネット等のネットワークを介して画像形成装置100の外部に接続されたサーバマシンやネットワーク上に仮想的に構築されたサーバ等を用いて構成しても良い。その他、本発明の技術思想の範囲から逸脱しない様々な変更や構成の代替は、本発明に含まれる。 Although the embodiments of the present invention have been described above, the technical scope of the present invention is not limited to the above embodiments. For example, in the above embodiment, it has been described that the image forming apparatus 100, which is an example of an information processing apparatus, can be configured to perform buffering in order to output image data acquired from a plurality of cloud servers 200 in page order. . In contrast, the management server 300 buffers the image data and video data that are the target data, and the information processing device acquires the image data and video data arranged in page order or chronological order from the management server 300. It's okay. Further, in the embodiment described above, a configuration in which the cloud server 200 is used as a server that performs image processing has been described as an example, but the server is not limited to the cloud server 200 described above. For example, a server machine connected to the outside of the image forming apparatus 100 via a network such as a LAN (Local Area Network) or the Internet, or a server virtually constructed on the network may be used. In addition, various changes and structural substitutions that do not depart from the scope of the technical idea of the present invention are included in the present invention.

100…画像形成装置、110…制御部、111…CPU、112…RAM、113…ROM、120…記憶部、130…操作部、140…表示部、150…画像読み取り部、160…画像形成部、170…通信部、180…画像処理部、200…クラウドサーバ、300…管理サーバ 100... Image forming device, 110... Control section, 111... CPU, 112... RAM, 113... ROM, 120... Storage section, 130... Operation section, 140... Display section, 150... Image reading section, 160... Image forming section, 170... Communication department, 180... Image processing section, 200... Cloud server, 300... Management server

Claims (14)

プロセッサを備え、
前記プロセッサは、
分散処理を実行するサーバに対して処理の実行指示を行い、
個々の前記サーバから前記分散処理における当該サーバに振り分けられた処理の処理結果を取得し、
前記分散処理に係る個々の処理に関して、処理結果が取得されずに予め定められた条件を満足した場合、当該分散処理を実行する各サーバに対して当該処理結果を取得していないことを示す通知を行い、
前記通知の後、前記分散処理を実行するサーバのうち、前記条件を満足した際に取得されなかった前記処理結果に係る処理が振り分けられたサーバとは異なるサーバから当該処理結果を取得することを特徴とする、情報処理装置。
Equipped with a processor,
The processor includes:
Instructs the server that executes distributed processing to execute the process,
Obtaining the processing results of the processing distributed to the server in the distributed processing from each of the servers,
When a predetermined condition is satisfied with respect to individual processing related to the distributed processing without obtaining processing results, a notification is sent to each server that executes the distributed processing indicating that the processing results have not been obtained. and
After the notification, among the servers that execute the distributed processing, the processing result is acquired from a server different from the server to which the processing related to the processing result that was not obtained when the condition was satisfied is distributed. An information processing device characterized by:
前記プロセッサは、
個々の前記サーバから前記処理結果の送信先を示す装置識別情報を取得し、
取得した前記装置識別情報が自装置の装置識別情報である場合に、当該装置識別情報の送信元であるサーバから前記処理結果を取得することを特徴とする、請求項1に記載の情報処理装置。
The processor includes:
obtaining device identification information indicating a destination of the processing result from each of the servers;
The information processing device according to claim 1, characterized in that, when the acquired device identification information is the device identification information of the own device, the processing result is acquired from a server that is a source of the device identification information. .
前記プロセッサは、
前記サーバとの間で前記処理結果を取得するための通信を開始する際に、各々の当該サーバから前記装置識別情報を取得して自装置の装置識別情報か否かを判断し、
各々の前記サーバから前記処理結果を取得する際に、再度、前記装置識別情報を取得して自装置の装置識別情報か否かを判断することを特徴とする、請求項2に記載の情報処理装置。
The processor includes:
When starting communication to obtain the processing results with the servers, obtain the device identification information from each of the servers and determine whether it is the device identification information of the own device,
Information processing according to claim 2, characterized in that when acquiring the processing result from each of the servers, the device identification information is acquired again to determine whether it is the device identification information of the own device. Device.
前記プロセッサは、前記通知の後、前記異なるサーバから前記処理結果を取得する際に、前記装置識別情報を取得して自装置の装置識別情報か否かを判断することを特徴とする、請求項3に記載の情報処理装置。 The processor, when acquiring the processing result from the different server after the notification, acquires the device identification information and determines whether it is the device identification information of the own device. 3. The information processing device according to 3. 前記プロセッサは、分散処理を実行するサーバに対して前記処理の実行指示と共に自装置の装置識別情報を提供することを特徴とする、請求項2に記載の情報処理装置。 3. The information processing apparatus according to claim 2, wherein the processor provides a server that executes distributed processing with its own device identification information together with an instruction to execute the process. 前記プロセッサは、前記分散処理における全ての処理結果を取得し、当該処理結果に基づく処理を実行することを特徴とする、請求項1に記載の情報処理装置。 The information processing apparatus according to claim 1, wherein the processor obtains all processing results in the distributed processing and executes processing based on the processing results. 前記プロセッサは、前記分散処理における処理結果のうち、一または複数の処理結果に関して、
前記通知を予め定められた回数行っても取得されない場合、前記分散処理の処理結果に基づく処理を実行せず、予め定められたエラー処理を実行することを特徴とする、請求項6に記載の情報処理装置。
The processor may perform one or more processing results among the processing results in the distributed processing,
7. If the notification is not obtained even after the notification is performed a predetermined number of times, the process based on the processing result of the distributed processing is not executed, and a predetermined error process is executed. Information processing device.
端末装置からの指示に応じて複数のサーバによる分散処理を実行し、処理結果を当該端末装置に提供する分散処理システムにおいて、
前記複数のサーバにおける各サーバは、
前記端末装置から処理の実行指示を取得し、
前記実行指示に応じて前記分散処理における自サーバに振り分けられた処理を実行し、
実行した前記処理の識別情報と処理結果の送信先を示す装置識別情報とを前記端末装置に送信し、当該端末装置からの応答に応じて、当該端末装置へ処理結果を送信し、
前記端末装置から前記分散処理における個々の処理の何れかに関して処理結果を取得していないことを示す通知を受け付け、自サーバが当該通知に係る処理の少なくとも一つが振り分けられた場合に、新たに振り分けられた当該処理を実行し、当該端末装置へ処理結果を送信することを特徴とする、分散処理システム。
In a distributed processing system that executes distributed processing by multiple servers in response to instructions from a terminal device and provides processing results to the terminal device,
Each server in the plurality of servers is
Obtaining a process execution instruction from the terminal device,
Executing the process distributed to the own server in the distributed processing in accordance with the execution instruction,
transmitting identification information of the executed processing and device identification information indicating a destination of the processing result to the terminal device, and transmitting the processing result to the terminal device in response to a response from the terminal device;
If a notification indicating that processing results have not been obtained for any of the individual processes in the distributed processing is received from the terminal device, and at least one of the processes related to the notification has been allocated, the own server will perform a new allocation. 1. A distributed processing system, characterized in that the processing executed by the user is executed, and the processing results are transmitted to the terminal device.
前記複数のサーバにおける各サーバは、
前記分散処理に係る全ての処理の対象データを予め保持し、
保持している前記対象データから自サーバに振り分けられた処理の対象データを用いて当該処理を実行することを特徴とする、請求項8に記載の分散処理システム。
Each server in the plurality of servers is
Pre-holding target data for all processing related to the distributed processing,
9. The distributed processing system according to claim 8, wherein the processing is executed using target data for processing distributed to the own server from among the target data held.
前記サーバに対する前記分散処理の振り分けを管理する管理サーバをさらに備え、
前記管理サーバは、前記複数のサーバにおける各サーバが前記通知を受け付けた場合に、当該通知により特定される処理を、当該処理が振り分けられているサーバとは異なるサーバに振り分けることを特徴とする、請求項9に記載の分散処理システム。
further comprising a management server that manages distribution of the distributed processing to the servers,
The management server is characterized in that, when each of the plurality of servers receives the notification, the management server distributes the process specified by the notification to a server different from the server to which the process is distributed. The distributed processing system according to claim 9.
前記複数のサーバにおける各サーバは、前記通知を受け付けると、他の前記サーバと通信を行って、当該通知により特定される処理を実行するサーバを決定することを特徴とする、請求項9に記載の分散処理システム。 According to claim 9, each server among the plurality of servers, upon receiving the notification, communicates with the other servers to determine a server to execute the process specified by the notification. distributed processing system. 前記複数のサーバにおける各サーバは
前記端末装置との間で前記処理結果を取得するための通信を開始する際に、前記装置識別情報を当該端末装置へ送信し、
前記端末装置へ前記処理結果を送信する際に、再度、前記装置識別情報を送信することを特徴とする、請求項8に記載の分散処理システム。
Each server among the plurality of servers transmits the device identification information to the terminal device when starting communication to obtain the processing result with the terminal device,
9. The distributed processing system according to claim 8, wherein when transmitting the processing result to the terminal device, the device identification information is transmitted again.
前記複数のサーバにおける各サーバは、前記処理結果を前記端末装置へ送信する際に、当該処理結果と共に前記装置識別情報を送信することを特徴とする、請求項12に記載の分散処理システム。 13. The distributed processing system according to claim 12, wherein each server among the plurality of servers transmits the device identification information together with the processing result when transmitting the processing result to the terminal device. コンピュータに、
分散処理を実行するサーバに対して処理の実行指示および自装置の装置識別情報を提供する機能と、
個々の前記サーバから処理の識別情報および自装置の前記装置識別情報を受け付けて、当該装置識別情報の送信元であるサーバから当該装置識別情報と共に取得した当該処理の識別情報により識別される処理の処理結果を取得する機能と、
前記分散処理に係る個々の処理に関して、処理結果が取得されずに予め定められた条件を満足した場合、当該分散処理を実行する各サーバに対して当該処理結果を取得していないことを示す通知を行う機能と、
前記通知の後、前記分散処理を実行するサーバのうち何れかのサーバから自装置の前記装置識別情報を受け付けて、前記条件を満足した際に取得されなかった前記処理結果を取得する機能と、
を実現させることを特徴とする、プログラム。
to the computer,
a function that provides processing execution instructions and device identification information of its own device to a server that executes distributed processing;
The processing identification information and the device identification information of the own device are received from each of the servers, and the processing identified by the processing identification information acquired together with the device identification information from the server that is the source of the device identification information. A function to obtain processing results,
When a predetermined condition is satisfied with respect to individual processing related to the distributed processing without obtaining processing results, a notification is sent to each server that executes the distributed processing indicating that the processing results have not been obtained. and the ability to
After the notification, a function of receiving the device identification information of the own device from one of the servers that executes the distributed processing, and obtaining the processing result that was not obtained when the condition was satisfied;
A program that is characterized by realizing the following.
JP2022035543A 2022-03-08 2022-03-08 Information processing device, distributed processing system, and program Pending JP2023130943A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022035543A JP2023130943A (en) 2022-03-08 2022-03-08 Information processing device, distributed processing system, and program
US17/873,163 US20230291859A1 (en) 2022-03-08 2022-07-26 Information processing apparatus, distributed processing system, non-transitory computer readable medium storing program, and distributed processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022035543A JP2023130943A (en) 2022-03-08 2022-03-08 Information processing device, distributed processing system, and program

Publications (1)

Publication Number Publication Date
JP2023130943A true JP2023130943A (en) 2023-09-21

Family

ID=87931362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022035543A Pending JP2023130943A (en) 2022-03-08 2022-03-08 Information processing device, distributed processing system, and program

Country Status (2)

Country Link
US (1) US20230291859A1 (en)
JP (1) JP2023130943A (en)

Also Published As

Publication number Publication date
US20230291859A1 (en) 2023-09-14

Similar Documents

Publication Publication Date Title
CN102469229B (en) Image forming system, image forming method, server, and image forming apparatus
EP2249555B1 (en) Method of and apparatus for image formation and computer product
US9160621B2 (en) Network system, server, information processing apparatus, log registration method, and program
US20140078541A1 (en) Information processing system, print server, information processing apparatus, control method of information processing system, and content printing system
JP2014021830A (en) Image forming apparatus, information processing apparatus, and control method therefor
JP5441426B2 (en) Image processing apparatus, control method therefor, and program
KR20140074826A (en) Image processing apparatus and control method thereof, and storage medium
JP2019040528A (en) Server device and control method thereof, program, and printing system
CN102591163A (en) Image forming apparatus, and job management method
JP5104122B2 (en) Image forming apparatus and program
US9250841B2 (en) Print server, control method of print server, and storage medium
JP2015108857A (en) System, control method thereof, information processor, control method thereof, and program
JP2023130943A (en) Information processing device, distributed processing system, and program
JP2023130942A (en) Information processing device, distributed processing system, and program
US11632482B1 (en) Information processing system capable of enabling cooperation of processing when connection with external apparatus being disconnected, information processing apparatus therefor, and non-transitory computer readable medium storing program therefor
US11150833B2 (en) Backup apparatus
US11625204B2 (en) Information processing apparatus and image processing apparatus
EP4152156A1 (en) Information processing system, information processing apparatus, and program
US20240053934A1 (en) Printing apparatus, control method, and storage medium therefor
JP7175668B2 (en) Information processing system, information processing system control method, and program
JP2023142107A (en) Image processing apparatus and program
JP2024037518A (en) Information processing system, image forming device and management server
JP2017196781A (en) Image formation device, method and program
JP2016066161A (en) Information processing unit, information processing system, and program
JP6141083B2 (en) Site monitoring apparatus and method