JP7230375B2 - Information processing device and program - Google Patents

Information processing device and program Download PDF

Info

Publication number
JP7230375B2
JP7230375B2 JP2018165624A JP2018165624A JP7230375B2 JP 7230375 B2 JP7230375 B2 JP 7230375B2 JP 2018165624 A JP2018165624 A JP 2018165624A JP 2018165624 A JP2018165624 A JP 2018165624A JP 7230375 B2 JP7230375 B2 JP 7230375B2
Authority
JP
Japan
Prior art keywords
processing
virtual machines
information
processing request
receiving
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.)
Active
Application number
JP2018165624A
Other languages
Japanese (ja)
Other versions
JP2020038518A (en
Inventor
隆之 中村
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
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2018165624A priority Critical patent/JP7230375B2/en
Publication of JP2020038518A publication Critical patent/JP2020038518A/en
Application granted granted Critical
Publication of JP7230375B2 publication Critical patent/JP7230375B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Description

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

特許文献1には、情報処理装置と連携したデータ処理を行う処理提供装置に、データ処理が開始される前に資源の確保または解放の要求を送信することで、処理提供装置の応答性能を向上させるようにした情報処理システムが開示されている。 Japanese Patent Application Laid-Open No. 2002-200000 discloses that a request for securing or releasing resources is transmitted to a processing providing device that performs data processing in cooperation with an information processing device before data processing is started, thereby improving the response performance of the processing providing device. Disclosed is an information processing system adapted to allow

特開2015-087935号公報JP 2015-087935 A

本発明の目的は、クライアント装置からの複数の処理要求を連続して受付けて処理する際に、処理要求を処理するために起動する仮想マシンの数を増減させる制御を実行する場合でも、ユーザからの処理要求を受付けてから必要な仮想マシンの数を確保する場合と比較して、仮想マシンの不要な増減処理を削減することが可能な情報処理装置およびプログラムを提供することである。 An object of the present invention is to continuously receive and process a plurality of processing requests from a client device, even when executing control to increase or decrease the number of virtual machines that are activated to process the processing requests. To provide an information processing device and a program capable of reducing unnecessary increase/decrease processing of virtual machines compared to the case of securing the required number of virtual machines after receiving a processing request of .

[情報処理装置]
請求項1に係る本発明は、クライアント装置からの複数の処理要求を連続的に受付ける受付手段と、
前記受付手段により受付けられた処理要求を一時的に格納する格納手段と、
前記格納手段に格納されている処理要求を取得して、取得した処理要求に基づく処理を実行する実行手段と、
前記受付手段により処理要求を受付ける前に、前記クライアント装置において処理要求の処理内容が確定する前にユーザの操作内容を参照することにより生成された情報であって、ユーザが処理を実行しようとするデータの種類に関する情報、そのユーザが処理を実行しようとするデータのデータ量に関する情報、及び、そのユーザが実行しようとする処理内容の種類に関する情報のうちの少なくとも1つの情報を前記クライアント装置から受信する受信手段と、
前記受信手段により受信された前記情報を用いて、当該処理要求を処理するために必要な仮想マシンの必要数を順次予測する予測手段と、
前記格納手段に格納された実行待ちの処理要求の量に応じて前記実行手段において起動する仮想マシンの数を増減させる制御を行う際に、前記予測手段により予測された仮想マシンの必要数が確保されるように仮想マシンの数を制御する制御手段とを備えた情報処理装置である。
[Information processing device]
The present invention according to claim 1 is characterized by receiving means for continuously receiving a plurality of processing requests from a client device,
a storage means for temporarily storing the processing request accepted by the acceptance means;
execution means for acquiring the processing request stored in the storage means and executing processing based on the acquired processing request;
Information generated by referring to the user's operation content before the processing request is accepted by the receiving means and before the processing content of the processing request is determined in the client device, and the user intends to execute the processing. Receive from the client device at least one of information on the type of data, information on the amount of data the user intends to process, and information on the type of processing content the user intends to execute. receiving means for
prediction means for sequentially predicting the required number of virtual machines required to process the processing request using the information received by the reception means;
Securing the necessary number of virtual machines predicted by the prediction means when performing control to increase or decrease the number of virtual machines activated by the execution means according to the amount of processing requests waiting for execution stored in the storage means. and a control means for controlling the number of virtual machines so that the number of virtual machines is increased.

請求項に係る本発明は、前記予測手段が、前記情報が更新された場合、当該処理要求を処理するために必要な仮想マシンの必要数を再度予測する請求項記載の情報処理装置である。 The present invention according to claim 2 is the information processing apparatus according to claim 1 , wherein the prediction means re-predicts the required number of virtual machines required to process the processing request when the information is updated. be.

請求項に係る本発明は、前記制御手段が、
仮想マシンの使用状況から起動中の未使用の仮想マシンの数である未使用数を算出する第1の算出手段と、
前記未使用数から前記予測手段により予測された必要数を減算することにより、当該処理要求を処理した場合に発生する仮想マシンの過不足数を算出する第2の算出手段とを備え、
前記過不足数により表された仮想マシンの過不足が解消されるように仮想マシンの数を制御することにより、前記予測手段により予測された仮想マシンの必要数が確保されるような仮想マシンの数の制御を実行する請求項1又は2記載の情報処理装置である。
In the present invention according to claim 3 , the control means is
a first calculation means for calculating an unused number, which is the number of unused virtual machines being activated, from the usage status of the virtual machines;
a second calculation means for calculating an excess or deficiency of virtual machines generated when the processing request is processed by subtracting the required number predicted by the prediction means from the unused number;
By controlling the number of virtual machines so as to eliminate the excess/deficiency of the virtual machines represented by the excess/deficiency number, the necessary number of virtual machines predicted by the prediction means is secured. 3. The information processing apparatus according to claim 1, which performs number control.

請求項に係る本発明は、前記制御手段が、前記未使用数が1以上であっても、前記過不足数が1より小さい場合には、仮想マシンの数を減じる制御を実行しない請求項記載の情報処理装置である。 According to a fourth aspect of the present invention, the control means does not execute control to reduce the number of virtual machines when the excess/deficiency number is less than one even if the unused number is one or more. 3. The information processing apparatus according to 3 above.

請求項に係る本発明は、前記受信手段が、前記受付手段により受け付けた処理要求が、前記格納手段に格納される前に、前記情報を前記クライアント装置から受信する請求項1からのいずれか1項記載の情報処理装置である。 The present invention according to claim 5 is any one of claims 1 to 4 , wherein the receiving means receives the information from the client device before the processing request received by the receiving means is stored in the storing means. 1. The information processing apparatus according to claim 1 .

[プログラム]
請求項に係る本発明は、クライアント装置からの複数の処理要求を連続的に受付ける受付ステップと、
前記受付ステップにおいて受付けられた処理要求を格納手段に一時的に格納する格納ステップと、
前記格納手段に格納されている処理要求を取得して、取得した処理要求に基づく処理を実行手段において実行する実行ステップと
前記受付ステップにおいて処理要求を受付ける前に、前記クライアント装置において処理要求の処理内容が確定する前にユーザの操作内容を参照することにより生成された情報であって、ユーザが処理を実行しようとするデータの種類に関する情報、そのユーザが処理を実行しようとするデータのデータ量に関する情報、及び、そのユーザが実行しようとする処理内容の種類に関する情報のうちの少なくとも1つの情報を前記クライアント装置から受信する受信ステップと、
前記受信ステップにおいて受信された前記処理要求の処理負荷を予測可能な情報を用いて、当該処理要求を処理するために必要な仮想マシンの必要数を順次予測する予測ステップと、
前記格納手段に格納された実行待ちの処理要求の量に応じて前記実行手段において起動する仮想マシンの数を増減させる制御を行う際に、前記予測ステップにおいて予測された仮想マシンの必要数が確保されるように仮想マシンの数を制御する制御ステップとをコンピュータに実行させるためのプログラムである。
[program]
The present invention according to claim 6 is a receiving step of continuously receiving a plurality of processing requests from a client device;
a storage step of temporarily storing the processing request received in the receiving step in a storage means;
an execution step of acquiring the processing request stored in the storage means and executing a process based on the acquired processing request in the execution means;
Information generated by referring to the user's operation content before the processing request is accepted in the receiving step and before the processing content of the processing request is determined in the client device, and the user intends to execute the processing. Receive from the client device at least one of information on the type of data, information on the amount of data the user intends to process, and information on the type of processing content the user intends to execute. a receiving step for
a prediction step of sequentially predicting the required number of virtual machines required to process the processing request, using information capable of predicting the processing load of the processing request received in the receiving step;
Securing the necessary number of virtual machines predicted in the prediction step when performing control to increase or decrease the number of virtual machines activated by the execution means according to the amount of processing requests waiting to be executed stored in the storage means and a control step for controlling the number of virtual machines to be run.

請求項1に係る本発明によれば、クライアント装置からの複数の処理要求を連続して受付けて処理する際に、処理要求を処理するために起動する仮想マシンの数を増減させる制御を実行する場合でも、ユーザからの処理要求を受付けてから必要な仮想マシンの数を確保する場合と比較して、仮想マシンの不要な増減処理を削減することが可能な情報処理装置を提供することができる。 According to the present invention of claim 1, when receiving and processing a plurality of processing requests from a client device in succession, control is executed to increase or decrease the number of virtual machines activated to process the processing requests. Even in such a case, it is possible to provide an information processing apparatus capable of reducing unnecessary increase/decrease processing of virtual machines compared to the case of securing the required number of virtual machines after accepting a processing request from a user. .

また、請求項に係る本発明によれば、クライアント装置において処理要求の処理内容が確定する前であっても、処理要求を処理するために必要な仮想マシンの必要数を予測することが可能な情報処理装置を提供することができる。 Further, according to the first aspect of the present invention, it is possible to predict the required number of virtual machines required to process a processing request even before the processing content of the processing request is determined in the client device. It is possible to provide a sophisticated information processing apparatus.

請求項に係る本発明によれば、クライアント装置により処理要求の処理内容が変更された場合でも、変更された処理内容の処理要求を処理するために必要な仮想マシンの必要数を予測することが可能な情報処理装置を提供することができる。 According to the second aspect of the present invention, even when the processing content of the processing request is changed by the client device, the necessary number of virtual machines necessary for processing the processing request of the changed processing content can be predicted. can provide an information processing apparatus capable of

請求項に係る本発明によれば、クライアント装置からの複数の処理要求を連続して受付けて処理する際に、処理要求を処理するために起動する仮想マシンの数を増減させる制御を実行する場合でも、ユーザからの処理要求を受付けてから必要な仮想マシンの数を確保する場合と比較して、仮想マシンの不要な増減処理を削減することが可能な情報処理装置を提供することができる。 According to the third aspect of the present invention, when continuously receiving and processing a plurality of processing requests from a client device, control is executed to increase or decrease the number of virtual machines activated to process the processing requests. Even in such a case, it is possible to provide an information processing apparatus capable of reducing unnecessary increase/decrease processing of virtual machines compared to the case of securing the required number of virtual machines after accepting a processing request from a user. .

請求項に係る本発明によれば、起動中の未使用の仮想マシンが1つ以上ある場合でも、仮想マシンの数を減らすと今後受付けた処理要求を処理する際に仮想マシンの数が不足することが予測される場合には仮想マシンの数を減ずる制御が実行されないようにすることが可能な情報処理装置を提供することができる。 According to the fourth aspect of the present invention, even if one or more unused virtual machines are running, if the number of virtual machines is reduced, the number of virtual machines will be insufficient when processing requests received from now on. It is possible to provide an information processing apparatus capable of preventing the execution of control to reduce the number of virtual machines when it is predicted that the number of virtual machines will be reduced.

請求項に係る本発明によれば、クライアント装置からの複数の処理要求を連続して受付けて処理する際に、処理要求を処理するために起動する仮想マシンの数を増減させる制御を実行する場合でも、ユーザからの処理要求を受付けてから必要な仮想マシンの数を確保する場合と比較して、仮想マシンの不要な増減処理を削減することが可能な情報処理装置を提供することができる。 According to the fifth aspect of the present invention, when continuously receiving and processing a plurality of processing requests from a client device, control is executed to increase or decrease the number of virtual machines activated to process the processing requests. Even in such a case, it is possible to provide an information processing apparatus capable of reducing unnecessary increase/decrease processing of virtual machines compared to the case of securing the required number of virtual machines after accepting a processing request from a user. .

請求項に係る本発明によれば、クライアント装置からの複数の処理要求を連続して受付けて処理する際に、処理要求を処理するために起動する仮想マシンの数を増減させる制御を実行する場合でも、ユーザからの処理要求を受付けてから必要な仮想マシンの数を確保する場合と比較して、仮想マシンの不要な増減処理を削減することが可能なプログラムを提供することができる。
また、請求項6に係る本発明によれば、クライアント装置において処理要求の処理内容が確定する前であっても、処理要求を処理するために必要な仮想マシンの必要数を予測することが可能なプログラムを提供することができる。
According to the sixth aspect of the present invention, when continuously receiving and processing a plurality of processing requests from a client device, control is executed to increase or decrease the number of virtual machines activated to process the processing requests. Even in this case, it is possible to provide a program capable of reducing unnecessary increase/decrease processing of virtual machines, compared to the case of securing the required number of virtual machines after receiving a processing request from a user.
According to the sixth aspect of the present invention, it is possible to predict the required number of virtual machines required to process a processing request even before the processing content of the processing request is determined in the client device. program can be provided.

本発明の一実施形態の情報処理システムのシステム構成を示す図である。It is a figure showing the system configuration of the information processing system of one embodiment of the present invention. 本発明の一実施形態におけるサービス提供装置10のハードウェア構成を示すブロック図である。1 is a block diagram showing the hardware configuration of a service providing device 10 according to one embodiment of the present invention; FIG. 本発明の一実施形態におけるサービス提供装置10の機能構成を示すブロック図である。1 is a block diagram showing the functional configuration of a service providing device 10 according to one embodiment of the present invention; FIG. オートスケール制御部33の構成を説明するための図である。3 is a diagram for explaining the configuration of an autoscale control unit 33; FIG. サービス種類毎の仮想マシンの必要数の設定例を示す図である。FIG. 10 is a diagram showing a setting example of the required number of virtual machines for each service type; 処理要求1、2、3についての仮想マシンの必要数を予測した場合を説明するための図である。FIG. 10 is a diagram for explaining a case where the required number of virtual machines for processing requests 1, 2, and 3 is predicted; 予測部35において仮想マシンの必要数を算出する際に使用される計算式例を説明するための図である。4 is a diagram for explaining an example of a calculation formula used when calculating the required number of virtual machines in the prediction unit 35; FIG. 仮想マシン数増減制御部43の動作を説明するための図である。4 is a diagram for explaining the operation of a virtual machine number increase/decrease control unit 43; FIG. 仮想マシン数増減制御部43により行われる仮想マシン数の具体的な増減制御例を説明するための図である。FIG. 4 is a diagram for explaining a specific example of increase/decrease control of the number of virtual machines performed by a virtual machine number increase/decrease control unit 43; 本発明の一実施形態におけるサービス提供装置10の動作を説明するためのフローチャートである。4 is a flowchart for explaining the operation of the service providing device 10 according to one embodiment of the present invention; スケールイン、スケールアウトの具体例を説明するための図である。FIG. 4 is a diagram for explaining a specific example of scale-in and scale-out; 本発明の一実施形態におけるサービス提供装置10における動作を説明するためのシーケンスチャートである。4 is a sequence chart for explaining the operation of the service providing device 10 according to one embodiment of the present invention; 画像形成装置20において、ユーザがあるサービスを利用するために操作パネル71上において画像の選択を行っている様子を示す図である。7 is a diagram showing a state in which a user selects an image on the operation panel 71 in order to use a certain service in the image forming apparatus 20; FIG.

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

図1は本発明の一実施形態の情報処理システムのシステム構成を示す図である。 FIG. 1 is a diagram showing the system configuration of an information processing system according to one embodiment of the present invention.

本発明の一実施形態の情報処理システムは、図1に示されるように、サービス提供装置10と、画像形成装置20と、領収書保存サーバ61、名刺管理サーバ62、データ保存サーバ63とが、インターネット等のネットワーク30により相互に接続された構成となっている。 As shown in FIG. 1, an information processing system according to an embodiment of the present invention includes a service providing device 10, an image forming device 20, a receipt storage server 61, a business card management server 62, and a data storage server 63. They are interconnected by a network 30 such as the Internet.

画像形成装置20は、画像形成装置10は、印刷(プリント)機能、スキャン機能、複写(コピー)機能、ファクシミリ機能等の複数の機能を有するいわゆる複合機と呼ばれる装置である。 The image forming apparatus 20 is a so-called multifunction device having multiple functions such as a print function, a scan function, a copy function, and a facsimile function.

そして、サービス提供装置10は、画像形成装置20において読み取られた文書画像等の各種画像データに対して、OCR(Optical Character Reading:光学式文字読取り)処理、翻訳処理、保存処理等を行う各種サービスを提供している。そして、サービス提供装置10は、他の事業会社により運営されている領収書保存サーバ61、名刺管理サーバ62、データ保存サーバ63等の各種サーバ装置と連携して、様々なサービスの提供を行っている。 The service providing apparatus 10 performs various services such as OCR (Optical Character Reading) processing, translation processing, and storage processing on various image data such as document images read by the image forming apparatus 20. offers. The service providing device 10 cooperates with various server devices such as a receipt storage server 61, a business card management server 62, and a data storage server 63 operated by other companies to provide various services. there is

例えば、画像形成装置20において領収書やレシート等の読み取った画像データをサービス提供装置10に転送することにより、その画像データに各種処理を行った後に領収書保存サーバ61に転送して格納することにより経費精算サービスが実現される。 For example, the image forming apparatus 20 may transfer image data such as receipts read by the image forming apparatus 20 to the service providing apparatus 10, and after performing various processes on the image data, transfer the image data to the receipt saving server 61 for storage. Expense reimbursement service is realized by

また、例えば画像形成装置20において名刺を読み取った画像データをサービス提供装置10に転送することにより、その画像データに各種処理を行った後に名刺管理サーバ62に転送して格納することにより名刺管理サービスが実現される。 Further, for example, by transferring image data obtained by reading a business card in the image forming apparatus 20 to the service providing apparatus 10, the image data is subjected to various processing, and then transferred to the business card management server 62 for storage. is realized.

このようなサービス提供装置10のハードウェア構成を図2に示す。 FIG. 2 shows the hardware configuration of such a service providing apparatus 10. As shown in FIG.

サービス提供装置10は、図2に示されるように、CPU11、メモリ12、ハードディスクドライブ(HDD)等の記憶装置13、ネットワーク30を介して外部の装置等との間でデータの送信及び受信を行う通信インタフェース(IF)14、タッチパネル又は液晶ディスプレイ並びにキーボードを含むユーザインタフェース(UI)装置15を有する。これらの構成要素は、制御バス16を介して互いに接続されている。 As shown in FIG. 2, the service providing device 10 transmits and receives data to and from an external device or the like via a CPU 11, a memory 12, a storage device 13 such as a hard disk drive (HDD), and a network 30. It has a communication interface (IF) 14, a user interface (UI) device 15 including a touch panel or liquid crystal display and a keyboard. These components are connected to each other via a control bus 16 .

CPU11は、メモリ12または記憶装置13に格納された制御プログラムに基づいて所定の処理を実行して、サービス提供装置10の動作を制御する。なお、本実施形態では、CPU11は、メモリ12または記憶装置13内に格納された制御プログラムを読み出して実行するものとして説明するが、当該プログラムをCD-ROM等の記憶媒体に格納してCPU11に提供することも可能である。 The CPU 11 executes predetermined processing based on control programs stored in the memory 12 or the storage device 13 to control the operation of the service providing device 10 . In this embodiment, the CPU 11 reads and executes a control program stored in the memory 12 or the storage device 13. It is also possible to provide

図3は、上記の制御プログラムが実行されることにより実現されるサービス提供装置10の機能構成を示すブロック図である。 FIG. 3 is a block diagram showing the functional configuration of the service providing apparatus 10 realized by executing the above control program.

本実施形態におけるサービス提供装置10は、図3に示されるように、処理要求受付部31と、処理要求格納部32と、オートスケール制御部33と、受信部34と、予測部35と、処理実行部36と、処理結果格納部37と、処理結果送信部38とを備えている。 As shown in FIG. 3, the service providing apparatus 10 in the present embodiment includes a processing request reception unit 31, a processing request storage unit 32, an auto-scaling control unit 33, a reception unit 34, a prediction unit 35, a processing It has an execution unit 36 , a processing result storage unit 37 , and a processing result transmission unit 38 .

ここで、処理実行部36は、画像形成装置20から送信されてくる処理要求を、起動された複数の仮想マシン51によって処理理可能な処理手段である。 Here, the processing execution unit 36 is processing means capable of processing a processing request transmitted from the image forming apparatus 20 by a plurality of activated virtual machines 51 .

ここで、仮想マシンとは、1つの物理的コンピュータ内において仮想的(疑似的)に作り上げられた実行環境を意味する。このような仮想マシンを用いることにより、1つのコンピュータにより構成されたサーバや装置等の物理的マシン内において、複数の仮想マシンを構成して、それぞれの仮想マシンを並列処理させるようなことが可能となる。なお、この仮想マシンは、インスタンスと呼ばれる場合もある。 Here, a virtual machine means an execution environment created virtually (pseudo) within one physical computer. By using such virtual machines, it is possible to configure a plurality of virtual machines in a physical machine such as a server or device configured by one computer and perform parallel processing on each virtual machine. becomes. Note that this virtual machine may also be called an instance.

そして、この仮想マシンの起動数を、実行すべき処理の処理量に応じて制御する処理はオートスケールと呼ばれている。このオートスケールが行われることにより、仮想マシンの起動数と比較して、実行すべき処理の処理量が多い場合には仮想マシンの起動数が増加するような制御(スケールアウト)が行われ、仮想マシンの起動数と比較して、実行すべき処理の処理量が少ない場合には仮想マシンの起動数が減少するような制御(スケールイン)が行われる。 The process of controlling the number of activated virtual machines according to the amount of processing to be executed is called auto-scaling. By performing this auto-scaling, when the amount of processing to be executed is large compared to the number of virtual machines started, control (scale out) is performed so that the number of virtual machines started increases. When the amount of processing to be executed is smaller than the number of virtual machines started, control (scale-in) is performed to reduce the number of virtual machines started.

処理要求受付部31は、クライアント装置である画像形成装置20からの複数の処理要求を連続的に受付ける。 The processing request receiving unit 31 continuously receives a plurality of processing requests from the image forming apparatus 20, which is a client device.

処理要求格納部32は、処理要求受付部31により受付けられた処理要求をキューとして一時的に格納する。処理実行部36は、処理要求格納部32に格納されている処理要求を取得して、取得した処理要求に基づく処理を実行する。 The processing request storage unit 32 temporarily stores the processing requests received by the processing request receiving unit 31 as a queue. The processing execution unit 36 acquires the processing request stored in the processing request storage unit 32 and executes processing based on the acquired processing request.

オートスケール制御部33は、実行待ちの処理要求の量に応じて起動する仮想マシンの数を増減させる制御を行う際に、予測部35により予測された仮想マシンの必要数が確保されるように、処理実行部36において起動される仮想マシンの数を制御する。 When the auto-scaling control unit 33 performs control to increase or decrease the number of virtual machines to be activated according to the amount of processing requests waiting to be executed, the necessary number of virtual machines predicted by the prediction unit 35 is ensured. , to control the number of virtual machines started in the process execution unit 36 .

受信部34は、処理要求受付部31により処理要求を受付ける前に、その処理要求の処理負荷を予測可能な情報を画像形成装置20から受信する。受信部34は、処理要求の処理負荷を予測可能な情報として、画像形成装置20において処理要求の処理内容が確定する前に生成された情報を受信する。 The receiving unit 34 receives, from the image forming apparatus 20, information for predicting the processing load of the processing request before the processing request receiving unit 31 receives the processing request. The receiving unit 34 receives information generated before the processing content of the processing request is determined in the image forming apparatus 20 as information for predicting the processing load of the processing request.

具体的には、受信部34は、処理要求の処理負荷を予測可能な情報として、画像形成装置20におけるユーザの操作内容を参照することにより生成された情報を受信する。 Specifically, the receiving unit 34 receives information generated by referring to the details of the user's operation in the image forming apparatus 20 as information for predicting the processing load of the processing request.

ここで、ユーザの操作内容を参照することにより生成された情報としては、ユーザが処理を実行しようとするデータの種類に関する情報、そのユーザが処理を実行しようとするデータのデータ量に関する情報、そのユーザが実行しようとする処理内容の種類に関する情報を用いることができる。 Here, the information generated by referring to the contents of the user's operation includes information on the type of data that the user intends to process, information on the amount of data that the user intends to process, Information about the type of processing that the user intends to perform can be used.

さらに、受信部34は、処理要求受付部31により受け付けた処理要求が、実行待ちの処理要求を格納する処理要求格納部32に格納される前に、その処理要求の処理負荷を予測可能な情報を画像形成装置20から受信する。 Furthermore, before the processing request received by the processing request receiving unit 31 is stored in the processing request storage unit 32 that stores processing requests waiting to be executed, the receiving unit 34 stores information that can predict the processing load of the processing request. is received from the image forming apparatus 20 .

予測部35は、受信部34により受信された処理要求の処理負荷を予測可能な情報を用いて、その処理要求を処理するために必要な仮想マシンの必要数を順次予測する。 The prediction unit 35 sequentially predicts the required number of virtual machines required to process the processing request using information that can predict the processing load of the processing request received by the receiving unit 34 .

なお、予測部35は、画像形成装置20において処理要求の処理内容が確定する前に生成された情報が更新された場合、その処理要求を処理するために必要な仮想マシンの必要数を再度予測する。 If the information generated before the processing content of the processing request is determined in the image forming apparatus 20 is updated, the prediction unit 35 predicts again the required number of virtual machines required to process the processing request. do.

処理結果格納部37は、処理実行部36により処理が行われた後の処理結果を格納する。処理結果送信部38は、処理結果格納部37に格納された処理結果を、領収書保存サーバ61、名刺管理サーバ62、データ保存サーバ63等の各種サーバに送信する。 The processing result storage unit 37 stores the processing result after the processing is performed by the processing execution unit 36 . The processing result transmission unit 38 transmits the processing result stored in the processing result storage unit 37 to various servers such as the receipt storage server 61, the business card management server 62, the data storage server 63, and the like.

次に、オートスケール制御部33の構成について図4を参照して説明する。 Next, the configuration of the autoscale control section 33 will be described with reference to FIG.

オートスケール制御部33は、図4に示されるように、未使用数算出部41と、過不足数算出部42と、仮想マシン数増減制御部43とから構成されている。 As shown in FIG. 4 , the autoscale control unit 33 includes an unused number calculation unit 41 , an excess/deficiency calculation unit 42 , and a virtual machine number increase/decrease control unit 43 .

未使用数算出部41は、処理実行部36における仮想マシン51の使用状況から起動中の未使用の仮想マシンの数である未使用数を算出する。 The unused number calculation unit 41 calculates the unused number, which is the number of unused virtual machines being activated, from the usage status of the virtual machines 51 in the process execution unit 36 .

過不足数算出部42は、未使用数算出部41により算出された未使用数から予測部35により予測された必要数を減算することにより、その処理要求を処理した場合に発生する仮想マシンの過不足数を算出する。 The excess/deficiency number calculation unit 42 subtracts the required number predicted by the prediction unit 35 from the unused number calculated by the unused number calculation unit 41, thereby calculating the number of virtual machines generated when the processing request is processed. Calculate the number of surpluses and deficiencies.

仮想マシン数増減制御部43は、過不足数算出部42により算出された過不足数により表された仮想マシン51の過不足が解消されるように処理実行部36における仮想マシン51の起動数を制御することにより、予測部35により予測された仮想マシンの必要数が確保されるような仮想マシンの起動数の制御を実行する。 The virtual machine number increase/decrease control unit 43 adjusts the number of virtual machines 51 activated in the processing execution unit 36 so as to eliminate the excess/deficiency of the virtual machines 51 represented by the excess/deficiency number calculated by the excess/deficiency number calculation unit 42. By controlling, the number of activated virtual machines is controlled such that the required number of virtual machines predicted by the prediction unit 35 is ensured.

上述したような制御が行われることにより、オートスケール制御部33は、未使用数が1以上であっても、過不足数が1より小さい場合には、仮想マシンの数を減じる制御を実行しないことになる。 By performing the above-described control, the auto-scaling control unit 33 does not perform control to reduce the number of virtual machines when the excess/deficiency number is less than 1 even if the unused number is 1 or more. It will be.

次に、本実施形態の情報処理システムにおけるサービス提供装置10の動作について図面を参照して詳細に説明する。 Next, the operation of the service providing apparatus 10 in the information processing system of this embodiment will be described in detail with reference to the drawings.

先ず、予測部35が受信部34により受信された情報に基づいて仮想マシンの必要数を予測する際の具体例を図5、図6、図7を参照して説明する。 First, a specific example in which the prediction unit 35 predicts the required number of virtual machines based on the information received by the reception unit 34 will be described with reference to FIGS. 5, 6, and 7. FIG.

先ず、画像形成装置20において、ユーザが実行しようとする処理内容の種類、つまり実行しようとするサービス種類に基づいて、予測部35が仮想マシンの必要数を予測する場合について説明する。 First, in the image forming apparatus 20, a case will be described where the prediction unit 35 predicts the required number of virtual machines based on the type of processing content that the user intends to execute, that is, the type of service that the user intends to execute.

例えば、サービス種類毎の仮想マシンの必要数の設定例を図5に示す。図5では、領収書保存サービス、名刺管理サービス、データ記憶サービスというサービス種類に対して、それぞれ仮想マシンの必要数が、0.25、1、0.5と設定されている場合が示されている。 For example, FIG. 5 shows a setting example of the required number of virtual machines for each service type. FIG. 5 shows cases where the required number of virtual machines is set to 0.25, 1, and 0.5 for service types such as receipt storage service, business card management service, and data storage service, respectively. there is

このように設定されている場合、図6に示すような処理要求1、2、3についての仮想マシンの必要数を予測する場合、予測部35は、各処理要求のサービス種類を参照して、それぞれの処理要求を処理するために必要な仮想マシンの必要数を、図5の設定内容を参照して予測する。 With such settings, when predicting the required number of virtual machines for processing requests 1, 2, and 3 as shown in FIG. The required number of virtual machines required to process each processing request is predicted with reference to the setting contents of FIG.

ただし、この場合は処理対象のデータ量や種類等については考慮されていないため、予測部35は、図7に示すような計算式を用いて仮想マシンの必要数を算出するようにしても良い。 However, in this case, since the amount and type of data to be processed are not taken into account, the prediction unit 35 may calculate the required number of virtual machines using a calculation formula as shown in FIG. .

図7の示した計算式例では、サービス種類、MIME(Multipurpose Internet Mail Extension)タイプ組み合わせ毎に、X(KB)のデータ量の場合の仮想マシンの必要数を算出するための計算式が示されている。ここで、MIMEタイプとは、データファイルの種類を示す情報である。 The calculation formula example shown in FIG. 7 shows a calculation formula for calculating the required number of virtual machines for a data amount of X (KB) for each combination of service type and MIME (Multipurpose Internet Mail Extension) type. ing. Here, the MIME type is information indicating the type of data file.

そして、このように予測部35により必要数が予測されると、オートスケール制御部33における過不足数算出部42では、未使用数算出部41により算出された仮想マシンの未使用数から、予測部35により予測された必要数を減算することにより過不足数を算出する。 Then, when the necessary number is predicted by the prediction unit 35 in this way, the excess/shortage number calculation unit 42 in the auto scale control unit 33 predicts the number of unused virtual machines calculated by the unused number calculation unit 41. The surplus/deficit number is calculated by subtracting the required number predicted by the unit 35 .

ここで、過不足数が1より大きい場合には、仮想マシンの数が過剰であることを示し、マイナスの値の場合には、仮想マシンの数が不足していることを示している。 Here, when the excess/deficiency number is greater than 1, it indicates that the number of virtual machines is excessive, and in the case of a negative value, it indicates that the number of virtual machines is insufficient.

そのため、仮想マシン数増減制御部43は、算出された過不足数を用いて、例えば、図8に示すような仮想マシンの起動数の増減制御を行う。 Therefore, the virtual machine number increase/decrease control unit 43 performs increase/decrease control of the number of activated virtual machines as shown in FIG. 8, for example, using the calculated excess/deficiency number.

仮想マシン数増減制御部43では、図8に示されるように、過不足数が1以上の場合にはスケールアウト、つまり仮想マシンの起動数を増加させる制御が行われる。具体的には、仮想マシン数増減制御部43は、過不足数以下の最大の整数を増減数として、仮想マシンの起動数を増加させるような制御を実行する。 As shown in FIG. 8, the virtual machine number increase/decrease control unit 43 performs scale-out, that is, control to increase the number of activated virtual machines when the excess/deficiency number is 1 or more. Specifically, the virtual machine number increase/decrease control unit 43 performs control to increase the number of activated virtual machines by setting the maximum integer equal to or less than the excess/deficiency number as the increase/decrease number.

また、仮想マシン数増減制御部43では、図8に示されるように、過不足数が0未満の場合にはスケールイン、つまり仮想マシンの起動数を減少させる制御が行われる。具体的には、仮想マシン数増減制御部43は、過不足数の絶対値以上の最小の整数を増減数として、仮想マシンの起動数を減少させるような制御を実行する。 As shown in FIG. 8, the virtual machine number increase/decrease control unit 43 performs scale-in, that is, control to decrease the number of activated virtual machines when the excess/deficiency number is less than zero. Specifically, the virtual machine number increase/decrease control unit 43 performs control to decrease the number of activated virtual machines by setting the minimum integer equal to or greater than the absolute value of the excess/deficiency number as the increase/decrease number.

なお、過不足数が0以上1未満の場合には、仮想マシン数増減制御部43は、仮想マシンの起動数を変化させずに現在の起動数を維持するような制御を行う。 When the excess/deficiency number is equal to or greater than 0 and less than 1, the virtual machine number increase/decrease control unit 43 performs control to maintain the current number of activated virtual machines without changing the number of activated virtual machines.

このような設定の場合に行われる仮想マシンの具体的な増減制御例について図9を参照して説明する。 A specific example of virtual machine increase/decrease control performed in the case of such settings will be described with reference to FIG.

例えば、図9に示すように未使用数が2で必要数が1.75の場合、過不足数算出部42により算出される過不足数(未使用数-必要数)は、0.25(=2-1.75)となる。そのため、仮想マシン数増減制御部42は、現在の仮想マシンを維持するような制御を行う。 For example, when the unused number is 2 and the required number is 1.75 as shown in FIG. = 2-1.75). Therefore, the virtual machine number increase/decrease control unit 42 performs control to maintain the current virtual machines.

また、未使用数が3で必要数が1.75の場合、過不足数算出部42により算出される過不足数は、1.25(3-1.75)となる。つまり、過不足数が1以上であるため、仮想マシン数増減制御部42は、現在の仮想マシンを1減じるようなスケールイン制御を行う。 When the unused number is 3 and the required number is 1.75, the excess/deficiency number calculated by the excess/deficiency number calculation unit 42 is 1.25 (3-1.75). That is, since the excess/deficiency number is 1 or more, the virtual machine number increase/decrease control unit 42 performs scale-in control such that the current virtual machine is decremented by one.

さらに、未使用数が1で必要数が1.75の場合、過不足数算出部42により算出される過不足数は、-0.75(1-1.75)となる。つまり、過不足数が0未満であるため、仮想マシン数増減制御部42は、現在の仮想マシンを1増加させるようなスケールアウト制御を行う。 Furthermore, when the unused number is 1 and the required number is 1.75, the excess/deficiency number calculated by the excess/deficiency number calculation unit 42 is -0.75 (1-1.75). That is, since the excess/deficiency number is less than 0, the virtual machine number increase/decrease control unit 42 performs scale-out control to increase the current virtual machine by one.

次に、上記で説明したサービス提供装置10の動作を図10のフローチャートを参照して説明する。 Next, the operation of the service providing apparatus 10 described above will be described with reference to the flowchart of FIG.

先ず、受信部34は、画像形成装置20から、処理要求が確定する前の処理要求の内容を示す操作情報を受信する(ステップS101)。 First, the receiving unit 34 receives, from the image forming apparatus 20, operation information indicating the content of the processing request before the processing request is confirmed (step S101).

すると、予測部35は、受信部34により受信された操作情報に基づいて、処理要求を処理するために必要となる仮想マシンの数を必要数として予測する(ステップS102)。 Based on the operation information received by the receiving unit 34, the predicting unit 35 then predicts the number of virtual machines required to process the processing request as the required number (step S102).

すると、オートスケール制御部33の過不足数算出部42は、未使用数算出部41により算出された未使用数から、予測部35により予測された必要数を減算して過不足数を算出する(ステップS103)。 Then, the excess/deficiency calculation unit 42 of the autoscale control unit 33 subtracts the required number predicted by the prediction unit 35 from the unused number calculated by the unused number calculation unit 41 to calculate the excess/deficiency. (Step S103).

そして、仮想マシン数増減制御部43は、過不足数算出部42により算出された過不足数が、0未満であるのか、0以上1未満であるのか、1以上であるのかを判定する(ステップS104)。 Then, the virtual machine number increase/decrease control unit 43 determines whether the excess/deficiency number calculated by the excess/deficiency number calculation unit 42 is less than 0, 0 or more and less than 1, or 1 or more (step S104).

そして、ステップS104において過不足数が0未満であると判定された場合、仮想マシン数増減制御部43は、ユーザが操作中の処理要求が確定して送信されてきた場合、仮想マシン数が不足すると判定して、仮想マシンの起動数を増加させるスケールアウト制御を実行する(ステップS105)。 Then, if it is determined in step S104 that the excess/deficiency number is less than 0, the virtual machine number increase/decrease control unit 43 determines that the number of virtual machines is insufficient when the processing request being operated by the user is confirmed and transmitted. Then, it determines that the number of virtual machines to be activated is increased, and scale-out control is executed (step S105).

また、ステップS104において過不足数が0以上1未満であると判定された場合、仮想マシン数増減制御部43は、ユーザが操作中の処理要求が確定して送信されてきても、仮想マシン数が不足せずまた多過ぎもしないと判定して、仮想マシンの起動数を現状維持とする。 Further, when it is determined in step S104 that the excess/deficiency number is equal to or greater than 0 and less than 1, the virtual machine number increase/decrease control unit 43 determines the number of virtual machines even if the processing request being operated by the user is confirmed and transmitted. is neither insufficient nor excessive, and the current number of virtual machines to be activated is maintained.

また、ステップS104において過不足数が1以上であると判定された場合、仮想マシン数増減制御部43は、ユーザが操作中の処理要求が確定して送信されてきたとしても、仮想マシン数が多過ぎると判定する。そして、キュー(処理要求格納部32)に格納されている処理要求の数が0で、かつ100%空き状態の仮想マシンがある場合(ステップS106においてyes)、仮想マシン数増減制御部43は、仮想マシンの起動数を減少させるスケールイン制御を実行する(ステップS107)。 Further, when it is determined in step S104 that the excess/deficiency number is equal to or greater than 1, the virtual machine number increase/decrease control unit 43 determines the number of virtual machines even if the processing request being operated by the user is confirmed and transmitted. judged to be too much. Then, when the number of processing requests stored in the queue (processing request storage unit 32) is 0 and there is a 100% empty virtual machine (yes in step S106), the virtual machine number increase/decrease control unit 43 Scale-in control is executed to reduce the number of virtual machines to be activated (step S107).

このようにして実行されるスケールイン、スケールアウトの具体例について図11を参照して説明する。この図11では、時刻経過とともに連続して処理要求を受信する場合について説明する。 A specific example of scale-in and scale-out executed in this way will be described with reference to FIG. FIG. 11 illustrates a case where processing requests are received continuously as time elapses.

先ず、時刻t0において、起動中の仮想マシン数が1、未使用数が1で、必要数が1の場合、過不足数(未使用数-必要数)は0となる。そのため、仮想マシン数増減制御部43では、増減数は0と判定されることになる。 First, at time t0, if the number of running virtual machines is 1, the number of unused machines is 1, and the required number is 1, the excess/deficiency number (unused number - required number) is 0. Therefore, the virtual machine number increase/decrease control unit 43 determines that the increase/decrease number is zero.

そして、時刻t1において、起動中の仮想マシン数が1、未使用数が1で、必要数が2に増加した場合、過不足数は-1(=1-2)となる。そのため、仮想マシン数増減制御部43では、増減数は-1と判定され、仮想マシンの起動数を1増加させるスケールアウト制御が行われる。 At time t1, if the number of running virtual machines is 1, the number of unused machines is 1, and the required number increases to 2, the excess/deficiency number is -1 (=1-2). Therefore, the virtual machine number increase/decrease control unit 43 determines that the increase/decrease number is -1, and performs scale-out control to increase the number of activated virtual machines by one.

そして、時刻t2において、スケールアウト制御が行われたことにより起動中の仮想マシン数が2、未使用数が1で、必要数が1.5となった場合、過不足数は0.5(=2-1.5)となる。そのため、仮想マシン数増減制御部43では、増減数は0と判定されることになる。 Then, at time t2, if the number of running virtual machines is 2, the number of unused virtual machines is 1, and the required number is 1.5 due to the scale-out control being performed, the excess or deficiency is 0.5 ( = 2-1.5). Therefore, the virtual machine number increase/decrease control unit 43 determines that the increase/decrease number is zero.

そして、時刻t3において、起動中の仮想マシン数が2のままで、未使用数が1に減り、必要数が2に増加した場合、過不足数は-1(=1-2)となる。そのため、仮想マシン数増減制御部43では、増減数は-1と判定され、仮想マシンの起動数を1増加させるスケールアウト制御が行われる。 Then, at time t3, if the number of virtual machines being activated remains 2, the unused number decreases to 1, and the required number increases to 2, the excess/deficiency number becomes -1 (=1-2). Therefore, the virtual machine number increase/decrease control unit 43 determines that the increase/decrease number is -1, and performs scale-out control to increase the number of activated virtual machines by one.

もし、時刻t3において現在の起動中の仮想マシン数と、未使用の仮想マシン数である未使用数のみを参照してオートスケール制御が行われた場合、未使用数が1以上であるため仮想マシンの起動数を減らすスケールイン制御が行われてしまう。 If auto-scaling control is performed by referring only to the number of currently running virtual machines and the number of unused virtual machines at time t3, the number of unused virtual machines is 1 or more. Scale-in control is performed to reduce the number of machine startups.

しかし、時刻t3ではまだ確定していない処理要求に基づく必要数が2であるため、過不足数が-1となり逆に起動数を増加させるようなスケールアウト制御が行われる。 However, at time t3, the required number based on the processing request that has not yet been determined is 2, so the excess/deficiency becomes -1, and conversely, scale-out control is performed to increase the number of activations.

そして、時刻t4では、スケールアウト制御が行われたことにより起動中の仮想マシン数が3となり、未使用数が2で、必要数が1となった場合、過不足数は1(=2-1)となる。そのため、仮想マシン数増減制御部43では、増減数は-1と判定され、仮想マシンの起動数を1減少させるスケールイン制御が行われる。 At time t4, scale-out control is performed, and if the number of running virtual machines is 3, the unused number is 2, and the required number is 1, the excess/deficiency is 1 (=2- 1). Therefore, the virtual machine number increase/decrease control unit 43 determines that the increase/decrease number is -1, and performs scale-in control to decrease the number of activated virtual machines by one.

その結果、時刻t5では、スケールイン制御が行われたことにより起動中の仮想マシン数が2となり、未使用数が1で、必要数が1となった場合、過不足数は0(=1-1)となる。そのため、仮想マシン数増減制御部43では、増減数は0と判定されることになる。 As a result, at time t5, due to the scale-in control, the number of running virtual machines is 2, the unused number is 1, and the required number is 1. If the number of excesses and deficiencies is 0 (=1 -1). Therefore, the virtual machine number increase/decrease control unit 43 determines that the increase/decrease number is zero.

最後に、時刻t6において、起動中の仮想マシン数が2のままで、未使用数が1、必要数が0.5となった場合、過不足数は0.5(=1-0.5)となる。そのため、仮想マシン数増減制御部43では、増減数は0と判定されることになる。 Finally, at time t6, if the number of running virtual machines remains 2, the unused number is 1, and the required number is 0.5, the excess/deficiency is 0.5 (=1-0.5 ). Therefore, the virtual machine number increase/decrease control unit 43 determines that the increase/decrease number is zero.

次に、本実施形態のサービス提供装置10における動作を図12のシーケンスチャートを参照して説明する。 Next, the operation of the service providing apparatus 10 of this embodiment will be described with reference to the sequence chart of FIG.

先ず、処理要求の確定前において画像形成装置20からサービス提供装置10に対して処理要求の内容に関する操作情報が送信されてくる(ステップS201)。 First, before the processing request is confirmed, the image forming apparatus 20 transmits operation information regarding the content of the processing request to the service providing apparatus 10 (step S201).

例えば、図13に示すように、画像形成装置20において、ユーザがあるサービスを利用するために操作パネル71上において画像の選択を行っている場合、ユーザが利用しているサービスの内容や、現在選択中の画像データのデータ量、データ種類等の情報が操作情報としてサービス提供装置10に送信される。 For example, as shown in FIG. 13, in the image forming apparatus 20, when the user selects an image on the operation panel 71 in order to use a certain service, the contents of the service used by the user and the current Information such as the data amount and data type of the image data being selected is transmitted to the service providing apparatus 10 as operation information.

すると、サービス提供装置10における予測部35は、画像形成装置20から受信した操作情報に基づいて、その処理要求が送信されてきた場合に必要となる仮想マシンの数を必要数として予測する(ステップS202) Based on the operation information received from the image forming apparatus 20, the prediction unit 35 in the service providing apparatus 10 predicts the number of virtual machines that will be required when the processing request is sent (step S202)

そして、予測部35において予測された必要数の情報はオートスケール制御部33に送信される(ステップS203)。 Information on the required number predicted by the prediction unit 35 is transmitted to the autoscale control unit 33 (step S203).

オートスケール制御部33では、処理要求格納部32に格納されている処理要求のデータ量を取得して(ステップS204)、取得した処理要求のデータ量と予測部35から受信した必要数の情報に基づいて、処理実行部36における仮想マシンの起動数の増減制御を行う(ステップS205)。 The autoscale control unit 33 acquires the data amount of the processing request stored in the processing request storage unit 32 (step S204), and compares the acquired data amount of the processing request with the required number of information received from the prediction unit 35. Based on this, the processing execution unit 36 controls the increase/decrease in the number of virtual machines activated (step S205).

その後、画像形成装置20において処理要求の処理内容が確定して、画像形成装置20からサービス提供装置10に処理要求が送信されてくると(ステップS206)、その処理要求は処理要求格納部32にキューとして格納される(ステップS207)。 Thereafter, when the processing content of the processing request is determined in the image forming apparatus 20 and the processing request is transmitted from the image forming apparatus 20 to the service providing apparatus 10 (step S206), the processing request is stored in the processing request storage unit 32. It is stored as a queue (step S207).

すると、処理実行部36は、処理要求格納部32に格納されている処理要求を取得して(ステップS208)、取得した処理要求に基づく処理を実行する(ステップS209)。 Then, the processing execution unit 36 acquires the processing request stored in the processing request storage unit 32 (step S208), and executes processing based on the acquired processing request (step S209).

そして、得られた処理結果は処理結果格納部37に格納されて、処理結果送信部38から各種サーバ装置に送信される。 The obtained processing result is stored in the processing result storage unit 37 and transmitted from the processing result transmission unit 38 to various server devices.

[変形例]
上記実施形態では、サービス提供装置10に対して処理要求を送信するクライアント装置が画像形成装置20である場合を用いて説明したが、本発明はこのような場合に限定されるものではなく、スマートフォン、携帯電話端末、タブレット端末等の各種装置をクライアント装置として用いる場合でも同様に適用することが可能である。
[Variation]
In the above embodiment, the image forming apparatus 20 is the client apparatus that transmits the processing request to the service providing apparatus 10. However, the present invention is not limited to such a case. , a mobile phone terminal, a tablet terminal, etc., can be similarly applied.

10 サービス提供装置
11 CPU
12 メモリ
13 記憶装置
14 通信インタフェース(IF)
15 ユーザインタフェース(UI)装置
16 制御バス
20 画像形成装置
30 ネットワーク
31 処理要求受付部
32 処理要求格納部
33 オートスケール制御部
34 受信部
35 予測部
36 処理実行部
37 処理結果格納部
38 処理結果送信部
41 未使用数算出部
42 過不足数算出部
43 仮想マシン数増減制御部
51 仮想マシン
61 領収書保存サーバ
62 名刺管理サーバ
63 データ保存サーバ
71 操作パネル
10 service providing device 11 CPU
12 memory 13 storage device 14 communication interface (IF)
15 User Interface (UI) Device 16 Control Bus 20 Image Forming Device 30 Network 31 Processing Request Receiving Unit 32 Processing Request Storage Unit 33 Autoscale Control Unit 34 Reception Unit 35 Prediction Unit 36 Processing Execution Unit 37 Processing Result Storage Unit 38 Processing Result Transmission Unit 41 Unused number calculation unit 42 Excess/shortage number calculation unit 43 Virtual machine number increase/decrease control unit 51 Virtual machine 61 Receipt storage server 62 Business card management server 63 Data storage server 71 Operation panel

Claims (6)

クライアント装置からの複数の処理要求を連続的に受付ける受付手段と、
前記受付手段により受付けられた処理要求を一時的に格納する格納手段と、
前記格納手段に格納されている処理要求を取得して、取得した処理要求に基づく処理を実行する実行手段と、
前記受付手段により処理要求を受付ける前に、前記クライアント装置において処理要求の処理内容が確定する前にユーザの操作内容を参照することにより生成された情報であって、ユーザが処理を実行しようとするデータの種類に関する情報、そのユーザが処理を実行しようとするデータのデータ量に関する情報、及び、そのユーザが実行しようとする処理内容の種類に関する情報のうちの少なくとも1つの情報を前記クライアント装置から受信する受信手段と、
前記受信手段により受信された前記情報を用いて、当該処理要求を処理するために必要な仮想マシンの必要数を順次予測する予測手段と、
前記格納手段に格納された実行待ちの処理要求の量に応じて前記実行手段において起動する仮想マシンの数を増減させる制御を行う際に、前記予測手段により予測された仮想マシンの必要数が確保されるように仮想マシンの数を制御する制御手段と、
を備えた情報処理装置。
receiving means for continuously receiving a plurality of processing requests from a client device;
a storage means for temporarily storing the processing request accepted by the acceptance means;
execution means for acquiring the processing request stored in the storage means and executing processing based on the acquired processing request;
Information generated by referring to the user's operation content before the processing request is accepted by the receiving means and before the processing content of the processing request is determined in the client device, and the user intends to execute the processing. Receive from the client device at least one of information on the type of data, information on the amount of data the user intends to process, and information on the type of processing content the user intends to execute. receiving means for
prediction means for sequentially predicting the required number of virtual machines required to process the processing request using the information received by the reception means;
Securing the necessary number of virtual machines predicted by the prediction means when performing control to increase or decrease the number of virtual machines activated by the execution means according to the amount of processing requests waiting for execution stored in the storage means. a control means for controlling the number of virtual machines so that
Information processing device with
前記予測手段は、前記情報が更新された場合、当該処理要求を処理するために必要な仮想マシンの必要数を再度予測する請求項記載の情報処理装置。 2. The information processing apparatus according to claim 1 , wherein, when said information is updated, said prediction means again predicts the required number of virtual machines required to process said processing request. 前記制御手段は、
仮想マシンの使用状況から起動中の未使用の仮想マシンの数である未使用数を算出する第1の算出手段と、
前記未使用数から前記予測手段により予測された必要数を減算することにより、当該処理要求を処理した場合に発生する仮想マシンの過不足数を算出する第2の算出手段とを備え、
前記過不足数により表された仮想マシンの過不足が解消されるように仮想マシンの数を制御することにより、前記予測手段により予測された仮想マシンの必要数が確保されるような仮想マシンの数の制御を実行する請求項1又は2記載の情報処理装置。
The control means is
a first calculation means for calculating an unused number, which is the number of unused virtual machines being activated, from the usage status of the virtual machines;
a second calculation means for calculating an excess or deficiency of virtual machines generated when the processing request is processed by subtracting the required number predicted by the prediction means from the unused number;
By controlling the number of virtual machines so as to eliminate the excess/deficiency of the virtual machines represented by the excess/deficiency number, the necessary number of virtual machines predicted by the prediction means is secured. 3. The information processing apparatus according to claim 1, wherein number control is executed.
前記制御手段は、前記未使用数が1以上であっても、前記過不足数が1より小さい場合には、仮想マシンの数を減じる制御を実行しない請求項記載の情報処理装置。 4. The information processing apparatus according to claim 3 , wherein said control means does not execute control to reduce the number of virtual machines when said excess/deficiency number is smaller than 1 even if said unused number is 1 or more. 前記受信手段は、前記受付手段により受け付けた処理要求が、前記格納手段に格納される前に、前記情報を前記クライアント装置から受信する請求項1からのいずれか1項記載の情報処理装置。 5. The information processing apparatus according to claim 1, wherein said receiving means receives said information from said client device before said processing request received by said receiving means is stored in said storing means. クライアント装置からの複数の処理要求を連続的に受付ける受付ステップと、
前記受付ステップにおいて受付けられた処理要求を格納手段に一時的に格納する格納ステップと、
前記格納手段に格納されている処理要求を取得して、取得した処理要求に基づく処理を実行手段において実行する実行ステップと
前記受付ステップにおいて処理要求を受付ける前に、前記クライアント装置において処理要求の処理内容が確定する前にユーザの操作内容を参照することにより生成された情報であって、ユーザが処理を実行しようとするデータの種類に関する情報、そのユーザが処理を実行しようとするデータのデータ量に関する情報、及び、そのユーザが実行しようとする処理内容の種類に関する情報のうちの少なくとも1つの情報を前記クライアント装置から受信する受信ステップと、
前記受信ステップにおいて受信された前記処理要求の処理負荷を予測可能な情報を用いて、当該処理要求を処理するために必要な仮想マシンの必要数を順次予測する予測ステップと、
前記格納手段に格納された実行待ちの処理要求の量に応じて前記実行手段において起動する仮想マシンの数を増減させる制御を行う際に、前記予測ステップにおいて予測された仮想マシンの必要数が確保されるように仮想マシンの数を制御する制御ステップと、
をコンピュータに実行させるためのプログラム。
a receiving step of continuously receiving a plurality of processing requests from a client device;
a storage step of temporarily storing the processing request received in the receiving step in a storage means;
an execution step of acquiring the processing request stored in the storage means and executing a process based on the acquired processing request in the execution means;
Information generated by referring to the user's operation content before the processing request is accepted in the receiving step and before the processing content of the processing request is determined in the client device, and the user intends to execute the processing. Receive from the client device at least one of information on the type of data, information on the amount of data the user intends to process, and information on the type of processing content the user intends to execute. a receiving step for
a prediction step of sequentially predicting the required number of virtual machines required to process the processing request, using information capable of predicting the processing load of the processing request received in the receiving step;
Securing the necessary number of virtual machines predicted in the prediction step when performing control to increase or decrease the number of virtual machines activated by the execution means according to the amount of processing requests waiting to be executed stored in the storage means a control step for controlling the number of virtual machines so that
A program that causes a computer to run
JP2018165624A 2018-09-05 2018-09-05 Information processing device and program Active JP7230375B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018165624A JP7230375B2 (en) 2018-09-05 2018-09-05 Information processing device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018165624A JP7230375B2 (en) 2018-09-05 2018-09-05 Information processing device and program

Publications (2)

Publication Number Publication Date
JP2020038518A JP2020038518A (en) 2020-03-12
JP7230375B2 true JP7230375B2 (en) 2023-03-01

Family

ID=69738024

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018165624A Active JP7230375B2 (en) 2018-09-05 2018-09-05 Information processing device and program

Country Status (1)

Country Link
JP (1) JP7230375B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015087936A (en) 2013-10-30 2015-05-07 富士ゼロックス株式会社 Information processing device, information processing system, and program
JP2017033234A (en) 2015-07-31 2017-02-09 日本電信電話株式会社 Request reception system, request reception method and program
JP2017215901A (en) 2016-06-02 2017-12-07 富士ゼロックス株式会社 Information processing device, information processing system and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015087936A (en) 2013-10-30 2015-05-07 富士ゼロックス株式会社 Information processing device, information processing system, and program
JP2017033234A (en) 2015-07-31 2017-02-09 日本電信電話株式会社 Request reception system, request reception method and program
JP2017215901A (en) 2016-06-02 2017-12-07 富士ゼロックス株式会社 Information processing device, information processing system and program

Also Published As

Publication number Publication date
JP2020038518A (en) 2020-03-12

Similar Documents

Publication Publication Date Title
JP5598229B2 (en) Job distributed processing system, information processing apparatus, and program
US8896864B2 (en) Image processing system, image processing method, image processing server, and recording medium
JP6273773B2 (en) Information processing apparatus, information processing system, and program
US10601904B2 (en) Cooperation system
EP3557403B1 (en) Image forming system and image forming method
JP4474440B2 (en) Provision of services using multifunction peripherals (MFPs)
JP7230375B2 (en) Information processing device and program
KR20190088292A (en) Controlling apps providing same or similar services in an image forming apparatus supporting multiple platforms
JP2015087936A (en) Information processing device, information processing system, and program
JP6597971B2 (en) Image forming apparatus and program
JP6669101B2 (en) Electronic device and startup sequence generation program
JP2016177481A (en) Image processing device, image forming apparatus, and program
JP5750018B2 (en) Image processing system, printing system, control device, image processing method and program
JP7230374B2 (en) Information processing device and program
JP2016184357A (en) Information processing device, program, and information processing method
EP3644191A1 (en) Memory system and electronic device
JP6834549B2 (en) Job processing device
JP2014182412A (en) Information processor, information processing method and program
JP6988644B2 (en) Information processing system, information processing device, information processing method and program
JP5742285B2 (en) Image forming apparatus, usage restriction method, and usage restriction program
JP6579087B2 (en) Electronic device and startup sequence generation program
JP2020144565A (en) Electronic device and activation sequence generation program
JP6222200B2 (en) Information processing apparatus, electronic device control system, and program
JP2009151376A (en) Distribution processing method, calculator management device, and distribution processing system
JP2023170564A (en) Information processing apparatus, image formation apparatus, information processing method, and information processing program

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20201102

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210831

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220914

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

R150 Certificate of patent or registration of utility model

Ref document number: 7230375

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150