JP2018133046A - Software control program, software control device, and software control method - Google Patents

Software control program, software control device, and software control method Download PDF

Info

Publication number
JP2018133046A
JP2018133046A JP2017028219A JP2017028219A JP2018133046A JP 2018133046 A JP2018133046 A JP 2018133046A JP 2017028219 A JP2017028219 A JP 2017028219A JP 2017028219 A JP2017028219 A JP 2017028219A JP 2018133046 A JP2018133046 A JP 2018133046A
Authority
JP
Japan
Prior art keywords
software
application
request message
memory
stored
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
JP2017028219A
Other languages
Japanese (ja)
Inventor
宮▲崎▼ 啓二
Keiji Miyazaki
啓二 宮▲崎▼
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017028219A priority Critical patent/JP2018133046A/en
Publication of JP2018133046A publication Critical patent/JP2018133046A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To solve the problem of having the possibility of, when receiving a request message addressed to an application which is not activated in a PaaS system from a user, omitting the request message addressed to the application.SOLUTION: A software control program causes a computer to execute processing for, when receiving a request message addressed to first software from a user, storing the request message addressed to the first software in a second memory, and for, when the operating state of the first software is under suspension, and a total amount obtained by adding the resource of software whose operating state is under activation among software of a first contractor associated with the first software and the resource of the first software does not exceed a resource upper limit amount of the first contractor, requesting the activation of the first software to the system, and for transferring the request message stored in the second memory to the system after the activation of the first software, and for changing the operating state of the first software to under activation.SELECTED DRAWING: Figure 1

Description

本発明は、ソフトウェア制御プログラム、ソフトウェア制御装置及びソフトウェア制御方法に関する。   The present invention relates to a software control program, a software control apparatus, and a software control method.

従来、PaaS(Platform as a Service)システムを開発者(以下、契約者ともいう)が利用する場合、予めリソース量を契約し、そのリソース量に収まるようにアプリケーションプログラム(以下、アプリともいう)の登録・削除が行われる。利用する全てのアプリを登録可能なリソース量を契約すれば、アプリの登録・削除は不要であるが、そのようにすると、利用料金が高額になるため、一般的に、アプリの登録・削除が必要となる。   Conventionally, when a developer (hereinafter also referred to as a contractor) uses a PaaS (Platform as a Service) system, a resource amount is contracted in advance, and an application program (hereinafter also referred to as an application) is set so as to be within the resource amount. Registration / deletion is performed. If you register the amount of resources that can be used to register all the apps you use, there is no need to register / delete apps. However, if you do so, the usage fee will be high. Necessary.

以下の特許文献は、プログラム処理について関連する。   The following patent documents relate to program processing.

特開平5−224941号公報Japanese Patent Laid-Open No. 5-224941 特開平8−185297号公報JP-A-8-185297 特開2010−237972号公報JP 2010-237972 A

しかしながら、ユーザからPaaSシステムで起動していないアプリ宛の要求メッセージを受信すると、そのアプリ宛の要求メッセージを取りこぼす場合があるという課題がある。   However, when a request message addressed to an application not activated in the PaaS system is received from the user, there is a problem that the request message addressed to the application may be missed.

そこで、本開示の第1の側面の目的は、ユーザから受信したPaaSシステムで起動していないソフトウェア宛(例えば、アプリ宛)の要求メッセージの取りこぼしを抑制することができるソフトウェア(例えば、アプリ)制御プログラムを提供することにある。   Accordingly, an object of the first aspect of the present disclosure is to control software (for example, an application) that can prevent a request message received from a user (for example, for an application) that is not activated in the PaaS system from being missed. To provide a program.

本開示の第1の側面は、システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアの停止を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況を停止中に変更し、ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、該第1ソフトウェアの運用状況が起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、該第1ソフトウェアの運用状況が停止中の場合、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの起動を前記システムに要求し、該第1ソフトウェアの起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を起動中に変更する第3処理を行う、処理をコンピュータで実行させるソフトウェア制御プログラムである。   According to a first aspect of the present disclosure, software that is activated in a system and operation status of the software in the system are stored in a first memory for each contractor, and software that has passed a predetermined time since the last request message was processed Requesting the system to be stopped, changing the operating status of the software after the predetermined time has passed to stop, and receiving a request message addressed to the first software from the user, the request addressed to the first software is stored in the second memory. A first process for storing a message is performed, and when the operating status of the first software is activated, a second process for transferring a request message stored in the second memory to the system is performed, and the first software When the operation status is suspended, the operation of the software of the first contractor associated with the first software is performed. If the total amount of the resources of the activated software and the resources of the first software does not exceed the resource upper limit amount of the first contractor, the system requests the system to start the first software, After starting the first software, the request message stored in the second memory is transferred to the system, and the third process for changing the operating status of the first software during the start is performed by the computer. Software control program.

本開示の第2の側面は、システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、運用状況が正規ソフトウェアとして起動中のソフトウェアのうち最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアのダミーソフトウェアとしての起動を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況をダミーソフトウェアとして起動中に変更し、ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、該第1ソフトウェアの運用状況が正規ソフトウェアとして起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、該第1ソフトウェアの運用状況がダミーソフトウェアとして起動中の場合、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶し、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの正規ソフトウェアとしての起動を前記システムに要求し、該第1ソフトウェアが正規ソフトウェアとして起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を正規ソフトウェアとして起動中に変更する第3処理を行う、処理をコンピュータで実行させるソフトウェア制御プログラムである。   According to a second aspect of the present disclosure, the software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor, and the operation status is the last of the software activated as the regular software. Requests the system to start the software as a dummy software after a predetermined time has elapsed from the time when the request message was processed, and changes the operating status of the software after the predetermined time has passed during the startup as a dummy software. When a request message for the first software is received, the first process for storing the request message addressed to the first software is performed in the second memory. When the operating status of the first software is activated as the regular software, the second memory Forward the stored request message to the system When the second processing is performed and the operating status of the first software is being activated as dummy software, a request message addressed to the first software is stored in the second memory, and the first contract associated with the first software If the total amount of the software resources whose operating status is activated and the resources of the first software does not exceed the resource upper limit amount of the first contractor, the authorized software of the first software After the first software is activated as authorized software, the request message stored in the second memory is transferred to the system and the operation status of the first software is activated as authorized software. The third process to change to Is a Towea control program.

第1の側面及び第2の側面によれば、ユーザから受信したPaaSシステムで起動していないソフトウェア宛(例えば、アプリ宛)の要求メッセージの取りこぼしを抑制することができる。   According to the first aspect and the second aspect, it is possible to suppress missing of a request message received from a user and addressed to software that is not activated in the PaaS system (for example, to an application).

第1実施形態の情報処理システム10の概略構成図である。1 is a schematic configuration diagram of an information processing system 10 according to a first embodiment. ホストコンピュータ21のハードウェア構成の一例を示す図である。2 is a diagram illustrating an example of a hardware configuration of a host computer 21. FIG. ホストコンピュータ21におけるアプリケーションプログラム実行環境を説明する図である。It is a figure explaining the application program execution environment in the host computer. PaaSシステム20の主要機能及びPaaSシステム20が持つテーブルを説明するための図である。It is a figure for demonstrating the main function of the PaaS system 20, and the table which the PaaS system 20 has. アプリ情報テーブル21nの一例である。It is an example of the application information table 21n. 開発者リソース制限テーブル21pの一例である。It is an example of the developer resource restriction table 21p. ホストコンピュータ31のハードウェア構成の一例を示す図である。2 is a diagram illustrating an example of a hardware configuration of a host computer 31. FIG. アプリ起動制御システム30の主要機能及びアプリ起動制御システム30が持つテーブルを説明するための図である。It is a figure for demonstrating the main function of the application starting control system 30, and the table which the application starting control system 30 has. 登録済みアプリ管理テーブル31sの一例である。It is an example of the registered application management table 31s. 要求キュー31tの一例である。It is an example of the request queue 31t. アプリ変更時間テーブル31uの一例である。It is an example of the application change time table 31u. ダミーアプリ&正規アプリ記憶部31vの一例であるIt is an example of a dummy application & regular application storage unit 31v アプリ起動制御システム30におけるアプリ登録処理の一例を説明するためのフローチャートである。5 is a flowchart for explaining an example of an application registration process in the application activation control system 30. 登録済みアプリ管理テーブル31s(apr04登録後)の一例である。It is an example of a registered application management table 31s (after apr04 registration). アプリ情報テーブル21n(apr04登録後)の一例である。It is an example of the application information table 21n (after apr04 registration). アプリ情報テーブル21n(apr04登録後)の一例である。It is an example of the application information table 21n (after apr04 registration). (a)アプリ変更時間テーブル31u(apr04登録前)の一例、(b)アプリ変更時間テーブル31u(apr04登録後)の一例である。(A) An example of application change time table 31u (before apr04 registration), (b) An example of application change time table 31u (after apr04 registration). アプリ起動制御システム30におけるダミーアプリ起動処理の一例を説明するためのフローチャートである。5 is a flowchart for explaining an example of a dummy application activation process in the application activation control system 30. アプリ起動制御システム30における要求メッセージ受信処理を説明するためのフローチャートである。4 is a flowchart for explaining a request message reception process in the application activation control system 30. アプリ起動制御システム30における要求メッセージ受信処理を説明するためのフローチャートである。4 is a flowchart for explaining a request message reception process in the application activation control system 30. 要求キュー31tの一例である。It is an example of the request queue 31t. アプリ起動制御システム30の主要機能及びアプリ起動制御システム30が持つテーブルを説明するための図である。It is a figure for demonstrating the main function of the application starting control system 30, and the table which the application starting control system 30 has. アプリ停止時間テーブル31u2の一例である。It is an example of the application stop time table 31u2. 登録済みアプリ管理テーブル31s2の一例である。It is an example of a registered application management table 31s2. 第2実施形態のアプリ起動制御システム30におけるアプリ停止処理の一例を説明するためのフローチャートである。It is a flowchart for demonstrating an example of the application stop process in the application starting control system 30 of 2nd Embodiment. アプリ起動制御システム30における要求メッセージ受信処理を説明するためのフローチャートである。4 is a flowchart for explaining a request message reception process in the application activation control system 30. アプリ起動制御システム30における要求メッセージ受信処理を説明するためのフローチャートである。4 is a flowchart for explaining a request message reception process in the application activation control system 30.

[第1実施形態]
まず、第1実施形態の情報処理システム10の概要について説明する。
[First Embodiment]
First, an overview of the information processing system 10 according to the first embodiment will be described.

図1は、第1実施形態の情報処理システム10の概略構成図である。   FIG. 1 is a schematic configuration diagram of an information processing system 10 according to the first embodiment.

図1に示すように、本実施形態の情報処理システム10は、PaaSシステム20、アプリ起動制御システム30、開発者端末40、アプリ利用者端末50等を備える。開発者が本発明の契約者に相当し、アプリ利用者が本発明のユーザに相当する。   As shown in FIG. 1, the information processing system 10 of this embodiment includes a PaaS system 20, an application activation control system 30, a developer terminal 40, an application user terminal 50, and the like. The developer corresponds to the contractor of the present invention, and the application user corresponds to the user of the present invention.

開発者端末40は、インターネット等のネットワークNWを介してPaaSシステム20、アプリ起動制御システム30に接続する。アプリ利用者端末50は、ネットワークNWを介してアプリ起動制御システム30に接続する。   The developer terminal 40 is connected to the PaaS system 20 and the application activation control system 30 via a network NW such as the Internet. The application user terminal 50 is connected to the application activation control system 30 via the network NW.

開発者は、開発者端末40を介して正規アプリの登録要求をアプリ起動制御システム30に送信する。アプリ起動制御システム30は、開発者から正規アプリの登録要求を受信したとき、該アプリ及び該アプリのPaaSシステム20での運用状況を開発者ごとに登録済みアプリ管理テーブル31sに記憶する。正規アプリとは、通常アプリと比べ、アプリ利用者の利用頻度が低い(1日に1回、1週間に1回、又は、月に1回等)アプリのことである。正規アプリが本発明の正規ソフトウェアに相当する。   The developer transmits a regular application registration request to the application activation control system 30 via the developer terminal 40. When the application activation control system 30 receives a registration request for a regular application from a developer, the application activation control system 30 stores the application and the operation status of the application in the PaaS system 20 for each developer in the registered application management table 31s. A regular application is an application that is less frequently used by an application user (once a day, once a week, or once a month, etc.) than a normal application. The regular application corresponds to the regular software of the present invention.

また、開発者は、開発者端末40を介して通常アプリをPaaSシステム20に登録する。通常アプリとは、正規アプリと比べ、アプリ利用者の利用頻度が高いアプリのことである。PaaSシステム20は、その登録された通常アプリがコピーされたコンテナを作成し、そのコンテナ(及び通常アプリ)を起動させる。なお、通常アプリのPaaSシステム20での運用状況は、アプリ起動制御システム30(登録済みアプリ管理テーブル31s)に記憶されない。   Further, the developer registers the normal application in the PaaS system 20 via the developer terminal 40. A normal application is an application that is used more frequently by application users than a regular application. The PaaS system 20 creates a container in which the registered normal application is copied, and activates the container (and the normal application). The operation status of the normal application in the PaaS system 20 is not stored in the application activation control system 30 (registered application management table 31s).

アプリ利用者は、アプリ利用者端末50を介して第1アプリ宛の要求メッセージをアプリ起動制御システム30に送信する。   The application user transmits a request message addressed to the first application to the application activation control system 30 via the application user terminal 50.

アプリ起動制御システム30は、アプリ変更時間テーブル31uを参照して、運用状況が正規アプリとして起動中のアプリのうち最後の要求メッセージを処理(例えば、受信)した時刻(例えば、要求メッセージ受信時刻)から所定時間経過したアプリのダミーアプリとしての起動をPaaSシステム20に要求するとともに所定時間経過したアプリ変更時間テーブル31u中のアプリの運用状況をダミーアプリとして起動中に変更する。   The application activation control system 30 refers to the application change time table 31u, and the time when the last request message is processed (for example, received) among the applications whose operation status is activated as a regular application (for example, the request message reception time) The PaaS system 20 is requested to start an application for which a predetermined time has passed since the application as a dummy application, and the operation status of the application in the application change time table 31u after the predetermined time has been changed to being started as a dummy application.

なお、最後の要求メッセージを処理した時刻は、要求メッセージ受信時刻に限らず、要求キュー31tに記憶された該最後の要求メッセージをPaaSシステム20に転送した時刻であってもよい。   The time at which the last request message is processed is not limited to the request message reception time, but may be the time at which the last request message stored in the request queue 31t is transferred to the PaaS system 20.

ダミーアプリとは、正規アプリと比べ、リソース(メモリやディスク)の使用量が小さいアプリのことである。ダミーアプリが本発明のダミーソフトウェアに相当する。PaaSシステム20は、ダミーアプリがコピーされたコンテナを作成し、そのコンテナ(及びダミーアプリ)を起動させる。   A dummy app is an app that uses less resources (memory or disk) than a regular app. The dummy application corresponds to the dummy software of the present invention. The PaaS system 20 creates a container in which the dummy application is copied, and activates the container (and the dummy application).

また、アプリ起動制御システム30は、アプリ利用者から第1アプリ宛の要求メッセージを受信したとき、次の処理を行う。   Further, the application activation control system 30 performs the following process when receiving a request message addressed to the first application from the application user.

アプリ起動制御システム30は、登録済みアプリ管理テーブル31sを参照して第1アプリの運用状況がダミーアプリとして起動中の場合、要求キュー31tに第1アプリ宛の要求メッセージを記憶する。要求キュー31tが本発明の第2メモリに相当する。   The application activation control system 30 stores a request message addressed to the first application in the request queue 31t when the operation status of the first application is activated as a dummy application with reference to the registered application management table 31s. The request queue 31t corresponds to the second memory of the present invention.

次に、第1アプリに対応づけられた第1契約者のアプリのうち運用状況が起動中(正規アプリとして起動中及びダミーアプリとして起動中の両方を含む)のアプリの予約済みメモリ量と第1アプリの予約済みメモリ量とを加算した合計量が、第1契約者のメモリ上限量を超えない場合、第1アプリの正規アプリとしての起動をPaaSシステム20に要求する。PaaSシステム20は、正規アプリがコピー(ダミーアプリに上書き)されたコンテナ(及び正規アプリ)を起動させる。   Next, among the apps of the first contractor associated with the first app, the reserved memory amount of the app whose operation status is running (including both running as a regular app and running as a dummy app) and the first When the total amount obtained by adding the reserved memory amount of one application does not exceed the memory upper limit amount of the first contractor, the PaaS system 20 is requested to start the first application as a regular application. The PaaS system 20 activates the container (and the regular application) in which the regular application is copied (overwritten on the dummy application).

そして、第1アプリがPaaSシステム20で正規アプリとして起動後、要求キュー31tに記憶された第1アプリ宛の要求メッセージをPaaSシステム20に転送するとともに登録済みアプリ管理テーブル31s中の第1アプリの運用状況を正規アプリとして起動中に変更する。PaaSシステム20は、第1アプリ宛の要求メッセージを正規アプリとして起動中の第1アプリに転送する。   After the first application is activated as a regular application in the PaaS system 20, the request message addressed to the first application stored in the request queue 31t is transferred to the PaaS system 20, and the first application in the registered application management table 31s is transferred. Change the operating status as a regular app while it is running. The PaaS system 20 transfers a request message addressed to the first application to the active first application as a regular application.

次に、PaaSシステム20について詳細に説明する。   Next, the PaaS system 20 will be described in detail.

図1に示すように、PaaSシステム20は、例えば、ホストコンピュータ21(サーバ装置)及びストレージ22を含む。ホストコンピュータ21及びストレージ22は、それぞれ、1つであってもよいし、複数であってもよい。   As shown in FIG. 1, the PaaS system 20 includes, for example, a host computer 21 (server device) and a storage 22. There may be one or more host computers 21 and storages 22 respectively.

ホストコンピュータ21は、例えば、ハイパーバイザ型仮想化、コンテナ型仮想化、又はこれらを組み合わせたハイブリッド型仮想化を行って、仮想化されたアプリケーション実行環境を提供する。   The host computer 21 provides a virtualized application execution environment by performing, for example, hypervisor type virtualization, container type virtualization, or hybrid type combination thereof.

ストレージ22には、ホストコンピュータ21が実行するOSやアプリケーションプログラム、アプリケーションプログラムが用いるデータ等が記憶される。具体的には、ホストコンピュータ21で実行される仮想化環境21h、21jを生成するプログラム、VMやコンテナ上で実行されるアプリケーションの業務処理を行うためのプログラムやデータ等が記憶される。   The storage 22 stores an OS executed by the host computer 21, application programs, data used by the application programs, and the like. Specifically, a program for generating the virtualization environments 21h and 21j executed on the host computer 21, a program for performing business processing of an application executed on the VM or the container, data, and the like are stored.

図2は、ホストコンピュータ21のハードウェア構成の一例を示す図である。   FIG. 2 is a diagram illustrating an example of a hardware configuration of the host computer 21.

ホストコンピュータ21は、CPU21aと、入出力装置インタフェース回路21bと、メモリ21cと、ネットワークインタフェース回路21dと、ストレージインタフェース回路21eと、ローカルバスインタフェース回路21fと、を備える。   The host computer 21 includes a CPU 21a, an input / output device interface circuit 21b, a memory 21c, a network interface circuit 21d, a storage interface circuit 21e, and a local bus interface circuit 21f.

CPU21aは、内部バス21gを介して、メモリ21cや入出力装置インタフェース回路21b等の各インタフェース回路(21d〜21f)にアクセスする。   The CPU 21a accesses the interface circuits (21d to 21f) such as the memory 21c and the input / output device interface circuit 21b via the internal bus 21g.

CPU21aは、Central Processing Unit(CPU)、Micro-Processing Unit(MPU)等のプロセッサの電子部品である。CPU21aは、1つであってもよいし、複数であってもよい。   The CPU 21a is an electronic component of a processor such as a central processing unit (CPU) or a micro-processing unit (MPU). There may be one or more CPUs 21a.

CPU21aは、ストレージ22に格納されたプログラムやデータをメモリ21cに読み出して、仮想化環境21h、21jに関連するプログラム処理、及び、VMやコンテナ上で実行されるアプリケーションの業務処理に関するプログラムを実行する。   The CPU 21a reads programs and data stored in the storage 22 to the memory 21c, and executes programs related to the virtualization environments 21h and 21j and programs related to business processes of applications executed on the VM and the container. .

入出力装置インタフェース回路21bは、不図示のマウスやキーボード等のデバイスを含む周辺デバイスへの入出力を制御するための回路である。   The input / output device interface circuit 21b is a circuit for controlling input / output to / from peripheral devices including devices such as a mouse and a keyboard (not shown).

メモリ21cは、RAM(Random Access Memory)等の記憶デバイスである。   The memory 21c is a storage device such as a RAM (Random Access Memory).

ネットワークインタフェース回路21dは、ネットワークNWを介して他の装置(例えば、開発者端末40)と通信を行うためのインタフェース回路である。   The network interface circuit 21d is an interface circuit for communicating with other devices (for example, the developer terminal 40) via the network NW.

ストレージインタフェース回路21eは、ストレージ22へのアクセスを行うためのインタフェース回路である。   The storage interface circuit 21 e is an interface circuit for accessing the storage 22.

ローカルバスインタフェース回路21fは、ローカルバス21gを介して情報処理システム10内のアプリ起動制御システム30等と通信を行うためのインタフェース回路である。   The local bus interface circuit 21f is an interface circuit for communicating with the application activation control system 30 and the like in the information processing system 10 via the local bus 21g.

図3は、ホストコンピュータ21におけるアプリケーションプログラム実行環境を説明する図である。   FIG. 3 is a diagram for explaining an application program execution environment in the host computer 21.

ホストコンピュータ21においては、CPU21aやメモリ21c等を用いて、ハイパーバイザ型仮想化環境21hと、仮想マシン21h2上で稼働するコンテナ型仮想化環境21jとが動作するハイブリッド型仮想化環境が提供される。   In the host computer 21, a hybrid type virtual environment in which a hypervisor type virtual environment 21h and a container type virtual environment 21j operating on the virtual machine 21h2 operate is provided using the CPU 21a, the memory 21c, and the like. .

ハイパーバイザ型仮想化環境21hは、ハイパーバイザ21h1と、ハイパーバイザ21h1によって生成された仮想マシン21h2とを含む。ハイパーバイザ21h1は、仮想マシン21h2の起動や削除、仮想マシン21h2上で実行されるプログラムからのハードウェア資源へのアクセス要求の制御等を行う。   The hypervisor type virtualization environment 21h includes a hypervisor 21h1 and a virtual machine 21h2 generated by the hypervisor 21h1. The hypervisor 21h1 activates and deletes the virtual machine 21h2, controls access requests to hardware resources from programs executed on the virtual machine 21h2, and the like.

仮想マシン21h2は、ホストコンピュータ21のハードウェア資源を仮想化したものであり、仮想マシン21h2毎に独立したソフトウェア実行環境が提供される。図3において、2つの仮想マシン21h2が起動した例を示しているが、これに限らず、1又は複数(3以上)の仮想マシン21h2が起動する場合もある。   The virtual machine 21h2 is a virtualized hardware resource of the host computer 21, and an independent software execution environment is provided for each virtual machine 21h2. Although FIG. 3 shows an example in which two virtual machines 21h2 are activated, the present invention is not limited to this, and one or more (three or more) virtual machines 21h2 may be activated.

図3の例では、仮想マシン21h2において、コンテナ型仮想化環境21jが提供される。コンテナ型仮想化環境21jでは、仮想マシン21h2上でOS21j1が起動され、そのOS21j1上でコンテナ仮想化ソフトウェアがインストールされる。図3において、OS21j1上で2つのコンテナ21j2が起動した例を示しているが、これに限らず、OS21j1上で1又は複数(3以上)のコンテナ21j2が起動する場合もある。   In the example of FIG. 3, a container type virtual environment 21j is provided in the virtual machine 21h2. In the container type virtualization environment 21j, the OS 21j1 is started on the virtual machine 21h2, and the container virtualization software is installed on the OS 21j1. FIG. 3 shows an example in which two containers 21j2 are activated on the OS 21j1, but the present invention is not limited to this, and one or a plurality (three or more) of containers 21j2 may be activated on the OS 21j1.

コンテナ型仮想化環境21jでは、OS21j1によって、独立したアプリケーション実行環境であるコンテナ21j2が提供される。コンテナ型仮想化では過去に作成したアプリケーション実行環境を共通ファイルのイメージとして保存する。そして、保存したイメージをコピーし、アプリケーション実行環境ごとの設定を追加することで、新たなコンテナを容易に作成できる。そのため、コンテナ型仮想化環境は、PaaS(Platform as a Service)等の構築に適している。   In the container type virtualization environment 21j, the container 21j2 that is an independent application execution environment is provided by the OS 21j1. In container-type virtualization, an application execution environment created in the past is saved as an image of a common file. A new container can be easily created by copying the saved image and adding settings for each application execution environment. Therefore, the container type virtualization environment is suitable for construction of PaaS (Platform as a Service) or the like.

コンテナ21j2は、API(OS API)、その上にインストールされたJAVA(登録商標)等の実行環境(ビルドパック)、JAVA等の実行環境の上にコピーされたアプリケーションプログラム(通常アプリ、正規アプリ、又は、ダミーアプリ)等を含む。   The container 21j2 includes an API (OS API), an execution environment (build pack) such as JAVA (registered trademark) installed thereon, and an application program (normal application, regular application, Or a dummy app).

PaaSシステム20にアプリが登録されると、PaaSシステム20は、その登録されたアプリがコピーされたコンテナ21j2を作成し、そのコンテナ(及びアプリ)を起動させる。なお、PaaSシステム20にアプリを登録する際には、例えば、プッシュコマンドが用いられる(開発者端末40を介して通常アプリをPaaSシステム20に登録する場合)。   When an application is registered in the PaaS system 20, the PaaS system 20 creates a container 21j2 in which the registered application is copied, and activates the container (and the application). When registering an application in the PaaS system 20, for example, a push command is used (when registering a normal application in the PaaS system 20 via the developer terminal 40).

また、アプリ(旧アプリという)が既に登録されているPaaSシステム20に対して同じアプリ名のアプリ(新アプリという)のアプリ登録要求があった場合、PaaSシステム20は、旧アプリの開発者(例えば、ユーザ名)と新アプリの開発者(例えば、ユーザ名)とが同じであれば、登録を許可する。一方、PaaSシステム20は、旧アプリの開発者(例えば、ユーザ名)と新アプリの開発者(例えば、ユーザ名)とが異なっていれば、登録を許可しない。   In addition, when there is an application registration request for an application with the same application name (referred to as a new application) with respect to the PaaS system 20 where an application (referred to as an old application) has already been registered, the PaaS system 20 determines that the developer ( For example, if the user name) and the developer of the new application (for example, the user name) are the same, registration is permitted. On the other hand, if the developer (for example, user name) of the old application and the developer (for example, user name) of the new application are different, the PaaS system 20 does not permit registration.

図4は、PaaSシステム20の主要機能及びPaaSシステム20が持つテーブルを説明するための図である。   FIG. 4 is a diagram for explaining the main functions of the PaaS system 20 and the tables of the PaaS system 20.

図4に示す各機能は、CPU21aがストレージ22からメモリ21cに読み出された所定プログラムを実行することで実現される。図4に示す各機能の詳細については、後述する(図13、図18〜図20等参照)。   Each function shown in FIG. 4 is realized by the CPU 21a executing a predetermined program read from the storage 22 to the memory 21c. Details of each function shown in FIG. 4 will be described later (see FIG. 13, FIG. 18 to FIG. 20).

図5は、アプリ情報テーブル21nの一例である。アプリ情報テーブル21nは、例えば、ストレージ22に記憶されており、必要に応じてストレージ22からメモリ21cに読み出される。   FIG. 5 is an example of the application information table 21n. For example, the application information table 21n is stored in the storage 22, and is read from the storage 22 to the memory 21c as necessary.

アプリ情報テーブル21nは、アプリ及びそのアプリのPaaSシステム20での運用状況等を記憶する。アプリ情報テーブル21nは、開発者ごとに用意される。図5は例えば、開発者A用のアプリ情報テーブル21nの一例である。   The application information table 21n stores an application and an operation status of the application in the PaaS system 20. The application information table 21n is prepared for each developer. FIG. 5 is an example of the application information table 21n for developer A, for example.

図5に示すように、アプリ情報テーブル21nは、「アプリ名」、及び、その「アプリ名」の「URL名」、「使用CPU」、「使用メモリ」、「使用ディスク」、「予約済みメモリ量」、「予約済みディスク量」、「運用状況」等の項目を含む。   As shown in FIG. 5, the application information table 21 n includes “application name”, “URL name”, “used CPU”, “used memory”, “used disk”, “reserved memory” of the “application name”. Includes items such as “Amount”, “Reserved Disk Amount”, and “Operational Status”.

「アプリ名」には、PaaSシステム20に登録されたアプリのアプリ名が記憶される。   In “APP NAME”, the application name of the application registered in the PaaS system 20 is stored.

「URL名」には、「アプリ名」に記憶されたアプリ名のアプリにアクセスするためのURLが記憶される。   In “URL name”, a URL for accessing an application having an application name stored in “application name” is stored.

「使用CPU」には、「アプリ名」に記憶されたアプリ名のアプリが実際に使用しているCPU使用率が記憶される。   In “used CPU”, the CPU usage rate actually used by the application having the application name stored in “application name” is stored.

「使用メモリ」には、「アプリ名」に記憶されたアプリ名のアプリが実際に使用しているメモリ量が記憶される。   In the “used memory”, the memory amount actually used by the application having the application name stored in the “application name” is stored.

「使用ディスク」には、「アプリ名」に記憶されたアプリ名のアプリが実際に使用しているディスク量が記憶される。   In “used disk”, the disk amount actually used by the application having the application name stored in “application name” is stored.

「予約済みメモリ量」には、「アプリ名」に記憶されたアプリ名のアプリが使用可能なメモリの上限量が記憶される。   The “reserved memory amount” stores the upper limit amount of memory that can be used by the application having the application name stored in the “application name”.

「予約済みディスク量」には、「アプリ名」に記憶されたアプリ名のアプリが使用可能なディスクの上限量が記憶される。   The “reserved disk amount” stores the upper limit amount of a disk that can be used by the application having the application name stored in “application name”.

「運用状況」には、「アプリ名」に記憶されたアプリ名のアプリのPaaSシステム20での運用状況(起動状態ともいう)が記憶される。   In the “operation status”, an operation status (also referred to as an activated state) of the application having the application name stored in “application name” in the PaaS system 20 is stored.

図6は、開発者リソース制限テーブル21pの一例である。開発者リソース制限テーブル21pは、例えば、ストレージ22に記憶されており、必要に応じてストレージ22からメモリ21cに読み出される。なお、アプリ起動制御システム30も、開発者リソース制限テーブル21pを備えている(図8参照)。   FIG. 6 is an example of the developer resource restriction table 21p. The developer resource restriction table 21p is stored in the storage 22, for example, and is read from the storage 22 to the memory 21c as necessary. The application activation control system 30 also includes a developer resource restriction table 21p (see FIG. 8).

図6に示すように、開発者リソース制限テーブル21pは、「開発者名」、及び、その「開発者名」の「メモリ上限量(メモリ制限ともいう)」、「ディスク上限量(ディスク制限ともいう)」等の項目を含む。   As shown in FIG. 6, the developer resource limit table 21p includes “developer name”, “memory upper limit (also referred to as memory limit)” and “disk upper limit (also referred to as disk limit) of the“ developer name ”. ")".

「開発者名」には、PaaSシステム20を利用する旨の契約をした開発者名が記憶される。   The “developer name” stores the name of the developer who has contracted to use the PaaS system 20.

「メモリ上限量」には、「開発者名」に記憶された開発者が使用可能なメモリの上限量が記憶される。メモリ上限量が本発明のリソース上限量(又はリソース契約量ともいえる)に相当する。   The “memory upper limit amount” stores the upper limit amount of memory that can be used by the developer stored in the “developer name”. The memory upper limit amount corresponds to the resource upper limit amount (or resource contract amount) of the present invention.

「ディスク上限量」には、「開発者名」に記憶された開発者が使用可能なディスクの上限量が記憶される。   In the “disc upper limit amount”, the upper limit amount of the disc that can be used by the developer stored in the “developer name” is stored.

次に、アプリ起動制御システム30について詳細に説明する。   Next, the application activation control system 30 will be described in detail.

図1に示すように、アプリ起動制御システム30は、例えば、ホストコンピュータ31(サーバ装置)及びストレージ32を含む。ホストコンピュータ31及びストレージ32は、それぞれ、1つであってもよいし、複数であってもよい。   As shown in FIG. 1, the application activation control system 30 includes, for example, a host computer 31 (server device) and a storage 32. There may be one or more host computers 31 and storages 32, respectively.

図7は、ホストコンピュータ31のハードウェア構成の一例を示す図である。   FIG. 7 is a diagram illustrating an example of a hardware configuration of the host computer 31.

ホストコンピュータ31は、CPU31aと、入出力装置インタフェース回路31bと、メモリ31cと、ネットワークインタフェース回路31dと、ストレージインタフェース回路31eと、ローカルバスインタフェース回路31fと、を備える。   The host computer 31 includes a CPU 31a, an input / output device interface circuit 31b, a memory 31c, a network interface circuit 31d, a storage interface circuit 31e, and a local bus interface circuit 31f.

CPU31aは、内部バス31gを介して、メモリ31cや入出力装置インタフェース回路31b等の各インタフェース回路(31d〜31f)にアクセスする。   The CPU 31a accesses the interface circuits (31d to 31f) such as the memory 31c and the input / output device interface circuit 31b via the internal bus 31g.

CPU31aは、Central Processing Unit(CPU)、Micro-Processing Unit(MPU)等のプロセッサの電子部品である。CPU31aは、1つであってもよいし、複数であってもよい。   The CPU 31a is an electronic component of a processor such as a central processing unit (CPU) or a micro-processing unit (MPU). There may be one CPU 31a or a plurality of CPUs 31a.

入出力装置インタフェース回路31bは、不図示のマウスやキーボード等のデバイスを含む周辺デバイスへの入出力を制御するための回路である。   The input / output device interface circuit 31b is a circuit for controlling input / output to / from peripheral devices including devices such as a mouse and a keyboard (not shown).

メモリ31cは、RAM(Random Access Memory)等の記憶デバイスである。   The memory 31c is a storage device such as a RAM (Random Access Memory).

ネットワークインタフェース回路31dは、ネットワークNWを介して他の装置(例えば、開発者端末40やアプリ利用者端末50)と通信を行うためのインタフェース回路である。   The network interface circuit 31d is an interface circuit for communicating with other devices (for example, the developer terminal 40 and the application user terminal 50) via the network NW.

ストレージインタフェース回路31eは、ストレージ32へのアクセスを行うためのインタフェース回路である。   The storage interface circuit 31 e is an interface circuit for accessing the storage 32.

ローカルバスインタフェース回路31fは、ローカルバス31gを介して情報処理システム10内のPaaSシステム20等と通信を行うためのインタフェース回路である。   The local bus interface circuit 31f is an interface circuit for communicating with the PaaS system 20 and the like in the information processing system 10 via the local bus 31g.

図8は、アプリ起動制御システム30の主要機能及びアプリ起動制御システム30が持つテーブルを説明するための図である。   FIG. 8 is a diagram for explaining the main functions of the application activation control system 30 and the table that the application activation control system 30 has.

図8に示す各機能は、CPU31aがストレージ32からメモリ31cに読み出された所定プログラムを実行することで実現される。図8に示す各機能の詳細については、後述する(図13、図18〜図20等参照)。   Each function shown in FIG. 8 is realized by the CPU 31a executing a predetermined program read from the storage 32 to the memory 31c. Details of each function shown in FIG. 8 will be described later (see FIG. 13, FIG. 18 to FIG. 20).

図9は、登録済みアプリ管理テーブル31sの一例である。登録済みアプリ管理テーブル31sは、例えば、ストレージ32に記憶されており、必要に応じてストレージ32からメモリ31cに読み出される。登録済みアプリ管理テーブル31sが本発明の第1メモリに相当する。   FIG. 9 is an example of a registered application management table 31s. The registered application management table 31s is stored in the storage 32, for example, and is read from the storage 32 to the memory 31c as necessary. The registered application management table 31s corresponds to the first memory of the present invention.

登録済みアプリ管理テーブル31sは、アプリ及びそのアプリのPaaSシステム20での運用状況を開発者ごとに記憶する。   The registered application management table 31s stores the application and the operation status of the application in the PaaS system 20 for each developer.

図9に示すように、登録済みアプリ管理テーブル31sは、「アプリ名」、及び、その「アプリ名」の「開発者名」、「URL」、「ダミーフラグ」、「ファイル名」、「予約済みメモリ量」、「予約済みディスク量」、「運用状況」等の項目を含む。   As shown in FIG. 9, the registered application management table 31s includes “application name” and “developer name”, “URL”, “dummy flag”, “file name”, “reservation” of the “application name”. This includes items such as “Reserved Memory Amount”, “Reserved Disk Amount”, and “Operation Status”.

「アプリ名」には、アプリ起動制御システム30が起動を制御するアプリのアプリ名が記憶される。   In “APP NAME”, the application name of the application that is controlled by the application activation control system 30 is stored.

「開発者名」には、「アプリ名」に記憶されたアプリ名のアプリの開発者名、典型的には、「アプリ名」に記憶されたアプリ名のアプリを開発した開発者名が記憶される。   “Developer name” stores the name of the application developer stored in “App name”, typically the name of the developer who developed the application name stored in “App name”. Is done.

「URL」には、「アプリ名」に記憶されたアプリにアクセスするためのURLが記憶される。   “URL” stores a URL for accessing the application stored in “application name”.

「ダミーフラグ」には、「アプリ名」に記憶されたアプリ名のアプリのPaaSシステム20(コンテナ)での運用状況の識別情報が記憶される。図9中、「Yes」は「アプリ名」に記憶されたアプリ名のアプリのPaaSシステム20(コンテナ)での運用状況がダミーアプリとして起動中を表す。「No」は「アプリ名」に記憶されたアプリ名のアプリのPaaSシステム20(コンテナ)での運用状況が正規アプリとして起動中を表す。   In the “dummy flag”, the identification information of the operation status in the PaaS system 20 (container) of the application having the application name stored in the “application name” is stored. In FIG. 9, “Yes” indicates that the operation status of the application having the application name stored in “App name” in the PaaS system 20 (container) is being activated as a dummy application. “No” indicates that the operation status in the PaaS system 20 (container) of the application having the application name stored in “application name” is being activated as a regular application.

「ファイル名」には、「アプリ名」に記憶されたアプリ名のアプリ(ソースファイル)のファイル名が記憶される。   In “File name”, the file name of the application (source file) having the application name stored in “App name” is stored.

「予約済みメモリ量」には、「アプリ名」に記憶されたアプリ名のアプリが使用可能なメモリの上限量が記憶される。   The “reserved memory amount” stores the upper limit amount of memory that can be used by the application having the application name stored in the “application name”.

「予約済みディスク量」には、「アプリ名」に記憶されたアプリ名のアプリが使用可能なディスクの上限量が記憶される。   The “reserved disk amount” stores the upper limit amount of a disk that can be used by the application having the application name stored in “application name”.

「運用状況」には、「アプリ名」に記憶されたアプリのPaaSシステム20での運用状況(起動状態ともいう)が記憶される。   In the “operation status”, an operation status (also referred to as an activated state) of the application stored in “application name” in the PaaS system 20 is stored.

図10は、要求キュー31tの一例である。要求キューが本発明の第2メモリに相当する。要求キュー31tは、例えば、メモリ31cに生成(記憶)される。   FIG. 10 is an example of the request queue 31t. The request queue corresponds to the second memory of the present invention. The request queue 31t is generated (stored) in the memory 31c, for example.

要求キュー31tは、アプリ(アプリ名)ごとに用意されるアプリ専用のキューである。図10(a)はアプリ名apr01のアプリ専用の要求キュー31tの例であり、図10(b)はアプリ名apr02のアプリ専用の要求キュー31tの例である。   The request queue 31t is an application-dedicated queue prepared for each application (application name). FIG. 10A shows an example of an application-dedicated request queue 31t with an application name apr01, and FIG. 10B shows an example of an application-dedicated request queue 31t with an application name apr02.

要求キュー31tは、「アプリ名」及び「要求メッセージ」等の項目を含む。   The request queue 31t includes items such as “application name” and “request message”.

「アプリ名」には、要求キュー31tが担当するアプリ名が記憶される。   In “APP NAME”, the name of the application in charge of the request queue 31t is stored.

「要求メッセージ」には、「アプリ名」に記憶されたアプリ名のアプリ宛の要求メッセージが記憶される。図10(a)は、アプリ名apr01のアプリ宛ての2つの要求メッセージ(受信要求メッセージ)が、アプリ名apr01のアプリ専用の要求キュー31tに記憶されている状態を表す。同様に、図10(b)は、アプリ名apr02のアプリ宛ての2つの要求メッセージ(受信要求メッセージ)が、アプリ名apr02のアプリ専用の要求キュー31tに記憶されている状態を表す。   The “request message” stores a request message addressed to the application having the application name stored in “application name”. FIG. 10A shows a state in which two request messages (reception request messages) addressed to the application with the application name apr01 are stored in the application-dedicated request queue 31t with the application name apr01. Similarly, FIG. 10B shows a state in which two request messages (reception request messages) addressed to the application with the application name apr02 are stored in the application-dedicated request queue 31t with the application name apr02.

図11は、アプリ変更時間テーブル31uの一例である。アプリ変更時間テーブル31uは、例えば、ストレージ32に記憶されており、必要に応じてストレージ32からメモリ31cに読み出される。   FIG. 11 is an example of the application change time table 31u. The application change time table 31u is stored in the storage 32, for example, and is read from the storage 32 to the memory 31c as necessary.

図11に示すように、アプリ変更時間テーブル31uは、「アプリ名」、及び、その「アプリ名」の「アプリ変更時間」、「要求メッセージ受信時刻」等の項目を含む。   As illustrated in FIG. 11, the application change time table 31u includes items such as “application name” and “application change time” and “request message reception time” of the “application name”.

「アプリ名」には、PaaSシステム20での運用状況が正規アプリとして起動中のアプリのアプリ名が記憶される。   In “App name”, an application name of an application whose operation status in the PaaS system 20 is activated as a regular application is stored.

「アプリ変更時間」には、「アプリ名」に記憶されたアプリ名のアプリのダミーアプリとしての起動をPaaSシステム20に要求するまでの時間が記憶される。   The “app change time” stores the time until the PaaS system 20 is requested to start the app with the app name stored in “app name” as a dummy app.

「要求メッセージ受信時刻」には、「アプリ名」に記憶されたアプリ名のアプリ宛の要求メッセージを受信した時刻が記憶される。   The “request message reception time” stores the time when the request message addressed to the application having the application name stored in “application name” is received.

図12は、ダミーアプリ&正規アプリ記憶部31vの一例である。   FIG. 12 is an example of the dummy application & regular application storage unit 31v.

ダミーアプリ&正規アプリ記憶部31vは、例えば、ストレージ32に設けられる。   The dummy application & regular application storage unit 31v is provided in the storage 32, for example.

ダミーアプリ&正規アプリ記憶部31vには、ダミーアプリ(JAVA等のソースファイル)が記憶される。典型的には、予め用意された一つのダミーアプリ(JAVA等のソースファイル)が記憶される。また、ダミーアプリ&正規アプリ記憶部31vには、正規アプリ(JAVA等のソースファイル)が記憶される。一つの正規アプリが記憶される場合もあるし、複数の正規アプリが記憶される場合もある。   A dummy application (source file such as JAVA) is stored in the dummy application & regular application storage unit 31v. Typically, one dummy application (a source file such as JAVA) prepared in advance is stored. The dummy application & regular application storage unit 31v stores a regular application (a source file such as JAVA). One regular application may be stored, and a plurality of regular applications may be stored.

なお、アプリ起動制御システム30は、PaaSシステム20と同様、開発者リソース制限テーブル21p(図6参照)を備えている。   Note that, similarly to the PaaS system 20, the application activation control system 30 includes a developer resource restriction table 21p (see FIG. 6).

図13は、アプリ起動制御システム30におけるアプリ登録処理の一例を説明するためのフローチャートである。   FIG. 13 is a flowchart for explaining an example of the application registration process in the application activation control system 30.

まず、アプリ管理部31qが、開発者から開発者端末40を介して送信された正規アプリの登録要求を受信するまで待機する(ステップS10:NO)。   First, the application management unit 31q waits until a registration request for a regular application transmitted from the developer via the developer terminal 40 is received (step S10: NO).

以下、アプリ管理部31qが、開発者A(開発者名Usr01)からアプリ名(apr04)の正規アプリの登録要求(以下、アプリ登録要求ともいう)を受信した場合の処理の一例について説明する。   Hereinafter, an example of processing when the application management unit 31q receives a registration request (hereinafter also referred to as an application registration request) of a regular application with the application name (apr04) from the developer A (developer name Usr01) will be described.

このアプリ登録要求は、登録対象アプリに関する情報、具体的には、アプリ名(ここでは、apr04)、正規アプリ(JAVA等のソースファイル)、予約済みメモリ量(ここでは、1GB)、予約済みディスク量(ここでは、1GB)、アプリ変更時間(ここでは、20min)を含む。   This application registration request includes information related to the application to be registered. Specifically, the application name (here apr04), regular application (source file such as JAVA), reserved memory amount (here 1GB), reserved disk Including the amount (here 1GB), app change time (here 20min).

アプリ管理部31qは、アプリ登録要求を受信した場合(ステップS10:YES)、ステップS10で受信したアプリ名(ここでは、apr04)等を、図14に示すように、登録済みアプリ管理テーブル31sに記憶する(ステップS11)。   When the application management unit 31q receives an application registration request (step S10: YES), the application name (here, apr04) received in step S10 is stored in the registered application management table 31s as shown in FIG. Store (step S11).

例えば、図9に示すように、登録済みアプリ管理テーブル31sに、ステップS10で受信したアプリ名(ここでは、apr04)等が記憶されていない場合、アプリ管理部31qは、図14の最終行に示すように、登録済みアプリ管理テーブル31sに、ステップS10で受信したアプリ名(ここでは、apr04)等を記憶する。   For example, as shown in FIG. 9, when the application name received in step S10 (here, apr04) or the like is not stored in the registered application management table 31s, the application management unit 31q displays the last line in FIG. As illustrated, the application name received in step S10 (here, apr04) and the like are stored in the registered application management table 31s.

具体的には、「開発者名」には、開発者Aが開発者端末40を介してアプリ起動制御システム30にログインする際に入力した開発者名(ここでは、Usr01)が記憶される。   Specifically, the “developer name” stores the developer name (here, Usr01) input when the developer A logs in to the application activation control system 30 via the developer terminal 40.

「アプリ名」には、ステップS10で受信したアプリ名(ここでは、apr04)が記憶される。   The “app name” stores the application name (here, apr04) received in step S10.

「URL」には、ステップS10で受信したアプリ名とアプリ起動制御システム30が自動的に付与するドメイン名とを組み合わせて生成されたURL(ここでは、apr04.paas01.dc01.net)が記憶される。   In “URL”, a URL (here, apr04.paas01.dc01.net) generated by combining the application name received in step S10 and the domain name automatically assigned by the application activation control system 30 is stored. The

「ダミーフラグ」には、ステップS10で受信したアプリ(アプリ名)のPaaSシステム20での運用状況に応じてYes又はNoが記憶される。   In the “dummy flag”, Yes or No is stored according to the operation status of the application (application name) received in step S10 in the PaaS system 20.

「ファイル名」には、ステップS10で受信した正規アプリ(JAVA等のソースファイル)のファイル名(ここでは、test01.java)が記憶される。   The “file name” stores the file name (here, test01.java) of the legitimate application (source file such as JAVA) received in step S10.

「予約済みメモリ量」には、ステップS10で受信した予約済みメモリ量(ここでは、1GB)が記憶される。「予約済みメモリ量」が本発明のリソースに相当する。なお、ステップS10で予約済みメモリ量を受信しなかった場合、「予約済みメモリ量」には、アプリ起動制御システム30によってデフォルトの予約済みメモリ量が記憶される。   The “reserved memory amount” stores the reserved memory amount (here, 1 GB) received in step S10. The “reserved memory amount” corresponds to the resource of the present invention. If the reserved memory amount is not received in step S10, the default reserved memory amount is stored in the “reserved memory amount” by the application activation control system 30.

「予約済みディスク量」には、ステップS10で受信した予約済みディスク量(ここでは、1GB)が記憶される。なお、ステップS10で予約済みディスク量を受信しなかった場合、「予約済みディスク量」には、アプリ起動制御システム30によってデフォルトの予約済みディスク量が記憶される。   In the “reserved disk amount”, the reserved disk amount (1 GB in this case) received in step S10 is stored. If the reserved disk amount is not received in step S10, the default reserved disk amount is stored in the “reserved disk amount” by the application activation control system 30.

「運用状況」には、ステップS10で受信したアプリ(アプリ名)のPaaSシステム20での運用状況に応じて起動中又は停止中が記憶される。   The “operation status” stores information indicating whether the application (application name) received in step S10 is being activated or stopped according to the operation status in the PaaS system 20.

また、ステップS10で受信した正規アプリ(JAVA等のソースファイル)がダミーアプリ&正規アプリ記憶部31vに記憶される。   Also, the regular application (source file such as JAVA) received in step S10 is stored in the dummy application & regular application storage unit 31v.

次に、要求アプリ起動停止部31nが、ステップS10で受信した正規アプリ(JAVA等のソースファイル)に対応付けられた第1契約者(ここでは、Usr01。図14参照)のアプリ(アプリ名)のうち「運用状況」が起動中のアプリの「予約済みメモリ量」(ここでは1GB)とステップS10で受信した正規アプリの「予約済みメモリ量」(ここでは1GB)とを加算した合計量(ここでは2GB)が、第1契約者(ここでは、Usr01)のメモリ上限量(ここでは、3GB。図6参照)を超えるか否かを判定(確認)する(ステップS12)。   Next, the application (application name) of the first contractor (here Usr01, see FIG. 14) associated with the regular application (source file such as JAVA) received by the requested application activation / deactivation unit 31n in step S10. The total amount of the “reserved memory amount” (here 1 GB) of the application whose “operation status” is activated and the “reserved memory amount” (here 1 GB) of the regular application received in step S10 ( It is determined (confirmed) whether or not 2 GB) exceeds the memory upper limit (here 3 GB, see FIG. 6) of the first contractor (Usr01 here) (step S12).

この判定の結果、合計量がメモリ上限量を超えない場合(ステップS13:NO)、要求アプリ起動停止部31nが、ステップS10で受信した正規アプリの起動を、PaaSシステム20に対して要求する(ステップS14)。   As a result of this determination, if the total amount does not exceed the memory upper limit amount (step S13: NO), the requested application activation / deactivation unit 31n requests the PaaS system 20 to activate the regular application received in step S10 ( Step S14).

この正規アプリ起動要求は、登録対象アプリに関する情報、具体的には、アプリ名(ここでは、apr04)、正規アプリ(JAVA等のソースファイル)、予約済みメモリ量(ここでは、1GB)、予約済みディスク量(ここでは、1GB)を含む。   This legitimate application launch request is information related to the application to be registered, specifically, app name (here apr04), legitimate application (source file such as JAVA), reserved memory amount (here 1GB), reserved Includes disk space (here 1GB).

PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)から正規アプリ起動要求(ステップS14)を受信した場合、図15中の最終行に示すように、その受信したアプリ名(ここでは、apr04)等を、開発者(ここでは、開発者A)のアプリ情報テーブル21nに記憶する。   When the PaaS system 20 receives a regular application activation request (step S14) from the application activation control system 30 (requested application activation stop unit 31n), as shown in the last line in FIG. Then, apr04) is stored in the application information table 21n of the developer (here, developer A).

具体的には、「アプリ名」には、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信したアプリ名(ここでは、apr04)が記憶される。   Specifically, the “application name” stores the application name (here, apr04) received from the application activation control system 30 (requested application activation / stop unit 31n).

「URL」には、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信したアプリ名(ここでは、apr04)とPaaSシステム20が自動的に付与するドメイン名とを組み合わせて生成されたURLが記憶される。   “URL” is a URL generated by combining the application name (here, apr04) received from the application activation control system 30 (requested application activation stop unit 31n) and the domain name automatically assigned by the PaaS system 20 Is memorized.

「使用CPU」、「使用メモリ」、「使用ディスク」には、それぞれ、「アプリ名」に記憶されたアプリ名のアプリが実際に使用しているCPU使用率、メモリ量、ディスク量が記憶される。これらは、PaaSシステム20によって定期的に更新される。   “Used CPU”, “Used memory”, and “Used disk” respectively store the CPU usage rate, memory amount, and disk amount actually used by the application with the application name stored in “App name”. The These are regularly updated by the PaaS system 20.

「予約済みメモリ量」には、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信した予約済みメモリ量(ここでは、1GB)が記憶される。   The “reserved memory amount” stores the reserved memory amount (here, 1 GB) received from the application activation control system 30 (requested application activation stop unit 31n).

「予約済みディスク量」には、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信した予約済みディスク量(ここでは、1GB)が記憶される。   The “reserved disk amount” stores the reserved disk amount (here, 1 GB) received from the application activation control system 30 (requested application activation / stop unit 31n).

また、PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信した正規アプリ(JAVA等のソースファイル)がコピーされたコンテナ21j2を作成し、そのコンテナ(及び正規アプリ)を起動させる。   In addition, the PaaS system 20 creates a container 21j2 in which a regular application (a source file such as JAVA) received from the application activation control system 30 (requested application activation stop unit 31n) is copied, and the container (and regular application) is created. Start.

さらに、PaaSシステム20は、アプリ起動制御システム30に対して正規アプリの起動状態を通知(送信)する。例えば、PaaSシステム20は、コンテナ(及び正規アプリ)が正常に起動した場合、起動状態として起動中を通知し、何らかの理由で正常に起動しなかった場合、起動状態として停止中を通知する。   Further, the PaaS system 20 notifies (transmits) the activation state of the regular application to the application activation control system 30. For example, when the container (and the regular application) starts normally, the PaaS system 20 notifies the activation as the activation state, and when it does not activate normally for some reason, the PaaS system 20 notifies the activation as the activation state.

また、PaaSシステム20は、正規アプリの起動状態に応じて、アプリ情報テーブル21n中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中又は停止中を記憶する。   Further, the PaaS system 20 stores “starting” or “stopping” in the “operation status” of the “application name” (here, apr04) in the application information table 21n according to the activation state of the regular application.

一方、ステップS12の判定の結果、合計量がメモリ上限量を超える場合(ステップS13:YES)、要求アプリ起動停止部31nが、ダミーアプリの起動を、PaaSシステム20に対して要求する(ステップS15)。   On the other hand, as a result of the determination in step S12, when the total amount exceeds the memory upper limit amount (step S13: YES), the requested application activation stop unit 31n requests the PaaS system 20 to activate the dummy application (step S15). ).

このダミーアプリ起動要求は、登録対象アプリに関する情報として、アプリ名(ここでは、apr04)、ダミーアプリ(JAVA等のソースファイル)、ダミーアプリ用の予約済みメモリ量(ここでは、10MB)、ダミーアプリ用の予約済みディスク量(ここでは、10MB)を含む。なお、ダミーアプリ、ダミーアプリ用の予約済みメモリ量、ダミーアプリ用の予約済みディスク量は、例えば、ダミーアプリ&正規アプリ記憶部31vに予め記憶されている。   This dummy application activation request includes information on the application to be registered: application name (here, apr04), dummy application (source file such as JAVA), reserved memory amount for dummy application (here 10MB), dummy application Includes reserved disk space for 10MB here. The dummy application, the reserved memory amount for the dummy application, and the reserved disk amount for the dummy application are stored in advance in, for example, the dummy application & regular application storage unit 31v.

PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)からダミーアプリ起動要求(ステップS15)を受信した場合、図16中の最終行に示すように、その受信したアプリ名(ここでは、apr04)等を、開発者(ここでは、開発者A)のアプリ情報テーブル21nに記憶する。   When the PaaS system 20 receives a dummy application activation request (step S15) from the application activation control system 30 (requested application activation stop unit 31n), as shown in the last line in FIG. Then, apr04) is stored in the application information table 21n of the developer (here, developer A).

具体的には、「アプリ名」には、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信したアプリ名(ここでは、apr04)が記憶される。   Specifically, the “application name” stores the application name (here, apr04) received from the application activation control system 30 (requested application activation / stop unit 31n).

「URL」には、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信したアプリ名(ここでは、apr04)とPaaSシステム20が自動的に付与するドメイン名とを組み合わせて生成されたURLが記憶される。   “URL” is a URL generated by combining the application name (here, apr04) received from the application activation control system 30 (requested application activation stop unit 31n) and the domain name automatically assigned by the PaaS system 20 Is memorized.

「使用CPU」、「使用メモリ」、「使用ディスク」には、それぞれ、「アプリ名」に記憶されたアプリ名のアプリが実際に使用しているCPU使用率、メモリ量、ディスク量が記憶される。これらは、PaaSシステム20によって定期的に更新される。   “Used CPU”, “Used memory”, and “Used disk” respectively store the CPU usage rate, memory amount, and disk amount actually used by the application with the application name stored in “App name”. The These are regularly updated by the PaaS system 20.

「予約済みメモリ量」には、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信したダミーアプリ用の予約済みメモリ量(ここでは、10MB)が記憶される。   In the “reserved memory amount”, a reserved memory amount (in this case, 10 MB) for the dummy application received from the application activation control system 30 (requested application activation stop unit 31n) is stored.

「予約済みディスク量」には、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信したダミーアプリ用の予約済みディスク量(ここでは、10MB)が記憶される。   The “reserved disk amount” stores the reserved disk amount (in this case, 10 MB) for the dummy application received from the application activation control system 30 (requested application activation stop unit 31n).

また、PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信したダミーアプリ(JAVA等のソースファイル)がコピーされたコンテナ21j2を作成し、そのコンテナ(及びダミーアプリ)を起動させる。   Also, the PaaS system 20 creates a container 21j2 in which a dummy application (source file such as JAVA) received from the application activation control system 30 (requested application activation stop unit 31n) is copied, and the container (and dummy application) is created. Start.

さらに、PaaSシステム20は、アプリ起動制御システム30に対してダミーアプリの起動状態を通知(送信)する。例えば、PaaSシステム20は、コンテナ(及びダミーアプリ)が正常に起動した場合、起動状態として起動中を通知し、何らかの理由で正常に起動しなかった場合、起動状態として停止中を通知する。   Further, the PaaS system 20 notifies (transmits) the activation state of the dummy application to the application activation control system 30. For example, when the container (and the dummy application) starts normally, the PaaS system 20 notifies the activation as the activation state, and when the container (and the dummy application) does not activate normally for some reason, the PaaS system 20 notifies the activation as the activation state.

また、PaaSシステム20は、ダミーアプリの起動状態に応じて、アプリ情報テーブル21n中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中又は停止中を記憶する。   In addition, the PaaS system 20 stores “starting” or “stopping” in the “operation status” of the “application name” (here, apr04) in the application information table 21n in accordance with the starting state of the dummy application.

次に、アプリ管理部31qが、アプリ監視制御部31rに対してアプリ変更時間テーブル31uへの登録を要求する(ステップS16)。   Next, the application management unit 31q requests the application monitoring control unit 31r to register in the application change time table 31u (step S16).

次に、アプリ監視制御部31rが、アプリ変更時間テーブル31uに、ステップS10で受信したアプリ名(ここでは、apr04)等が登録されているか否かを判定(確認)する(ステップS17)。   Next, the application monitoring control unit 31r determines (confirms) whether or not the application name (here, apr04) received in step S10 is registered in the application change time table 31u (step S17).

この判定の結果、アプリ変更時間テーブル31uに、ステップS10で受信したアプリ名等が登録されていない場合(ステップS18:NO)、アプリ監視制御部31rが、アプリ変更時間テーブル31uに、ステップS10で受信したアプリ名(ここでは、apr04)等を記憶する(ステップS19)。   As a result of the determination, if the application name received in step S10 is not registered in the application change time table 31u (step S18: NO), the application monitoring control unit 31r stores the application change time table 31u in step S10. The received application name (here, apr04) and the like are stored (step S19).

例えば、図17(a)に示すように、アプリ変更時間テーブル31uに、ステップS10で受信したアプリ名(ここでは、apr04)等が記憶されていない場合(ステップS18:NO)、アプリ監視制御部31rは、図17(b)の最終行に示すように、アプリ変更時間テーブル31uに、ステップS10で受信したアプリ名(ここでは、apr04)等を記憶する(ステップS19)。   For example, as shown in FIG. 17A, when the application change time table 31u does not store the application name (here, apr04) received in step S10 (step S18: NO), the application monitoring control unit As shown in the last line of FIG. 17B, 31r stores the application name (here, apr04) received in step S10 in the application change time table 31u (step S19).

具体的には、「アプリ名」には、ステップS10で受信したアプリ名(ここでは、apr04)が記憶される。   Specifically, the “application name” stores the application name (here, apr04) received in step S10.

「アプリ変更時間」には、ステップS10で受信したアプリ変更時間(ここでは、20min)が記憶される。なお、ステップS10でアプリ変更時間を受信しなかった場合、「アプリ変更時間」には、アプリ起動制御システム30によってデフォルトの時間が記憶される。   The “application change time” stores the application change time (20 min in this case) received in step S10. When the application change time is not received in step S10, the default time is stored in the “application change time” by the application activation control system 30.

「要求メッセージ受信時刻」には、この時点ではまだ要求メッセージ未受信であるため、ステップS10で受信したアプリ名等を登録済みアプリ管理テーブル31sに登録した時刻(ここでは、2016/06/30 15:20)が記憶される。   At the “request message reception time”, since the request message has not been received yet, the time when the application name received in step S10 is registered in the registered application management table 31s (here, 2016/06/30 15 : 20) is memorized.

一方、ステップS17の判定の結果、アプリ変更時間テーブル31uに、ステップS10で受信したアプリ名等が登録されている場合(ステップS18:YES)、アプリ監視制御部31rが、ステップS10で受信したアプリ名(ここでは、apr04)の「アプリ変更時間」を更新する(ステップS20)。例えば、アプリ変更時間テーブル31u中のアプリ名(ここでは、apr04)の「アプリ変更時間」に、ステップS10で受信したアプリ変更時間を上書きする。   On the other hand, as a result of the determination in step S17, if the application name received in step S10 is registered in the application change time table 31u (step S18: YES), the application monitoring control unit 31r receives the application received in step S10. The “application change time” of the name (here, apr04) is updated (step S20). For example, the application change time received in step S10 is overwritten on the “application change time” of the application name (here, apr04) in the application change time table 31u.

次に、アプリ起動制御システム30(例えば、アプリ管理部31q)は、ステップS14又はS15で起動要求したアプリの起動状態を、PaaSシステム20から受信した場合(ステップS21:YES)、登録済みアプリ管理テーブル31sを更新する(ステップS22)。   Next, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the application requested for activation in step S14 or S15 from the PaaS system 20 (step S21: YES), the registered application management The table 31s is updated (step S22).

例えば、アプリ起動制御システム30(例えば、アプリ管理部31q)は、PaaSシステム20から正規アプリの起動状態を受信した場合(ステップS21:YES)、その受信した正規アプリの起動状態に応じて、登録済みアプリ管理テーブル31s中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中又は停止中を記憶する。また、アプリ起動制御システム30(例えば、アプリ管理部31q)は、登録済みアプリ管理テーブル31sの「アプリ名」(ここでは、apr04)の「ダミーフラグ」にNoを記憶する。   For example, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the authorized application from the PaaS system 20 (step S21: YES), the application activation control system 30 (for example, the application management unit 31q) registers according to the received activation state of the authorized application. “Activation status” of “App name” (here, apr04) in the completed application management table 31s is stored as being activated or stopped. Further, the application activation control system 30 (for example, the application management unit 31q) stores No in the “dummy flag” of the “application name” (here, apr04) of the registered application management table 31s.

一方、アプリ起動制御システム30(例えば、アプリ管理部31q)は、PaaSシステム20からダミーアプリの起動状態を受信した場合(ステップS21:YES)、その受信したダミーアプリの起動状態に応じて、登録済みアプリ管理テーブル31s中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中又は停止中を記憶する。また、アプリ起動制御システム30(例えば、アプリ管理部31q)は、登録済みアプリ管理テーブル31sの「アプリ名」(ここでは、apr04)の「ダミーフラグ」にYesを記憶する。   On the other hand, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the dummy application from the PaaS system 20 (step S21: YES), the application activation control system 30q (for example, the application management unit 31q) registers according to the received activation state of the dummy application. “Activation status” of “App name” (here, apr04) in the completed application management table 31s is stored as being activated or stopped. The application activation control system 30 (for example, the application management unit 31q) stores Yes in the “dummy flag” of the “application name” (here, apr04) of the registered application management table 31s.

図18は、アプリ起動制御システム30におけるダミーアプリ起動処理の一例を説明するためのフローチャートである。   FIG. 18 is a flowchart for explaining an example of the dummy application activation process in the application activation control system 30.

まず、アプリ監視制御部31rが、アプリ変更時間テーブル31uからアプリ毎に要求メッセージ受信時刻、アプリ変更時間を取得する(ステップS30)。   First, the application monitoring control unit 31r acquires the request message reception time and the application change time for each application from the application change time table 31u (step S30).

次に、アプリ監視制御部31rが、アプリ変更予定時刻(=要求メッセージ受信時刻+アプリ変更時間)を計算する(ステップS31)。   Next, the application monitoring control unit 31r calculates an application change scheduled time (= request message reception time + application change time) (step S31).

次に、アプリ変更予定時刻を超えるアプリ名がある場合(ステップS32:YES)、アプリ監視制御部31rが、要求アプリ起動停止部31nに対して該当アプリのダミーアプリとしての起動を要求する(ステップS33)。   Next, when there is an application name that exceeds the scheduled application change time (step S32: YES), the application monitoring control unit 31r requests the requested application activation / deactivation unit 31n to activate the corresponding application as a dummy application (step S32). S33).

次に、要求アプリ起動停止部31nが、該当アプリのダミーアプリとしての起動を、PaaSシステム20に対して要求する(ステップS34)。   Next, the requested application activation / deactivation unit 31n requests the PaaS system 20 to activate the corresponding application as a dummy application (step S34).

このダミーアプリ起動要求は、アプリ名(例えば、図17(b)中のapr04)、ダミーアプリ(JAVA等のソースファイル)、ダミーアプリ用の予約済みメモリ量、ダミーアプリ用の予約済みディスク量を含む。   This dummy application activation request includes an application name (for example, apr04 in FIG. 17B), a dummy application (a source file such as JAVA), a reserved memory amount for the dummy application, and a reserved disk amount for the dummy application. Including.

PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)からダミーアプリ起動要求(ステップS34)を受信した場合、アプリ情報テーブル21n中の受信したアプリ名(ここでは、apr04)の「予約済みメモリ量」、「予約済みディスク量」に、それぞれ、受信したダミーアプリ用の予約済みメモリ量、ダミーアプリ用の予約済みディスク量を記憶(例えば、上書き)する。これにより、例えば、アプリ情報テーブル21nは、図15に示す内容から図16に示す内容に変わる。   When the PaaS system 20 receives a dummy application activation request (step S34) from the application activation control system 30 (requested application activation stop unit 31n), the PaaS system 20 receives the application name (in this case, apr04) in the application information table 21n. The received reserved memory amount for the dummy application and the reserved disk amount for the dummy application are stored (for example, overwritten) in “Reserved memory amount” and “Reserved disk amount”, respectively. Thereby, for example, the application information table 21n changes from the content shown in FIG. 15 to the content shown in FIG.

また、PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信したダミーアプリ(JAVA等のソースファイル)がコピー(正規アプリに上書き)されたコンテナ21j2(及びダミーアプリ)を起動させる。   In addition, the PaaS system 20 stores the container 21j2 (and dummy application) in which the dummy application (source file such as JAVA) received from the application activation control system 30 (requested application activation stop unit 31n) is copied (overwritten on the regular application). Start.

さらに、PaaSシステム20は、アプリ起動制御システム30に対してダミーアプリの起動状態を通知(送信)する。例えば、PaaSシステム20は、コンテナ(及びダミーアプリ)が正常に起動した場合、起動状態として起動中を通知し、何らかの理由で正常に起動しなかった場合、起動状態として停止中を通知する。   Further, the PaaS system 20 notifies (transmits) the activation state of the dummy application to the application activation control system 30. For example, when the container (and the dummy application) starts normally, the PaaS system 20 notifies the activation as the activation state, and when the container (and the dummy application) does not activate normally for some reason, the PaaS system 20 notifies the activation as the activation state.

また、PaaSシステム20は、ダミーアプリの起動状態に応じて、アプリ情報テーブル21n中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中又は停止中を記憶する。   In addition, the PaaS system 20 stores “starting” or “stopping” in the “operation status” of the “application name” (here, apr04) in the application information table 21n in accordance with the starting state of the dummy application.

次に、アプリ起動制御システム30(例えば、アプリ管理部31q)は、ステップS34で起動要求したアプリの起動状態を、PaaSシステム20から受信した場合(ステップS35:YES)、登録済みアプリ管理テーブル31sを更新する(ステップS36)。   Next, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the application requested for activation in step S34 from the PaaS system 20 (step S35: YES), the registered application management table 31s. Is updated (step S36).

例えば、アプリ起動制御システム30(例えば、アプリ管理部31q)は、PaaSシステム20からダミーアプリの起動状態を受信した場合(ステップS35:YES)、その受信したダミーアプリの起動状態に応じて、登録済みアプリ管理テーブル31s中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中又は停止中を記憶する。また、アプリ起動制御システム30(例えば、アプリ管理部31q)は、登録済みアプリ管理テーブル31sの「アプリ名」(ここでは、apr04)の「ダミーフラグ」にYesを記憶する。   For example, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the dummy application from the PaaS system 20 (step S35: YES), the application activation control system 30 (for example, the application management unit 31q) registers according to the received activation state of the dummy application. “Activation status” of “App name” (here, apr04) in the completed application management table 31s is stored as being activated or stopped. The application activation control system 30 (for example, the application management unit 31q) stores Yes in the “dummy flag” of the “application name” (here, apr04) of the registered application management table 31s.

上記ステップS30〜S36の処理は、指定間隔ごとに実行される。   The processes in steps S30 to S36 are executed at specified intervals.

図19、図20は、アプリ起動制御システム30における要求メッセージ受信処理を説明するためのフローチャートである。   19 and 20 are flowcharts for explaining request message reception processing in the application activation control system 30. FIG.

まず、要求メッセージ受信部31hが、アプリ利用者からアプリ利用者端末50を介して送信された第1アプリ宛の要求メッセージを受信するまで待機する(ステップS40:NO)。   First, it waits until the request message receiving unit 31h receives a request message addressed to the first application transmitted from the application user via the application user terminal 50 (step S40: NO).

以下、要求メッセージ受信部31hが、アプリ利用者から第1アプリ宛(ここでは、アプリ名apr04、開発者名Usr01)の要求メッセージを受信した場合の処理の一例について説明する。   Hereinafter, an example of processing when the request message receiving unit 31h receives a request message addressed to the first application (here, application name apr04, developer name Usr01) from the application user will be described.

要求メッセージ受信部31hは、第1アプリ宛の要求メッセージを受信した場合(ステップS40:YES)、要求メッセージ登録確認部31jに対して第1アプリ(アプリ名)が登録済みアプリ管理テーブル31sに登録(記憶)されているか否の確認を要求(アプリ確認要求)する(ステップS41)。   When the request message reception unit 31h receives a request message addressed to the first application (step S40: YES), the first application (application name) is registered in the registered application management table 31s with respect to the request message registration confirmation unit 31j. A request for confirmation (application confirmation request) is made as to whether or not it is stored (step S41).

次に、要求メッセージ登録確認部31jは、第1アプリ(アプリ名)が登録済みアプリ管理テーブル31sに登録されているか否かを判定(確認)する(ステップS42)。   Next, the request message registration confirmation unit 31j determines (confirms) whether or not the first application (application name) is registered in the registered application management table 31s (step S42).

この判定の結果、第1アプリ(アプリ名)が登録済みアプリ管理テーブル31sに登録されている場合(ステップS43:YES)、次の第1〜第3の処理が実行される。   As a result of this determination, when the first application (application name) is registered in the registered application management table 31s (step S43: YES), the following first to third processes are executed.

第1の処理は、アプリ変更時間テーブル31u中の要求メッセージ受信時刻を更新する処理である。   The first process is a process of updating the request message reception time in the application change time table 31u.

具体的には、まず、要求メッセージ登録確認部31jが、アプリ監視制御部31rに対して要求メッセージ受信時刻を通知する(ステップS44)。   Specifically, first, the request message registration confirmation unit 31j notifies the application monitoring control unit 31r of the request message reception time (step S44).

次に、アプリ監視制御部31rが、アプリ変更時間テーブル31u中の「アプリ名」が第1アプリの「要求メッセージ受信時刻」を、要求メッセージ登録確認部31jから通知された要求メッセージ受信時刻で更新(例えば、上書き)する(ステップS45)。   Next, the application monitoring control unit 31r updates the “request message reception time” of the first application whose “application name” in the application change time table 31u is the request message reception time notified from the request message registration confirmation unit 31j. (For example, overwriting) (step S45).

第2の処理は、ステップS40で受信した要求メッセージを要求キュー31tに保存する処理である。   The second process is a process of saving the request message received in step S40 in the request queue 31t.

具体的には、まず、要求メッセージ登録確認部31jが、要求メッセージ保存部31kに対してステップS40で受信した要求メッセージの保存を要求する(ステップS46)。   Specifically, first, the request message registration confirmation unit 31j requests the request message storage unit 31k to store the request message received in step S40 (step S46).

次に、要求メッセージ保存部31kが、ステップS40で受信した要求メッセージを第1アプリ専用の要求キュー31t(図21参照)に保存する(ステップS47)。   Next, the request message storage unit 31k stores the request message received in step S40 in the request queue 31t (see FIG. 21) dedicated to the first application (step S47).

第3の処理は、第1アプリのPaaSシステム20での運用状況がダミーアプリとして起動中である場合、第1アプリの正規アプリとしての起動を、PaaSシステム20に対して要求する処理である。   The third process is a process of requesting the PaaS system 20 to start the first application as a regular application when the operation status of the first application in the PaaS system 20 is being started as a dummy application.

具体的には、まず、要求メッセージ登録確認部31jが、ダミーアプリ確認部31mに対して第1アプリのPaaSシステム20での運用状況がダミーアプリとして起動中か否かの確認を要求(ダミーアプリ確認要求)する(ステップS48)。   Specifically, first, the request message registration confirmation unit 31j requests the dummy application confirmation unit 31m to confirm whether the operation status of the first application in the PaaS system 20 is being activated as a dummy application (dummy application). Confirmation request) (step S48).

次に、ダミーアプリ確認部31mが、登録済みアプリ管理テーブル31s(「ダミーフラグ」、「運用状況」)を参照して、第1アプリのPaaSシステム20での運用状況がダミーアプリとして起動中か否かを判定(確認)する(ステップS49)。   Next, the dummy application confirmation unit 31m refers to the registered application management table 31s (“dummy flag”, “operation status”) to check whether the operation status of the first application in the PaaS system 20 is running as a dummy application. It is determined (confirmed) whether or not (step S49).

この判定の結果、第1アプリのPaaSシステム20での運用状況がダミーアプリとして起動中である場合(ステップS49:YES)、ダミーアプリ確認部31mが、第1アプリの正規アプリとしての起動を、要求アプリ起動停止部31nに対して要求する(ステップS50)。   As a result of the determination, if the operation status of the first application in the PaaS system 20 is being activated as a dummy application (step S49: YES), the dummy application confirmation unit 31m activates the first application as a regular application. A request is made to the requested application start / stop unit 31n (step S50).

次に、要求アプリ起動停止部31nが、第1アプリ(ここでは、アプリ名apr04)に対応付けられた第1契約者(ここでは、Usr01)のアプリ(アプリ名)のうち「運用状況」が起動中のアプリの「予約済みメモリ量」とステップS10で受信した第1アプリの「予約済みメモリ量」とを加算した合計量が、第1契約者(ここでは、Usr01)のメモリ上限量を超えるか否かを判定(確認)する(ステップS51)。   Next, the requested application activation / deactivation unit 31n determines that the “operational status” is the application (application name) of the first contractor (here, Usr01) associated with the first application (here, the application name apr04). The total amount obtained by adding the “reserved memory amount” of the active application and the “reserved memory amount” of the first application received in step S10 is the memory upper limit amount of the first contractor (in this case, Usr01). It is determined (confirmed) whether or not it exceeds (step S51).

この判定の結果、合計量がメモリ上限量を超えない場合(ステップS52:NO)、要求アプリ起動停止部31nが、第1アプリの正規アプリとしての起動を、PaaSシステム20に対して要求する(ステップS53)。   As a result of this determination, if the total amount does not exceed the memory upper limit amount (step S52: NO), the requested application activation / deactivation unit 31n requests the PaaS system 20 to activate the first application as a regular application ( Step S53).

この第1アプリ起動要求は、具体的には、アプリ名(ここでは、apr04)、正規アプリ(JAVA等のソースファイル)、予約済みメモリ量(ここでは、1GB)、予約済みディスク量(ここでは、1GB)を含む。   Specifically, the first application activation request includes an application name (here, apr04), a regular application (source file such as JAVA), a reserved memory amount (here 1 GB), a reserved disk amount (here) 1GB).

なお、正規アプリ(JAVA等のソースファイル)は、次のようにして取得することができる。例えば、まず、第1アプリ(ここでは、アプリ名apr04)をキーとして図14に示す登録済みアプリ管理テーブル31s(「ファイル名」)から第1アプリが対応付けられたファイル名(ここでは、test01.java)を検索する。次に、その検索したファイル名(ここでは、test01.java)をキーとしてダミーアプリ&正規アプリ記憶部31vからその検索したファイル名の正規アプリ(JAVA等のソースファイル)を抽出する。   In addition, a regular application (a source file such as JAVA) can be obtained as follows. For example, first, a file name (here, test01) associated with the first application from the registered application management table 31s (“file name”) shown in FIG. 14 using the first application (here, application name apr04) as a key. .java). Next, a regular application (source file such as JAVA) having the searched file name is extracted from the dummy application & regular application storage unit 31v using the searched file name (here, test01.java) as a key.

以上のようにして、正規アプリ(JAVA等のソースファイル)を取得することができる。   As described above, a regular application (a source file such as JAVA) can be acquired.

なお、予約済みメモリ量、予約済みディスク量は、第1アプリ(ここでは、アプリ名apr04)をキーとして図14に示す登録済みアプリ管理テーブル31s(「予約済みメモリ量」、「予約済みディスク量」)から第1アプリが対応付けられた予約済みメモリ量、予約済みディスク量を検索することで取得することができる。   Note that the reserved memory amount and the reserved disk amount are the registered application management table 31s (“reserved memory amount”, “reserved disk amount” shown in FIG. 14 with the first application (here, application name apr04) as a key. ]) From the reserved memory amount and reserved disk amount associated with the first application.

PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)から第1アプリ起動要求(ステップS53)を受信した場合、その受信したアプリ名(ここでは、apr04)等を、アプリ情報テーブル21nに記憶(例えば、上書き)する。   When the PaaS system 20 receives the first application activation request (step S53) from the application activation control system 30 (requested application activation stop unit 31n), the received application name (here, apr04) is displayed in the application information table. 21n is stored (for example, overwritten).

また、PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)から受信した正規アプリ(JAVA等のソースファイル)がコピー(ダミーアプリに上書き)されたコンテナ21j2(及び正規アプリ)を起動させる。   In addition, the PaaS system 20 uses the container 21j2 (and the regular application) in which the regular application (source file such as JAVA) received from the application activation control system 30 (the requested application activation / stop unit 31n) is copied (overwritten on the dummy application). Start.

さらに、PaaSシステム20は、アプリ起動制御システム30に対して正規アプリの起動状態を通知(送信)する。例えば、PaaSシステム20は、コンテナ(及び正規アプリ)が正常に起動した場合、起動状態として起動中を通知し、何らかの理由で正常に起動しなかった場合、起動状態として停止中を通知する。   Further, the PaaS system 20 notifies (transmits) the activation state of the regular application to the application activation control system 30. For example, when the container (and the regular application) starts normally, the PaaS system 20 notifies the activation as the activation state, and when it does not activate normally for some reason, the PaaS system 20 notifies the activation as the activation state.

また、PaaSシステム20は、正規アプリの起動状態に応じて、アプリ情報テーブル21n中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中(正規アプリとして起動中)又は停止中を記憶する。   Further, the PaaS system 20 is activated (activated as a regular application) or stopped in the “operation status” of the “application name” (here, apr04) in the application information table 21n according to the activated state of the authorized application. Remember.

なお、ステップS51の判定の結果、合計量がメモリ上限量を超える場合(ステップS52:YES)、ステップS51の処理が繰り返し実行される。なお、このようにしても、ステップS51の処理が無限に繰り返されることはない。これは、ダミーアプリ起動処理(図18参照)が実行されるため、やがて、アプリ変更予定時刻を経過した正規アプリ(相対的に予約メモリ量が大きい)がダミーアプリ(相対的に予約メモリ量が小さい)で上書きされ、ステップS52:NOとなり、ステップS53以下の処理が実行されることによるものである。   Note that, as a result of the determination in step S51, if the total amount exceeds the memory upper limit amount (step S52: YES), the process in step S51 is repeatedly executed. Even in this case, the process of step S51 is not repeated infinitely. This is because a dummy application activation process (see FIG. 18) is executed, so that a regular application (with a relatively large reserved memory amount) that has passed the scheduled application change time eventually becomes a dummy application (with a relatively reserved memory amount). This is because step S52: NO, and the processing from step S53 onward is executed.

次に、アプリ起動制御システム30(例えば、アプリ管理部31q)は、ステップS50で起動要求したアプリの起動状態を、PaaSシステム20から受信した場合(ステップS54:YES)、登録済みアプリ管理テーブル31sを更新する(ステップS55)。   Next, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the application requested for activation in step S50 from the PaaS system 20 (step S54: YES), the registered application management table 31s. Is updated (step S55).

例えば、アプリ起動制御システム30(例えば、アプリ管理部31q)は、PaaSシステム20から正規アプリの起動状態を受信した場合(ステップS54:YES)、その受信した正規アプリの起動状態に応じて、登録済みアプリ管理テーブル31s中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中(正規アプリとして起動中)又は停止中を記憶する。また、アプリ起動制御システム30(例えば、アプリ管理部31q)は、登録済みアプリ管理テーブル31sの「アプリ名」(ここでは、apr04)の「ダミーフラグ」にNoを記憶する。   For example, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the regular application from the PaaS system 20 (step S54: YES), the application activation control system 30 (for example, the application management unit 31q) registers according to the received activation state of the regular application. “Activation status” of “App name” (here, apr04) in the completed application management table 31s is stored as being activated (activated as a regular application) or stopped. Further, the application activation control system 30 (for example, the application management unit 31q) stores No in the “dummy flag” of the “application name” (here, apr04) of the registered application management table 31s.

次に、要求アプリ起動停止部31nが、要求メッセージ転送部31pに対して要求メッセージの転送を要求する(ステップS56)。   Next, the request application activation / deactivation unit 31n requests the request message transfer unit 31p to transfer a request message (step S56).

次に、要求メッセージ転送部31pが、第1アプリ(ここでは、アプリ名apr04)専用の要求キュー31tから要求メッセージを一つ取得し、その要求メッセージをPaaSシステム20へ転送する(ステップS57)。   Next, the request message transfer unit 31p acquires one request message from the request queue 31t dedicated to the first application (in this case, the application name apr04), and transfers the request message to the PaaS system 20 (step S57).

ステップS57の処理は、第1アプリ専用の要求キュー31tが空になるまで実行され(ステップS58:NO)、第1アプリ専用の要求キュー31tが空になった場合(ステップS58:YES)、要求メッセージ受信処理が終了する。   The process of step S57 is executed until the request queue 31t dedicated to the first application is emptied (step S58: NO), and the request queue 31t dedicated to the first application is emptied (step S58: YES). The message reception process ends.

一方、ステップS49での判定の結果、第1アプリのPaaSシステム20での運用状況がダミーアプリとして起動中でない場合(ステップS49:NO)、すなわち、第1アプリのPaaSシステム20での運用状況が正規アプリとして起動中である場合、ステップS56〜S58の処理が実行される。   On the other hand, as a result of the determination in step S49, if the operation status of the first application in the PaaS system 20 is not activated as a dummy application (step S49: NO), that is, the operation status of the first application in the PaaS system 20 is If the application is being activated as a regular application, the processes of steps S56 to S58 are executed.

なお、ステップS42の判定の結果、第1アプリ(アプリ名)が登録済みアプリ管理テーブル31sに登録されていない場合(ステップS43:NO)、要求メッセージ登録確認部31jが、要求メッセージ転送部31pに対して要求メッセージ転送を要求する(ステップS59)。   If the first application (application name) is not registered in the registered application management table 31s as a result of the determination in step S42 (step S43: NO), the request message registration confirmation unit 31j sends to the request message transfer unit 31p. A request message transfer is requested (step S59).

次に、要求メッセージ転送部31pが、ステップS40で受信した要求メッセージをPaaSシステム20に転送する(ステップS60)。   Next, the request message transfer unit 31p transfers the request message received in step S40 to the PaaS system 20 (step S60).

以上のとおり、本実施形態によれば、アプリ利用者から受信した第1アプリ宛の要求メッセージの宛先である第1アプリがPaaSシステム20で起動(イベントドリブン)するまでの間、アプリ利用者から受信した第1アプリ宛の要求メッセージの取りこぼしを防止することができる。   As described above, according to the present embodiment, from the application user until the first application that is the destination of the request message addressed to the first application received from the application user is activated (event driven) in the PaaS system 20. It is possible to prevent the received request message addressed to the first application from being missed.

これは、アプリ利用者から受信した第1アプリ宛の要求メッセージをPaaSシステム20が第1アプリ(正規アプリ)起動前に保存する第1アプリ専用の要求キュー31tを設け、PaaSシステム20が第1アプリ(正規アプリ)起動後、第1アプリ専用の要求キュー31tに保存された第1アプリ宛の要求メッセージをPaaSシステム20へ転送することによるものである。   This is provided with a request queue 31t dedicated to the first application in which the PaaS system 20 stores a request message addressed to the first application received from the application user before the first application (regular application) is activated. This is because the request message addressed to the first application stored in the request queue 31t dedicated to the first application is transferred to the PaaS system 20 after the application (regular application) is activated.

また、上記のとおり、従来、アプリの登録・削除が行われていたが、PaaSシステム20においては、アプリを削除すると、アプリ名を管理している情報が消えるため、他の開発者が同じアプリ名で登録可能となり、希望するアプリ名が使用できない場合があるという課題がある。   In addition, as described above, registration / deletion of applications has been conventionally performed. However, in the PaaS system 20, when an application is deleted, information managing the application name disappears, so that other developers can use the same application. There is a problem that it is possible to register by name, and the desired application name may not be used.

これに対して、本実施形態によれば、アプリを削除するのではなく、あるアプリ名に関し、ダミーアプリ又は正規アプリのいずれかが常にPaaSシステム20に登録されるため、他の開発者が同じアプリ名で登録するのを防止することができる。   On the other hand, according to the present embodiment, instead of deleting an application, since either a dummy application or a regular application is always registered in the PaaS system 20 for a certain application name, other developers are the same. You can prevent registration by application name.

また、本実施形態によれば、アプリ変更予定時刻を経過した正規アプリ(相対的に予約メモリ量が大きい)を同じアプリ名を持つダミーアプリ(相対的に予約メモリ量が小さい)に置き換えるため、予約メモリを削減することができる。   Further, according to the present embodiment, in order to replace a regular application (relatively large reserved memory amount) that has passed the scheduled application change time with a dummy application (relatively small reserved memory amount) having the same application name, The reserved memory can be reduced.

また、本実施形態によれば、アプリ利用者から第1アプリ宛の要求メッセージを受信した場合にのみダミーアプリから同じアプリ名を持つ正規アプリに置き換えるため、PaaSシステム20上のアプリの利用時のみリソースが消費されるようなイベントドリブンサービスを実現することができる。   Further, according to the present embodiment, only when an application on the PaaS system 20 is used, the dummy application is replaced with a regular application having the same application name only when a request message addressed to the first application is received from the application user. An event-driven service that consumes resources can be realized.

[第2実施形態]
次に、第2実施形態の情報処理システム10Aの概要について説明する。
[Second Embodiment]
Next, an overview of the information processing system 10A according to the second embodiment will be described.

図1は、第2実施形態の情報処理システム10Aの概略構成図である。   FIG. 1 is a schematic configuration diagram of an information processing system 10A according to the second embodiment.

以下、第1実施形態との相違点を中心に説明し、第1実施形態と同様の構成については同一の符号を付し、適宜説明を省略する。   Hereinafter, the difference from the first embodiment will be mainly described, the same components as those in the first embodiment will be denoted by the same reference numerals, and description thereof will be omitted as appropriate.

図1に示すように、本実施形態の情報処理システム10Aは、第1実施形態と同様、PaaSシステム20、アプリ起動制御システム30A、開発者端末40、アプリ利用者端末50等を備える。開発者が本発明の契約者に相当し、アプリ利用者が本発明のユーザに相当する。   As shown in FIG. 1, the information processing system 10A of this embodiment includes a PaaS system 20, an application activation control system 30A, a developer terminal 40, an application user terminal 50, and the like, as in the first embodiment. The developer corresponds to the contractor of the present invention, and the application user corresponds to the user of the present invention.

開発者は、開発者端末40を介して正規アプリの登録要求をアプリ起動制御システム30Aに送信する。アプリ起動制御システム30Aは、開発者から正規アプリの登録要求を受信したとき、該アプリ及び該アプリのPaaSシステム20での運用状況を開発者ごとに登録済みアプリ管理テーブル31s2に記憶する。これは、図13と同様の処理であるため、説明を省略する。   The developer transmits a regular application registration request to the application activation control system 30 </ b> A via the developer terminal 40. When the application activation control system 30A receives a registration request for a regular application from a developer, the application activation control system 30A stores the application and the operation status of the application in the PaaS system 20 in the registered application management table 31s2 for each developer. Since this is the same processing as in FIG. 13, description thereof is omitted.

アプリ起動制御システム30Aは、アプリ停止時間テーブル31u2を参照して、運用状況が起動中のアプリ(正規アプリ)のうち最後の要求メッセージを処理(例えば、受信)した時刻(例えば、要求メッセージ受信時刻)から所定時間経過したアプリの停止をPaaSシステム20に要求するとともに所定時間経過したアプリ停止時間テーブル31u2中のアプリの運用状況を停止中に変更する。PaaSシステム20は、正規アプリがコピーされたコンテナ(及び正規アプリ)を停止させる。   The application activation control system 30A refers to the application stop time table 31u2 and processes (for example, receives) the last request message among the applications (regular applications) whose operation status is activated (for example, request message reception time). ) Requesting the PaaS system 20 to stop the application after a predetermined time has elapsed, and change the operation status of the application in the application stop time table 31u2 after the predetermined time has been stopped. The PaaS system 20 stops the container (and the regular application) to which the regular application is copied.

なお、最後の要求メッセージを処理した時刻は、要求メッセージ受信時刻に限らず、要求キュー31tに記憶された該最後の要求メッセージをPaaSシステム20に転送した時刻であってもよい。   The time at which the last request message is processed is not limited to the request message reception time, but may be the time at which the last request message stored in the request queue 31t is transferred to the PaaS system 20.

また、アプリ起動制御システム30Aは、ユーザから第1アプリ宛の要求メッセージを受信したとき、次の処理を行う。   Further, the application activation control system 30A performs the following processing when receiving a request message addressed to the first application from the user.

アプリ起動制御システム30Aは、登録済みアプリ管理テーブル31s2を参照して第1アプリの運用状況が停止中の場合、要求キュー31tに第1アプリ宛の要求メッセージを記憶する。要求キュー31tが本発明の第2メモリに相当する。   When the operation status of the first application is stopped with reference to the registered application management table 31s2, the application activation control system 30A stores a request message addressed to the first application in the request queue 31t. The request queue 31t corresponds to the second memory of the present invention.

次に、第1アプリに対応づけられた第1契約者のアプリのうち運用状況が起動中のアプリの予約済みメモリ量と第1アプリの予約済みメモリ量とを加算した合計量が、第1契約者のメモリ上限量を超えない場合、第1アプリの起動をPaaSシステム20に要求する。PaaSシステム20は、正規アプリがコピーされたコンテナ(及び正規アプリ)を起動させる。   Next, the total amount obtained by adding the reserved memory amount of the application whose operation status is active among the applications of the first contractor associated with the first application and the reserved memory amount of the first application is the first amount. When the memory upper limit amount of the contractor is not exceeded, the activation of the first application is requested to the PaaS system 20. The PaaS system 20 activates the container (and the regular application) in which the regular application is copied.

そして、第1アプリがPaaSシステム20で起動後、要求キュー31tに記憶された第1アプリ宛の要求メッセージをPaaSシステム20に転送するとともに登録済みアプリ管理テーブル31s2中の第1アプリの運用状況を起動中に変更する。PaaSシステム20は、第1アプリ宛の要求メッセージを起動中の第1アプリに転送する。   Then, after the first application is activated in the PaaS system 20, the request message addressed to the first application stored in the request queue 31t is transferred to the PaaS system 20, and the operation status of the first application in the registered application management table 31s2 is displayed. Change during startup. The PaaS system 20 transfers a request message addressed to the first application to the active first application.

図22は、アプリ起動制御システム30Aの主要機能及びアプリ起動制御システム30Aが持つテーブルを説明するための図である。   FIG. 22 is a diagram for explaining a main function of the application activation control system 30A and a table included in the application activation control system 30A.

図22に示すように、本実施形態では、第1実施形態(図8参照)と比べ、さらに、アプリ確認部31wが追加されている。   As shown in FIG. 22, in the present embodiment, an application confirmation unit 31w is further added as compared with the first embodiment (see FIG. 8).

また、本実施形態では、アプリ変更時間テーブル31u(図11参照)に代えて、アプリ停止時間テーブル31u2(図23参照)が用いられる。   In this embodiment, an application stop time table 31u2 (see FIG. 23) is used instead of the application change time table 31u (see FIG. 11).

また、本実施形態では、登録済みアプリ管理テーブル31s(図9参照)に代えて、登録済みアプリ管理テーブル31s2(図24参照)が用いられる。   In the present embodiment, a registered application management table 31s2 (see FIG. 24) is used instead of the registered application management table 31s (see FIG. 9).

図25は、第2実施形態のアプリ起動制御システム30におけるアプリ停止処理の一例を説明するためのフローチャートである。   FIG. 25 is a flowchart for explaining an example of the application stop process in the application activation control system 30 of the second embodiment.

まず、アプリ監視制御部31rが、アプリ停止時間テーブル31u2からアプリ毎に要求メッセージ受信時刻、アプリ停止時間を取得する(ステップS60)。   First, the application monitoring control unit 31r acquires the request message reception time and the application stop time for each application from the application stop time table 31u2 (step S60).

次に、アプリ監視制御部31rが、アプリ停止予定時間(=要求メッセージ受信時刻+アプリ停止時間)を計算する(ステップS61)。   Next, the application monitoring control unit 31r calculates an application stop scheduled time (= request message reception time + application stop time) (step S61).

次に、アプリ停止予定時刻を超えるアプリ名がある場合(ステップS62:YES)、アプリ監視制御部31rが、要求アプリ起動停止部31nに対して該当アプリの停止を要求する(ステップS63)。   Next, when there is an application name that exceeds the scheduled application stop time (step S62: YES), the application monitoring control unit 31r requests the requested application start / stop unit 31n to stop the corresponding application (step S63).

次に、要求アプリ起動停止部31nが、該当アプリの停止を、PaaSシステム20に対して要求する(ステップS64)。   Next, the requested application start / stop unit 31n requests the PaaS system 20 to stop the corresponding application (step S64).

このアプリ停止要求は、該当アプリのアプリ名(例えば、図23中のapr01)を含む。   This application stop request includes the application name of the corresponding application (for example, apr01 in FIG. 23).

PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)からアプリ停止要求(ステップS64)を受信した場合、その受信したアプリ名(ここでは、apr01)のアプリ(正規アプリ)がコピーされたコンテナ21j2を(及び正規アプリ)を停止させる。なお、停止とは、アプリ(正規アプリ)がメモリ21c(又はディスク等のストレージ22)上に存在するが、リソースを消費しない状態(例えば、使用CPU等が0の状態)をいう。   When the PaaS system 20 receives an application stop request (step S64) from the application start control system 30 (requested application start / stop unit 31n), the received application name (here, apr01) is copied (regular application). Stop the container 21j2 (and the regular application). Note that “stop” refers to a state where an application (regular application) exists on the memory 21c (or storage 22 such as a disk) but does not consume resources (for example, a state where the CPU used is zero).

さらに、PaaSシステム20は、アプリ起動制御システム30に対してアプリ(正規アプリ)の起動状態を通知(送信)する。例えば、PaaSシステム20は、コンテナ(及びダミーアプリ)が正常に停止した場合、起動状態として停止中を通知する。   Further, the PaaS system 20 notifies (transmits) the activation state of the application (regular application) to the application activation control system 30. For example, when the container (and the dummy application) is normally stopped, the PaaS system 20 notifies the active state of being stopped.

また、PaaSシステム20は、コンテナ(及びダミーアプリ)が正常に停止した場合、アプリ情報テーブル21n中の「アプリ名」(ここでは、apr04)の「運用状況」に停止中を記憶する。   In addition, when the container (and the dummy application) is normally stopped, the PaaS system 20 stores “stopped” in the “operation status” of the “application name” (here, apr04) in the application information table 21n.

次に、アプリ起動制御システム30(例えば、アプリ管理部31q)は、ステップS64で起動要求したアプリの起動状態を、PaaSシステム20から受信した場合(ステップS65:YES)、登録済みアプリ管理テーブル31s2を更新する(ステップS66)。   Next, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the application requested for activation in step S64 from the PaaS system 20 (step S65: YES), the registered application management table 31s2 Is updated (step S66).

例えば、アプリ起動制御システム30(例えば、アプリ管理部31q)は、PaaSシステム20からアプリの起動状態を受信した場合(ステップS65:YES)、その受信したアプリの起動状態に応じて、登録済みアプリ管理テーブル31s2中の「アプリ名」(ここでは、apr01)の「運用状況」に起動中又は停止中を記憶する。   For example, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the application from the PaaS system 20 (step S65: YES), the registered application according to the received activation state of the application “Activation status” of “application name” (here, apr01) in the management table 31s2 is stored as being activated or stopped.

上記ステップS60〜S66の処理は、指定間隔ごとに実行される。   The processes in steps S60 to S66 are executed at specified intervals.

図26、図27は、アプリ起動制御システム30Aにおける要求メッセージ受信処理を説明するためのフローチャートである。   26 and 27 are flowcharts for explaining request message reception processing in the application activation control system 30A.

以下、第1実施形態(図19、図20)との相違点を中心に説明し、第1実施形態(図19、図20)と同様の処理については同一の符号を付し、適宜説明を省略する。   In the following, differences from the first embodiment (FIGS. 19 and 20) will be mainly described, and the same processes as those in the first embodiment (FIGS. 19 and 20) will be denoted by the same reference numerals, and description will be appropriately given. Omitted.

まず、要求メッセージ受信部31hが、アプリ利用者からアプリ利用者端末50を介して送信された第1アプリ宛の要求メッセージを受信するまで待機する(ステップS40:NO)。   First, it waits until the request message receiving unit 31h receives a request message addressed to the first application transmitted from the application user via the application user terminal 50 (step S40: NO).

以下、要求メッセージ受信部31hが、アプリ利用者から第1アプリ宛(ここでは、アプリ名apr04、開発者名Usr01)の要求メッセージを受信した場合の処理の一例について説明する。   Hereinafter, an example of processing when the request message receiving unit 31h receives a request message addressed to the first application (here, application name apr04, developer name Usr01) from the application user will be described.

要求メッセージ受信部31hは、第1アプリ宛の要求メッセージを受信した場合(ステップS40:YES)、要求メッセージ登録確認部31jに対して第1アプリ(アプリ名)が登録済みアプリ管理テーブル31s2に登録(記憶)されているか否の確認を要求(アプリ確認要求)する(ステップS41)。   When the request message reception unit 31h receives a request message addressed to the first application (step S40: YES), the first application (application name) is registered in the registered application management table 31s2 with respect to the request message registration confirmation unit 31j. A request for confirmation (application confirmation request) is made as to whether or not it is stored (step S41).

次に、要求メッセージ登録確認部31jは、第1アプリ(アプリ名)が登録済みアプリ管理テーブル31s2に登録されているか否かを判定(確認)する(ステップS42)。   Next, the request message registration confirmation unit 31j determines (confirms) whether or not the first application (application name) is registered in the registered application management table 31s2 (step S42).

この判定の結果、第1アプリ(アプリ名)が登録済みアプリ管理テーブル31s2に登録されている場合(ステップS43:YES)、次の第1〜第3の処理が実行される。   As a result of this determination, when the first application (application name) is registered in the registered application management table 31s2 (step S43: YES), the following first to third processes are executed.

第1の処理は、アプリ停止時間テーブル31u2中の要求メッセージ受信時刻を更新する処理である。   The first process is a process of updating the request message reception time in the application stop time table 31u2.

具体的には、まず、要求メッセージ登録確認部31jが、アプリ監視制御部31rに対して要求メッセージ受信時刻を通知する(ステップS44)。   Specifically, first, the request message registration confirmation unit 31j notifies the application monitoring control unit 31r of the request message reception time (step S44).

次に、アプリ監視制御部31rが、アプリ停止時間テーブル31u2中の「アプリ名」が第1アプリの「要求メッセージ受信時刻」を、要求メッセージ登録確認部31jから通知された要求メッセージ受信時刻で更新(例えば、上書き)する(ステップS45)。   Next, the application monitoring control unit 31r updates the “request message reception time” of the first application whose “application name” in the application stop time table 31u2 is the request message reception time notified from the request message registration confirmation unit 31j. (For example, overwriting) (step S45).

第2の処理は、ステップS40で受信した要求メッセージを要求キュー31tに保存する処理である。   The second process is a process of saving the request message received in step S40 in the request queue 31t.

具体的には、まず、要求メッセージ登録確認部31jが、要求メッセージ保存部31kに対してステップS40で受信した要求メッセージの保存を要求する(ステップS46)。   Specifically, first, the request message registration confirmation unit 31j requests the request message storage unit 31k to store the request message received in step S40 (step S46).

次に、要求メッセージ保存部31kが、ステップS40で受信した要求メッセージを第1アプリ専用の要求キュー31tに保存する(ステップS47)。   Next, the request message storage unit 31k stores the request message received in step S40 in the request queue 31t dedicated to the first application (step S47).

第3の処理は、第1アプリのPaaSシステム20での運用状況が停止中である場合、第1アプリの起動を、PaaSシステム20に対して要求する処理である。   The third process is a process for requesting the PaaS system 20 to start the first application when the operation status of the first application in the PaaS system 20 is stopped.

具体的には、まず、要求メッセージ登録確認部31jが、アプリ確認部31wに対して第1アプリの動作確認を要求する(ステップS70)。   Specifically, the request message registration confirmation unit 31j first requests the application confirmation unit 31w to confirm the operation of the first application (step S70).

次に、アプリ確認部31wが、登録済みアプリ管理テーブル31s2(「運用状況」)を参照して、第1アプリのPaaSシステム20での運用状況が起動中か否かを判定(確認)する(ステップS71)。   Next, the application confirmation unit 31w refers to the registered application management table 31s2 (“operation status”) to determine (confirm) whether or not the operation status of the first application in the PaaS system 20 is being activated ( Step S71).

この判定の結果、第1アプリのPaaSシステム20での運用状況が起動中である場合(ステップS49A:YES)、アプリ確認部31wが、第1アプリの起動を、要求アプリ起動停止部31nに対して要求する(ステップS50A)。   As a result of this determination, if the operation status of the first application in the PaaS system 20 is being activated (step S49A: YES), the application confirmation unit 31w causes the requested application activation / deactivation unit 31n to activate the first application. (Step S50A).

次に、要求アプリ起動停止部31nが、第1アプリ(ここでは、アプリ名apr04)に対応付けられた第1契約者(ここでは、Usr01)のアプリ(アプリ名)のうち「運用状況」が起動中のアプリの「予約済みメモリ量」とステップS40で受信した第1アプリの「予約済みメモリ量」とを加算した合計量が、第1契約者(ここでは、Usr01)のメモリ上限量を超えるか否かを判定(確認)する(ステップS51)。   Next, the requested application activation / deactivation unit 31n determines that the “operational status” is the application (application name) of the first contractor (here, Usr01) associated with the first application (here, the application name apr04). The total amount obtained by adding the “reserved memory amount” of the active application and the “reserved memory amount” of the first application received in step S40 is the memory upper limit amount of the first contractor (here, Usr01). It is determined (confirmed) whether or not it exceeds (step S51).

この判定の結果、合計量がメモリ上限量を超えない場合(ステップS52:NO)、要求アプリ起動停止部31nが、第1アプリの起動を、PaaSシステム20に対して要求する(ステップS53A)。   As a result of this determination, if the total amount does not exceed the memory upper limit amount (step S52: NO), the requested application activation / deactivation unit 31n requests the PaaS system 20 to activate the first application (step S53A).

この第1アプリ起動要求は、第1アプリのアプリ名(ここでは、apr04)を含む。   This first application activation request includes the application name of the first application (here, apr04).

PaaSシステム20は、アプリ起動制御システム30(要求アプリ起動停止部31n)から第1アプリ起動要求(ステップS53A)を受信した場合、その受信したアプリ名のアプリ(正規アプリ)がコピーされたコンテナ21j2(及び正規アプリ)を起動させる。   When the PaaS system 20 receives the first application activation request (step S53A) from the application activation control system 30 (requested application activation stop unit 31n), the container 21j2 in which the application (regular application) of the received application name is copied. (And regular app).

さらに、PaaSシステム20は、アプリ起動制御システム30に対して正規アプリの起動状態を通知(送信)する。例えば、PaaSシステム20は、コンテナ(及び正規アプリ)が正常に起動した場合、起動状態として起動中を通知し、何らかの理由で正常に起動しなかった場合、起動状態として停止中を通知する。   Further, the PaaS system 20 notifies (transmits) the activation state of the regular application to the application activation control system 30. For example, when the container (and the regular application) starts normally, the PaaS system 20 notifies the activation as the activation state, and when it does not activate normally for some reason, the PaaS system 20 notifies the activation as the activation state.

また、PaaSシステム20は、正規アプリの起動状態に応じて、アプリ情報テーブル21n中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中(正規アプリとして起動中)又は停止中を記憶する。   Further, the PaaS system 20 is activated (activated as a regular application) or stopped in the “operation status” of the “application name” (here, apr04) in the application information table 21n according to the activated state of the authorized application. Remember.

次に、アプリ起動制御システム30(例えば、アプリ管理部31q)は、ステップS50Aで起動要求したアプリの起動状態を、PaaSシステム20から受信した場合(ステップS54:YES)、登録済みアプリ管理テーブル31sを更新する(ステップS55)。   Next, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the application requested for activation in step S50A from the PaaS system 20 (step S54: YES), the registered application management table 31s. Is updated (step S55).

例えば、アプリ起動制御システム30(例えば、アプリ管理部31q)は、PaaSシステム20からアプリの起動状態を受信した場合(ステップS54:YES)、その受信したアプリの起動状態に応じて、登録済みアプリ管理テーブル31s中の「アプリ名」(ここでは、apr04)の「運用状況」に起動中又は停止中を記憶する。   For example, when the application activation control system 30 (for example, the application management unit 31q) receives the activation state of the application from the PaaS system 20 (step S54: YES), the registered application according to the received activation state of the application “Activation status” of “application name” (here, apr04) in the management table 31s is stored as being activated or stopped.

次に、要求アプリ起動停止部31nが、要求メッセージ転送部31pに対して要求メッセージの転送を要求する(ステップS56)。   Next, the request application activation / deactivation unit 31n requests the request message transfer unit 31p to transfer a request message (step S56).

次に、要求メッセージ転送部31pが、第1アプリ(ここでは、アプリ名apr04)専用の要求キュー31tから要求メッセージを一つ取得し、その要求メッセージをPaaSシステム20へ転送する(ステップS57)。   Next, the request message transfer unit 31p acquires one request message from the request queue 31t dedicated to the first application (in this case, the application name apr04), and transfers the request message to the PaaS system 20 (step S57).

ステップS57の処理は、第1アプリ専用の要求キュー31tが空になるまで実行され(ステップS58:NO)、第1アプリ専用の要求キュー31tが空になった場合(ステップS58:YES)、要求メッセージ受信処理が終了する。   The process of step S57 is executed until the request queue 31t dedicated to the first application is emptied (step S58: NO), and the request queue 31t dedicated to the first application is emptied (step S58: YES). The message reception process ends.

一方、ステップS49での判定の結果、第1アプリのPaaSシステム20での運用状況が起動中でない場合(ステップS49:NO)、すなわち、第1アプリのPaaSシステム20での運用状況が停止中である場合、ステップS56〜S58の処理が実行される。   On the other hand, if the result of determination in step S49 is that the operation status of the first application in the PaaS system 20 is not active (step S49: NO), that is, the operation status of the first application in the PaaS system 20 is stopped. If there is, the processes in steps S56 to S58 are executed.

なお、ステップS43の判定の結果、第1アプリ(アプリ名)が登録済みアプリ管理テーブル31sに登録されていない場合(ステップS43:NO)、要求メッセージ登録確認部31jが、要求メッセージ転送部31pに対して要求メッセージ転送を要求する(ステップS59)。   If the first application (application name) is not registered in the registered application management table 31s as a result of the determination in step S43 (step S43: NO), the request message registration confirmation unit 31j is sent to the request message transfer unit 31p. A request message transfer is requested (step S59).

次に、要求メッセージ転送部31pが、ステップS40で受信した要求メッセージをPaaSシステム20に転送する(ステップS60)。   Next, the request message transfer unit 31p transfers the request message received in step S40 to the PaaS system 20 (step S60).

以上のとおり、本実施形態によれば、アプリ利用者から受信した第1アプリ宛の要求メッセージの宛先である第1アプリがPaaSシステム20で起動(イベントドリブン)するまでの間、アプリ利用者から受信した第1アプリ宛の要求メッセージの取りこぼしを防止することができる。   As described above, according to the present embodiment, from the application user until the first application that is the destination of the request message addressed to the first application received from the application user is activated (event driven) in the PaaS system 20. It is possible to prevent the received request message addressed to the first application from being missed.

これは、アプリ利用者から受信した第1アプリ宛の要求メッセージをPaaSシステム20が第1アプリ(正規アプリ)起動前に保存する第1アプリ専用の要求キュー31tを設け、PaaSシステム20が第1アプリ(正規アプリ)起動後、第1アプリ専用の要求キュー31tに保存された第1アプリ宛の要求メッセージをPaaSシステム20へ転送することによるものである。   This is provided with a request queue 31t dedicated to the first application in which the PaaS system 20 stores a request message addressed to the first application received from the application user before the first application (regular application) is activated. This is because the request message addressed to the first application stored in the request queue 31t dedicated to the first application is transferred to the PaaS system 20 after the application (regular application) is activated.

また、上記のとおり、従来、アプリの登録・削除が行われていたが、PaaSシステム20においては、アプリを削除すると、アプリ名を管理している情報が消えるため、他の開発者が同じアプリ名で登録可能となり、希望するアプリ名が使用できない場合があるという課題がある。   In addition, as described above, registration / deletion of applications has been conventionally performed. However, in the PaaS system 20, when an application is deleted, information managing the application name disappears, so that other developers can use the same application. There is a problem that it is possible to register by name, and the desired application name may not be used.

これに対して、本実施形態によれば、アプリを削除するのではなく、あるアプリ名に関し、起動中又は停止中の正規アプリが常にPaaSシステム20に登録されるため、他の開発者が同じアプリ名で登録するのを防止することができる。   On the other hand, according to the present embodiment, the application is not deleted, but a regular application that is being activated or stopped is always registered in the PaaS system 20 for a certain application name, so that other developers are the same. You can prevent registration by application name.

また、本実施形態によれば、アプリ利用者から第1アプリ宛の要求メッセージを受信した場合にのみPaaSシステムでの運用状況が停止中から起動中となるため、PaaSシステム20上のアプリの利用時のみリソースが消費されるようなイベントドリブンサービスを実現することができる。   In addition, according to the present embodiment, only when a request message addressed to the first application is received from the application user, the operation status in the PaaS system is changed from being stopped to being activated. It is possible to realize an event-driven service in which resources are consumed only at times.

以上の実施形態をまとめると、次の付記のとおりである。   The above embodiment is summarized as follows.

(付記1)
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアの停止を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況を停止中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況が停止中の場合、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの起動を前記システムに要求し、該第1ソフトウェアの起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を起動中に変更する第3処理を行う、
処理をコンピュータで実行させるソフトウェア制御プログラム。
(Appendix 1)
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Requesting the system to stop the software after a predetermined time has elapsed from the time when the last request message was processed, and changing the operation status of the software after the predetermined time has passed to the stop,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is running, a second process is performed to transfer the request message stored in the second memory to the system,
When the operating status of the first software is stopped, the resources of the software whose operating status is activated and the resources of the first software among the software of the first contractor associated with the first software are added When the total amount does not exceed the resource upper limit amount of the first contractor, the system requests the system to start the first software, and after the first software starts, the request message stored in the second memory Performing a third process of transferring to the system and changing the operating status of the first software during startup;
A software control program that causes a computer to execute processing.

(付記2)
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
運用状況が正規ソフトウェアとして起動中のソフトウェアのうち最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアのダミーソフトウェアとしての起動を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況をダミーソフトウェアとして起動中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が正規ソフトウェアとして起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況がダミーソフトウェアとして起動中の場合、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶し、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの正規ソフトウェアとしての起動を前記システムに要求し、該第1ソフトウェアが正規ソフトウェアとして起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を正規ソフトウェアとして起動中に変更する第3処理を行う、
処理をコンピュータで実行させるソフトウェア制御プログラム。
(Appendix 2)
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Among the software whose operating status is being activated as regular software, the system is requested to start as software dummy software whose predetermined time has elapsed from the time when the last request message was processed, and the operating status of software whose predetermined time has elapsed is dummy Change while running as software,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is activated as regular software, a second process is performed to transfer the request message stored in the second memory to the system,
When the operation status of the first software is activated as dummy software, a request message addressed to the first software is stored in the second memory, and the operation of the software of the first contractor associated with the first software is performed. When the total amount obtained by adding the resources of the software being activated and the resources of the first software does not exceed the resource upper limit amount of the first contractor, the activation of the first software as the regular software is performed in the system. A request message stored in the second memory is transferred to the system, and the operating status of the first software is changed during activation as regular software. Process,
A software control program that causes a computer to execute processing.

(付記3)
付記1又は2において、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、該第1ソフトウェアが前記第1メモリに記憶されていない場合、前記第1処理、前記第2処理、前記第3処理を行うことなく、前記システムへ該第1ソフトウェア宛の要求メッセージを転送し、該第1ソフトウェアが前記第1メモリに記憶されている場合、前記第1処理、前記第2処理、前記第3処理を行うソフトウェア制御プログラム。
(Appendix 3)
In Appendix 1 or 2,
When the first software is received from the user and the first software is not stored in the first memory, the first process, the second process, and the third process are performed without performing the first process, the second process, and the third process. A software control program for transferring a request message addressed to the first software to a system and performing the first process, the second process, and the third process when the first software is stored in the first memory.

(付記4)
付記1から3のいずれかの付記において、
契約者からソフトウェアの登録要求を受信したとき、該ソフトウェア及び該ソフトウェアの運用状況を契約者ごとに前記第1メモリに記憶するソフトウェア制御プログラム。
(Appendix 4)
In any one of supplementary notes 1 to 3,
When receiving a software registration request from a contractor, a software control program for storing the software and the operation status of the software in the first memory for each contractor.

(付記5)
付記1から4のいずれかの付記において、前記第2メモリは、前記第1ソフトウェア専用のメモリであるソフトウェア制御プログラム。
(Appendix 5)
The software control program according to any one of appendices 1 to 4, wherein the second memory is a memory dedicated to the first software.

(付記6)
付記1から5のいずれかの付記において、
前記第2メモリは、キューであり、
前記第2メモリに記憶された要求メッセージを前記システムに転送する場合、該要求メッセージを順に前記システムに転送するソフトウェア制御プログラム。
(Appendix 6)
In any one of appendices 1 to 5,
The second memory is a queue;
A software control program for sequentially transferring the request messages to the system when transferring the request messages stored in the second memory to the system.

(付記7)
付記1から6のいずれかの付記において、
前記最後の要求メッセージを処理した時刻は、該最後の要求メッセージをユーザから受信した時刻又は前記第2メモリに記憶された該最後の要求メッセージを前記システムに転送した時刻であるソフトウェア制御プログラム。
(Appendix 7)
In any one of appendices 1 to 6,
The time when the last request message was processed is a software control program which is the time when the last request message is received from a user or the time when the last request message stored in the second memory is transferred to the system.

(付記8)
メモリと、
前記メモリにアクセス可能なプロセッサと、を備え、
前記プロセッサは、
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアの停止を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況を停止中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況が停止中の場合、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの起動を前記システムに要求し、該第1ソフトウェアの起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を起動中に変更する第3処理を行う、
処理を実行するソフトウェア制御装置。
(Appendix 8)
Memory,
A processor capable of accessing the memory,
The processor is
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Requesting the system to stop the software after a predetermined time has elapsed from the time when the last request message was processed, and changing the operation status of the software after the predetermined time has passed to the stop,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is running, a second process is performed to transfer the request message stored in the second memory to the system,
When the operating status of the first software is stopped, the resources of the software whose operating status is activated and the resources of the first software among the software of the first contractor associated with the first software are added When the total amount does not exceed the resource upper limit amount of the first contractor, the system requests the system to start the first software, and after the first software starts, the request message stored in the second memory Performing a third process of transferring to the system and changing the operating status of the first software during startup;
Software control device that executes processing.

(付記9)
メモリと、
前記メモリにアクセス可能なプロセッサと、を備え、
前記プロセッサは、
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
運用状況が正規ソフトウェアとして起動中のソフトウェアのうち最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアのダミーソフトウェアとしての起動を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況をダミーソフトウェアとして起動中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が正規ソフトウェアとして起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況がダミーソフトウェアとして起動中の場合、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶し、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの正規ソフトウェアとしての起動を前記システムに要求し、該第1ソフトウェアが正規ソフトウェアとして起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を正規ソフトウェアとして起動中に変更する第3処理を行う、処理を実行するソフトウェア制御装置。
(Appendix 9)
Memory,
A processor capable of accessing the memory,
The processor is
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Among the software whose operating status is being activated as regular software, the system is requested to start as software dummy software whose predetermined time has elapsed from the time when the last request message was processed, and the operating status of software whose predetermined time has elapsed is dummy Change while running as software,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is activated as regular software, a second process is performed to transfer the request message stored in the second memory to the system,
When the operation status of the first software is activated as dummy software, a request message addressed to the first software is stored in the second memory, and the operation of the software of the first contractor associated with the first software is performed. When the total amount obtained by adding the resources of the software being activated and the resources of the first software does not exceed the resource upper limit amount of the first contractor, the activation of the first software as the regular software is performed in the system. A request message stored in the second memory is transferred to the system, and the operating status of the first software is changed during activation as regular software. A software control device that performs processing and executes processing.

(付記10)
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアの停止を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況を停止中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況が停止中の場合、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの起動を前記システムに要求し、該第1ソフトウェアの起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を起動中に変更する第3処理を行う、
処理をコンピュータで実行させるソフトウェア制御方法。
(Appendix 10)
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Requesting the system to stop the software after a predetermined time has elapsed from the time when the last request message was processed, and changing the operation status of the software after the predetermined time has passed to the stop,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is running, a second process is performed to transfer the request message stored in the second memory to the system,
When the operating status of the first software is stopped, the resources of the software whose operating status is activated and the resources of the first software among the software of the first contractor associated with the first software are added When the total amount does not exceed the resource upper limit amount of the first contractor, the system requests the system to start the first software, and after the first software starts, the request message stored in the second memory Performing a third process of transferring to the system and changing the operating status of the first software during startup;
A software control method for causing a computer to execute processing.

(付記11)
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
運用状況が正規ソフトウェアとして起動中のソフトウェアのうち最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアのダミーソフトウェアとしての起動を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況をダミーソフトウェアとして起動中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が正規ソフトウェアとして起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況がダミーソフトウェアとして起動中の場合、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶し、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの正規ソフトウェアとしての起動を前記システムに要求し、該第1ソフトウェアが正規ソフトウェアとして起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を正規ソフトウェアとして起動中に変更する第3処理を行う、処理をコンピュータで実行させるソフトウェア制御方法。
(Appendix 11)
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Among the software whose operating status is being activated as regular software, the system is requested to start as software dummy software whose predetermined time has elapsed from the time when the last request message was processed, and the operating status of software whose predetermined time has elapsed is dummy Change while running as software,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is activated as regular software, a second process is performed to transfer the request message stored in the second memory to the system,
When the operation status of the first software is activated as dummy software, a request message addressed to the first software is stored in the second memory, and the operation of the software of the first contractor associated with the first software is performed. When the total amount obtained by adding the resources of the software being activated and the resources of the first software does not exceed the resource upper limit amount of the first contractor, the activation of the first software as the regular software is performed in the system. A request message stored in the second memory is transferred to the system, and the operating status of the first software is changed during activation as regular software. Software control method for performing processing and causing processing to be executed by a computer

10、10A:情報処理システム
20:PaaSシステム
10, 10A: Information processing system 20: PaaS system

Claims (9)

システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアの停止を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況を停止中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況が停止中の場合、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの起動を前記システムに要求し、該第1ソフトウェアの起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を起動中に変更する第3処理を行う、
処理をコンピュータで実行させるソフトウェア制御プログラム。
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Requesting the system to stop the software after a predetermined time has elapsed from the time when the last request message was processed, and changing the operation status of the software after the predetermined time has passed to the stop,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is running, a second process is performed to transfer the request message stored in the second memory to the system,
When the operating status of the first software is stopped, the resources of the software whose operating status is activated and the resources of the first software among the software of the first contractor associated with the first software are added When the total amount does not exceed the resource upper limit amount of the first contractor, the system requests the system to start the first software, and after the first software starts, the request message stored in the second memory Performing a third process of transferring to the system and changing the operating status of the first software during startup;
A software control program that causes a computer to execute processing.
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
運用状況が正規ソフトウェアとして起動中のソフトウェアのうち最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアのダミーソフトウェアとしての起動を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況をダミーソフトウェアとして起動中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が正規ソフトウェアとして起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況がダミーソフトウェアとして起動中の場合、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶し、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの正規ソフトウェアとしての起動を前記システムに要求し、該第1ソフトウェアが正規ソフトウェアとして起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を正規ソフトウェアとして起動中に変更する第3処理を行う、
処理をコンピュータで実行させるソフトウェア制御プログラム。
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Among the software whose operating status is being activated as regular software, the system is requested to start as software dummy software whose predetermined time has elapsed from the time when the last request message was processed, and the operating status of software whose predetermined time has elapsed is dummy Change while running as software,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is activated as regular software, a second process is performed to transfer the request message stored in the second memory to the system,
When the operation status of the first software is activated as dummy software, a request message addressed to the first software is stored in the second memory, and the operation of the software of the first contractor associated with the first software is performed. When the total amount obtained by adding the resources of the software being activated and the resources of the first software does not exceed the resource upper limit amount of the first contractor, the activation of the first software as the regular software is performed in the system. A request message stored in the second memory is transferred to the system, and the operating status of the first software is changed during activation as regular software. Process,
A software control program that causes a computer to execute processing.
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、該第1ソフトウェアが前記第1メモリに記憶されていない場合、前記第1処理、前記第2処理、前記第3処理を行うことなく、前記システムへ該第1ソフトウェア宛の要求メッセージを転送し、該第1ソフトウェアが前記第1メモリに記憶されている場合、前記第1処理、前記第2処理、前記第3処理を行う請求項1又は2に記載のソフトウェア制御プログラム。   When the first software is received from the user and the first software is not stored in the first memory, the first process, the second process, and the third process are performed without performing the first process, the second process, and the third process. The request message addressed to the first software is transferred to the system, and when the first software is stored in the first memory, the first process, the second process, and the third process are performed. The software control program according to 2. 前記第2メモリは、前記第1ソフトウェア専用のメモリである請求項1から3のいずれか1項に記載のソフトウェア制御プログラム。   The software control program according to any one of claims 1 to 3, wherein the second memory is a memory dedicated to the first software. 前記最後の要求メッセージを処理した時刻は、該最後の要求メッセージをユーザから受信した時刻又は前記第2メモリに記憶された該最後の要求メッセージを前記システムに転送した時刻である請求項1から4のいずれか1項に記載のソフトウェア制御プログラム。   5. The time when the last request message is processed is the time when the last request message is received from a user or the time when the last request message stored in the second memory is transferred to the system. The software control program according to any one of the above. メモリと、
前記メモリにアクセス可能なプロセッサと、を備え、
前記プロセッサは、
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアの停止を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況を停止中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況が停止中の場合、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの起動を前記システムに要求し、該第1ソフトウェアの起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を起動中に変更する第3処理を行う、
処理を実行するソフトウェア制御装置。
Memory,
A processor capable of accessing the memory,
The processor is
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Requesting the system to stop the software after a predetermined time has elapsed from the time when the last request message was processed, and changing the operation status of the software after the predetermined time has passed to the stop,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is running, a second process is performed to transfer the request message stored in the second memory to the system,
When the operating status of the first software is stopped, the resources of the software whose operating status is activated and the resources of the first software among the software of the first contractor associated with the first software are added When the total amount does not exceed the resource upper limit amount of the first contractor, the system requests the system to start the first software, and after the first software starts, the request message stored in the second memory Performing a third process of transferring to the system and changing the operating status of the first software during startup;
Software control device that executes processing.
メモリと、
前記メモリにアクセス可能なプロセッサと、を備え、
前記プロセッサは、
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
運用状況が正規ソフトウェアとして起動中のソフトウェアのうち最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアのダミーソフトウェアとしての起動を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況をダミーソフトウェアとして起動中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が正規ソフトウェアとして起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況がダミーソフトウェアとして起動中の場合、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶し、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの正規ソフトウェアとしての起動を前記システムに要求し、該第1ソフトウェアが正規ソフトウェアとして起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を正規ソフトウェアとして起動中に変更する第3処理を行う、処理を実行するソフトウェア制御装置。
Memory,
A processor capable of accessing the memory,
The processor is
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Among the software whose operating status is being activated as regular software, the system is requested to start as software dummy software whose predetermined time has elapsed from the time when the last request message was processed, and the operating status of software whose predetermined time has elapsed is dummy Change while running as software,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is activated as regular software, a second process is performed to transfer the request message stored in the second memory to the system,
When the operation status of the first software is activated as dummy software, a request message addressed to the first software is stored in the second memory, and the operation of the software of the first contractor associated with the first software is performed. When the total amount obtained by adding the resources of the software being activated and the resources of the first software does not exceed the resource upper limit amount of the first contractor, the activation of the first software as the regular software is performed in the system. A request message stored in the second memory is transferred to the system, and the operating status of the first software is changed during activation as regular software. A software control device that performs processing and executes processing.
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアの停止を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況を停止中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況が停止中の場合、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの起動を前記システムに要求し、該第1ソフトウェアの起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を起動中に変更する第3処理を行う、
処理をコンピュータで実行させるソフトウェア制御方法。
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Requesting the system to stop the software after a predetermined time has elapsed from the time when the last request message was processed, and changing the operation status of the software after the predetermined time has passed to the stop,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is running, a second process is performed to transfer the request message stored in the second memory to the system,
When the operating status of the first software is stopped, the resources of the software whose operating status is activated and the resources of the first software among the software of the first contractor associated with the first software are added When the total amount does not exceed the resource upper limit amount of the first contractor, the system requests the system to start the first software, and after the first software starts, the request message stored in the second memory Performing a third process of transferring to the system and changing the operating status of the first software during startup;
A software control method for causing a computer to execute processing.
システムで起動するソフトウェア及び該ソフトウェアの前記システムでの運用状況を契約者ごとに第1メモリに記憶し、
運用状況が正規ソフトウェアとして起動中のソフトウェアのうち最後の要求メッセージを処理した時刻から所定時間経過したソフトウェアのダミーソフトウェアとしての起動を前記システムに要求するとともに前記所定時間経過したソフトウェアの運用状況をダミーソフトウェアとして起動中に変更し、
ユーザから第1ソフトウェア宛の要求メッセージを受信したとき、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶する第1処理を行い、
該第1ソフトウェアの運用状況が正規ソフトウェアとして起動中の場合、前記第2メモリに記憶された要求メッセージを前記システムに転送する第2処理を行い、
該第1ソフトウェアの運用状況がダミーソフトウェアとして起動中の場合、第2メモリに前記第1ソフトウェア宛の要求メッセージを記憶し、前記第1ソフトウェアに対応づけられた第1契約者のソフトウェアのうち運用状況が起動中のソフトウェアのリソースと前記第1ソフトウェアのリソースとを加算した合計量が、前記第1契約者のリソース上限量を超えない場合、前記第1ソフトウェアの正規ソフトウェアとしての起動を前記システムに要求し、該第1ソフトウェアが正規ソフトウェアとして起動後、前記第2メモリに記憶された要求メッセージを前記システムに転送するとともに前記第1ソフトウェアの運用状況を正規ソフトウェアとして起動中に変更する第3処理を行う、処理をコンピュータで実行させるソフトウェア制御方法。
Software activated in the system and the operation status of the software in the system are stored in the first memory for each contractor;
Among the software whose operating status is being activated as regular software, the system is requested to start as software dummy software whose predetermined time has elapsed from the time when the last request message was processed, and the operating status of software whose predetermined time has elapsed is dummy Change while running as software,
When a request message addressed to the first software is received from a user, a first process of storing the request message addressed to the first software in a second memory is performed.
When the operation status of the first software is activated as regular software, a second process is performed to transfer the request message stored in the second memory to the system,
When the operation status of the first software is activated as dummy software, a request message addressed to the first software is stored in the second memory, and the operation of the software of the first contractor associated with the first software is performed. When the total amount obtained by adding the resources of the software being activated and the resources of the first software does not exceed the resource upper limit amount of the first contractor, the activation of the first software as the regular software is performed in the system. A request message stored in the second memory is transferred to the system, and the operating status of the first software is changed during activation as regular software. Software control method for performing processing and causing processing to be executed by a computer
JP2017028219A 2017-02-17 2017-02-17 Software control program, software control device, and software control method Pending JP2018133046A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017028219A JP2018133046A (en) 2017-02-17 2017-02-17 Software control program, software control device, and software control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017028219A JP2018133046A (en) 2017-02-17 2017-02-17 Software control program, software control device, and software control method

Publications (1)

Publication Number Publication Date
JP2018133046A true JP2018133046A (en) 2018-08-23

Family

ID=63248468

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017028219A Pending JP2018133046A (en) 2017-02-17 2017-02-17 Software control program, software control device, and software control method

Country Status (1)

Country Link
JP (1) JP2018133046A (en)

Similar Documents

Publication Publication Date Title
US9519504B2 (en) Managing a server template
US9329909B1 (en) Dynamically modifying a cluster of computing nodes used for distributed execution of a program
US8321558B1 (en) Dynamically monitoring and modifying distributed execution of programs
CN109189334B (en) Block chain network service platform, capacity expansion method thereof and storage medium
JP6677294B2 (en) Network system, patch file application method, and program
KR101373461B1 (en) Terminal and method for using cloud sevices
US20150154042A1 (en) Computer system and control method for virtual machine
JPWO2010116676A1 (en) Service providing apparatus, service providing system, data processing method of service providing apparatus, and computer program
JP5346405B2 (en) Network system
US10620871B1 (en) Storage scheme for a distributed storage system
US20120102484A1 (en) Installing software remotely using a high privilege process
US20210055922A1 (en) Hydration of applications
CN110413369B (en) System and method for backup in virtualized environments
WO2013145434A1 (en) Network system and method for controlling same
US9021489B2 (en) Start, suspend and resume an application program where the application program utilizes the same handle to identify a resource upon resumption
JP2016035669A (en) Data migration method and data migration apparatus
US20130238675A1 (en) Information processing apparatus, image file management method and storage medium
US11907075B2 (en) Method and system for continuous mapping of protection policies to data cluster components
JP2018133046A (en) Software control program, software control device, and software control method
JP5180399B2 (en) Information processing apparatus, information processing method, and program
CN115136133A (en) Single use execution environment for on-demand code execution
US10140155B2 (en) Dynamically provisioning, managing, and executing tasks
JP2018205839A (en) Information processing system and control method
US20200012432A1 (en) System and method for efficient restore
JP5613820B1 (en) Intellectual property information management system