JP2005250818A - Program execution service provision method - Google Patents

Program execution service provision method Download PDF

Info

Publication number
JP2005250818A
JP2005250818A JP2004059979A JP2004059979A JP2005250818A JP 2005250818 A JP2005250818 A JP 2005250818A JP 2004059979 A JP2004059979 A JP 2004059979A JP 2004059979 A JP2004059979 A JP 2004059979A JP 2005250818 A JP2005250818 A JP 2005250818A
Authority
JP
Japan
Prior art keywords
program
user
execution environment
service
processing
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
JP2004059979A
Other languages
Japanese (ja)
Inventor
Yushi Otani
雄史 大谷
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004059979A priority Critical patent/JP2005250818A/en
Publication of JP2005250818A publication Critical patent/JP2005250818A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To quantitatively guarantee processing capacity with small equipment investment in service for providing the processing ability of a computer to execute a program of a user. <P>SOLUTION: In this program execution service provision method, the computer program of the user is received and is executed on condition that the data processing capacity of the computer or the like is procurable. More specifically, the user of the program execution service defines the processing capacity necessary for the program execution and designates it to a service provider. Thereby, even if the service provider does not hold the processing capacity enough to always satisfy peak-time performance, the processing capacity is dynamically procured from a network, and the provision of the designated processing capacity is guaranteed to the user. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、計算機等のデータ処理能力を調達可能であることを前提に、利用者の計算機プログラムを受け入れ、実行するサービスを提供方法に関する。より詳細には、本発明は、プログラム実行サービスの利用者が、プログラム実行のために必要とする処理能力を、簡易にサービス提供者に指定する方法と、その情報に基づいてサービス提供者が処理能力をネットワークから動的に調達することによって、常にピーク時性能を満足するだけの処理能力を予め待機させておく必要なく、利用者に指定された処理能力の提供を保証できることを特徴とするプログラム実行サービスの提供方法に関する。   The present invention relates to a method for providing a service for accepting and executing a computer program of a user on the premise that data processing capability of a computer or the like can be procured. More specifically, the present invention relates to a method in which a user of a program execution service simply designates the processing capability required for program execution to the service provider, and the service provider performs processing based on the information. By dynamically procuring capacity from the network, it is possible to guarantee the provision of the processing capacity specified by the user without having to wait in advance for processing capacity that always satisfies peak performance. The present invention relates to a method for providing an execution service.

本発明は、計算処理を行うにあたって複数の計算機を動的に割り当て/解除する機能を有する、リソース構成技術を背景とする。特許文献1によれば、プログラムが必要とする処理能力を、プログラム提供者の要求定義に従ってサービス提供者が割り当てる技術は存在するが、リソース構成は主にサービス提供者側の判断でプログラムの配備時行われており、プログラムの動作中に刻々と変化する必要処理能力量を利用者が直接に定義し、またサービス提供者が処理能力について保証することのできるサービス方法は開発されていなかった。   The present invention is based on a resource configuration technique having a function of dynamically allocating / deallocating a plurality of computers when performing calculation processing. According to Patent Document 1, there is a technique in which a service provider allocates processing capability required by a program according to a request definition of the program provider, but the resource configuration is determined at the time of program deployment mainly at the judgment of the service provider. No service method has been developed in which a user can directly define a required processing capacity amount that changes every moment during the operation of a program, and a service provider can guarantee the processing capacity.

特開2001−222436号公報JP 2001-222436 A

本発明は、利用者が必要とする計算タスクの実行品質を性能面で保証するサービスを、必要最小限の設備投資で提供する上で障害となる下記の課題を解決する。利用者が必要とする計算タスクの性能は常に一定とは限らず、時々刻々変化することを想定しなくてはならない。その需要に応えるには、従来は、ピーク性能を実現可能な計算力をプログラム提供者が予測し、サービス提供者はその計算力を満たすリソースを常に用意しておくことで性能を保証する方法が一般的であったが、この場合ピーク時以外には使われることのない余剰計算力が生じ、設備の稼働率に無駄が発生する。本発明は、その時々で必要とされる計算力を動的に調達し、設備稼働率の無駄が最小限となるサービスの提供を実現する。   The present invention solves the following problems that hinder the provision of a service that guarantees the execution quality of a calculation task required by a user in terms of performance with the minimum necessary capital investment. The performance of the calculation task required by the user is not always constant and must be assumed to change from time to time. To meet this demand, traditionally, there is a method that guarantees the performance by having the program provider predict the computational power that can achieve peak performance, and that the service provider always has resources that meet the computational power. Although it was general, in this case, surplus computing power that is not used except during peak times is generated, and wasteful operation of the equipment occurs. The present invention dynamically procures the computing power required from time to time and realizes the provision of a service that minimizes the waste of equipment operation rate.

本発明が解決するもう一つの課題は、計算サービス提供者の責任範囲を明確にする手段の提供である。既存の技術では、処理能力が不足した場合に、それが実行したプログラムの不具合によるものなのか、計算サービス提供者が適切な量の処理能力を割り当てなかったためなのかを区別し、プログラム作成者と計算サービス提供者との間で適切な責任分担をすることができなかった。本発明によれば、プログラム作成者は、所定の実行性能を得るために必要な処理能力を定義し、利用者に提供することができる。利用者は、その定義に従い、計算サービス提供者に対して要求処理性能とその実現に必要な計算リソースの具体値を提示し、提供の保証を受けることができる。サービス提供者は、要求された計算リソースを割り当てているにもかかわらず処理性能が不足した場合に、追加計算リソースの購入を勧める、あるいはプログラムの不具合として利用者に通知するなどの、責任を明確にした対応をとることができる。   Another problem to be solved by the present invention is to provide means for clarifying the scope of responsibility of a calculation service provider. With existing technology, if the processing capacity is insufficient, it is distinguished whether it is due to a defect in the executed program or because the calculation service provider has not assigned an appropriate amount of processing capacity. Appropriate responsibilities could not be shared with the calculation service provider. According to the present invention, the program creator can define the processing capability necessary to obtain a predetermined execution performance and provide it to the user. In accordance with the definition, the user can present the requested processing performance and the specific value of the computing resource necessary for the realization to the computing service provider, and can receive the guarantee of the provision. The service provider clarifies responsibility, such as recommending the purchase of additional computing resources or notifying the user of a program failure when processing performance is insufficient even though the requested computing resources are allocated. It is possible to take the response.

課題を解決するための手段となる機器およびその構成を説明する。   A device that is a means for solving the problem and its configuration will be described.

サービス提供者は、プログラムを実行可能な環境として、プログラム実行基盤を備えた計算機と、プログラムの実行を制御する手段を備えた実行環境マネージャとを用意する。実行環境マネージャは、プログラムの実行を制御する手段として、サービス利用者の認証手段、プログラムの送受信手段、プログラム配備手段、プログラムが必要とする処理能力の定義を受け取りリソースを調達してプログラムに割り当て調整する手段、プログラム実行状況を監視する手段、サービス利用者に処理結果を提供する手段を備える。   The service provider prepares a computer having a program execution base and an execution environment manager having means for controlling the execution of the program as an environment in which the program can be executed. The execution environment manager, as a means to control program execution, receives service user authentication means, program transmission / reception means, program deployment means, definition of processing capability required by the program, procure resources, and allocate and adjust to programs Means for monitoring the program execution status, and means for providing the processing result to the service user.

サービス利用者は、プログラムおよび処理能力定義を、媒体または通信手段を通じてサービス提供者に委託し、処理結果を得るためのプログラム実行委託手段を備える。   The service user includes a program execution entrusting unit for entrusting the program and the processing capability definition to the service provider through a medium or a communication unit and obtaining a processing result.

プログラムは、サービス提供者が備えるプログラム実行基盤上で動作するように設計する。   The program is designed to operate on the program execution platform provided by the service provider.

サービス利用者は、プログラム実行委託手段を用いて、プログラムと、プログラムが動作するために必要な処理能力定義をサービス提供者に提示する。サービス提供者は、実行環境マネージャの機能によって、プログラム実行委託の受け入れ可否を決定する。実行環境マネージャは、サービス利用者を認証し、リソース調整手段が調達可能な処理能力を使って、処理能力定義が要求する処理能力を満足することができるかどうかを判断する。この判断には、ある時点での静的な処理能力だけでなく、スケジューリング情報も加味される。必要な処理能力が割当可能な場合、実行環境マネージャは、利用者のプログラム実行委託を受け入れ、プログラム受信手段によりプログラムを受け入れ、プログラム配備手段によりプログラム実行環境に配備した後、リソース調整手段により調達した処理能力を割り当てる。実行環境マネージャはプログラムをプログラム実行基盤上に配備すると同時に、処理能力を設定する。プログラム実行基盤は、実行状況の監視手段を使って、プログラムがどの程度のCPUサイクル、記憶容量などのリソースを使用しているかを把握する。実行環境マネージャは、処理能力定義に従い、プログラムの現状の処理能力使用状況を満たすために十分な処理能力をスケジューリングすると共に、より多くの処理能力が必要となる事態に備えて、未割り当て処理能力を準備する。準備する処理能力の上限は、実行中のプログラムが定義した最大処理能力の総和である。基本的には、実行環境マネージャはいつでもこの上限処理能力を調達・提供できなければならない。しかし、利用者とのサービス契約によって、上限処理能力を調達できない場合にはサービス品質の低下を許容することも可能である。あるいは、臨時の処理能力を提供するサービスを利用して処理能力を増強することも考えられる。他のサービス提供者に対して、臨時の処理能力提供サービスを提供することも可能である。プログラムの動作が活発化し、CPU利用量が増大するなど処理能力がより多く必要になると、未割り当て処理能力を追加投入してプログラムの実行性能を確保する。ここで、処理能力定義の最大値まで処理能力を投入していてなおかつ処理能力が不足している場合は、サービス提供者はそれ以上の処理能力を投入しない。この状態で性能上の問題が起きている場合は、処理サービスの提供者ではなく、プログラムの不良もしくは仕様不良としてサービス利用者に通知する。   The service user uses the program execution entrusting means to present the program and the processing capability definition necessary for the program to operate to the service provider. The service provider determines whether to accept the program execution entrustment by the function of the execution environment manager. The execution environment manager authenticates the service user and determines whether or not the processing capability required by the processing capability definition can be satisfied by using the processing capability that can be procured by the resource adjustment means. This determination includes not only the static processing capability at a certain point of time but also scheduling information. If the necessary processing capacity can be allocated, the execution environment manager accepts the user's program execution entrustment, accepts the program by the program receiving means, deploys it to the program execution environment by the program deployment means, and then procures by the resource adjustment means Assign processing power. The execution environment manager sets the processing capability at the same time that the program is deployed on the program execution platform. The program execution platform uses an execution status monitoring means to grasp how much CPU cycles, storage capacity and other resources are used by the program. The execution environment manager schedules sufficient processing capacity to meet the current processing capacity usage status of the program according to the processing capacity definition, and allocates unallocated processing capacity in preparation for a situation where more processing capacity is required. prepare. The upper limit of the processing capacity to be prepared is the sum of the maximum processing capacity defined by the program being executed. Basically, the execution environment manager must be able to procure and provide this cap capacity at any time. However, if the upper limit processing capacity cannot be procured by the service contract with the user, it is possible to allow the service quality to be lowered. Alternatively, it is conceivable to increase the processing capacity by using a service that provides temporary processing capacity. It is also possible to provide a temporary processing capability providing service to other service providers. If more processing power is required, such as when program operations become active and CPU usage increases, additional unallocated processing power is added to ensure program execution performance. Here, when the processing capacity is input up to the maximum value of the processing capacity definition and the processing capacity is insufficient, the service provider does not input any further processing capacity. If a performance problem occurs in this state, the service user is notified of a program failure or specification failure rather than a processing service provider.

本発明によれば、次の効果が得られる。
(1)サービスの利用者があらかじめ必要な処理能力を定義して要求できるため、サービスの性能に関して定量的な保証をサービス提供者から受けることが可能となる。
(2)利用者の要求に応じて、処理能力をサービス中に動的に変更するため、処理能力を余分に保有することなく、常に必要最小限に抑えることができ、運用コストを小さく保つことができる。
According to the present invention, the following effects can be obtained.
(1) Since the service user can define and request the necessary processing capacity in advance, it is possible to receive a quantitative guarantee from the service provider regarding the performance of the service.
(2) Since the processing capacity is dynamically changed during the service according to the user's request, it can always be kept to the minimum necessary without holding extra processing capacity, and the operation cost can be kept small. Can do.

以下、本発明の実施形態を図面を参照して説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は本発明に関する機能コンポーネントを図示したものである。サービス利用者101は、処理能力定義102を伴うプログラム103を保有し、プログラム実行委託手段104を用いてサービス提供者に実行を委託し、その結果を得る。サービス提供者105は、サービス利用者を認証する認証手段106、プログラム送受信手段107、プログラム配備手段108、リソース調整手段109、監視手段110、結果提供手段111、課金手段112を備えた実行環境マネージャ113と、プログラム実行基盤115を備えた計算機114とを備え、サービス利用者に対して処理サービスを提供する。   FIG. 1 illustrates functional components relating to the present invention. The service user 101 owns the program 103 with the processing capability definition 102, entrusts execution to the service provider using the program execution entrusting means 104, and obtains the result. The service provider 105 includes an authentication unit 106 for authenticating a service user, a program transmission / reception unit 107, a program deployment unit 108, a resource adjustment unit 109, a monitoring unit 110, a result providing unit 111, and a billing unit 112. And a computer 114 having a program execution platform 115, and provide a processing service to a service user.

図1に示した機能コンポーネントを用いて、サービス利用者101が、プログラムの実行をサービス提供者105に委託し、結果を得るまでの処理フローを図5に示す。サービス利用者101は、プログラム実行委託手段104を用いて、サービス提供者105の実行環境マネージャ113に接続する(ステップ61)。そこでまず認証手段106による認証(ステップ62)を受けた後、リソース調整手段109に対し、処理能力定義を送信する(ステップ63)。ここでリソース調整手段109から、処理能力提供が可能であると返答があった場合(ステップ64)、プログラム送受信手段107に対して、プログラム103を送信し、実行を要求する(ステップ65)。プログラム実行委託手段104は、結果提供手段111から実行結果を受信するまで待機し、結果を受信した後(ステップ66)、実行環境マネージャとの接続を切断し(ステップ67)、サービス利用を終了する。ステップ62で認証が失敗した場合、またはステップ64で処理能力提供が不可能であった場合には、その時点で実行環境マネージャとの接続が切断され(ステップ67)、サービス利用が終了する。   FIG. 5 shows a processing flow until the service user 101 entrusts the execution of the program to the service provider 105 and obtains the result using the functional components shown in FIG. The service user 101 connects to the execution environment manager 113 of the service provider 105 using the program execution entrusting means 104 (step 61). Therefore, after receiving authentication by the authenticating means 106 (step 62), the processing capability definition is transmitted to the resource adjusting means 109 (step 63). Here, when the resource adjustment unit 109 replies that the processing capability can be provided (step 64), the program 103 is transmitted to the program transmission / reception unit 107 to request execution (step 65). The program execution entrusting unit 104 waits until the execution result is received from the result providing unit 111, and after receiving the result (step 66), disconnects the connection with the execution environment manager (step 67) and ends the service use. . If the authentication fails in step 62, or if the processing capability cannot be provided in step 64, the connection with the execution environment manager is disconnected at that time (step 67), and the service use ends.

図1に示した機能コンポーネントを用いて、サービス提供者105が、サービス利用者101からの処理委託を受けて処理を実行し、終了するまでの処理フローを図6に示す。実行環境マネージャ113は、サービス利用者からの接続を待ち(ステップ701)、接続があった場合、認証手段106を用いてサービス利用者の権限を確認する(ステップ702)。権限に問題がない場合は、リソース調整手段109が処理能力定義を受信し(ステップ703)、要求された処理能力を満たすだけのリソースが調達可能かどうかを確認する(ステップ704)。リソースが提供可能な場合、プログラム送受信手段107がプログラムを受信する(ステップ705)。ユーザ認証に失敗した、あるいは十分なリソースが調達不可能、つまりエラーの場合は、利用者にエラーを返信して(ステップ718)、初期状態に戻る。エラーがない場合、リソース調整手段109は、処理を実行可能な計算機を起動するなどの方法で処理リソースを調達し(ステップ706)、プログラム配備手段108を用いてプログラムを配備し(ステップ707)、実行する(ステップ708)。プログラム実行中は、監視手段110を通じて実行状態を監視し(ステップ709)、処理能力定義が要求する処理性能が満たされているかを確認する(ステップ710)。処理能力が不足の場合、リソース調整手段109を用いて処理リソースの調達を行い(ステップ711)、可能な範囲で処理リソースを追加配備する(ステップ712)。処理の実行が終了すると(ステップ713)、結果提供手段111を用いて結果をサービス利用者に送信し(ステップ714)、課金手段112を用いて課金処理を行った後(ステップ715)、プログラムを終了し(ステップ716)、リソースを解放して(ステップ717)、初期状態に戻る。ステップ713で処理の実行が未終了の場合は、連続してプログラム実行(ステップ708)を継続する。   FIG. 6 shows a processing flow from when the service provider 105 receives processing entrustment from the service user 101 using the functional components shown in FIG. The execution environment manager 113 waits for a connection from the service user (step 701). If there is a connection, the execution environment manager 113 checks the authority of the service user using the authentication means 106 (step 702). If there is no problem in authority, the resource adjustment unit 109 receives the processing capability definition (step 703), and confirms whether or not resources sufficient to satisfy the requested processing capability can be procured (step 704). If the resource can be provided, the program transmission / reception means 107 receives the program (step 705). If user authentication fails or sufficient resources cannot be procured, that is, an error, an error is returned to the user (step 718), and the initial state is restored. If there is no error, the resource adjustment unit 109 procures processing resources by a method such as starting a computer that can execute processing (step 706), and deploys a program using the program deployment unit 108 (step 707). Execute (Step 708). During execution of the program, the execution state is monitored through the monitoring unit 110 (step 709), and it is confirmed whether the processing performance required by the processing capability definition is satisfied (step 710). If the processing capacity is insufficient, the resource adjustment means 109 is used to procure processing resources (step 711), and processing resources are additionally deployed as much as possible (step 712). When the execution of the process is completed (step 713), the result providing means 111 is used to transmit the result to the service user (step 714), and the charging process is performed using the charging means 112 (step 715). End (step 716), release resources (step 717), and return to the initial state. If execution of the process is not completed in step 713, program execution (step 708) is continued.

図2は利用者のプログラムを実行するサービスを提供する大学などの計算機センタネットワークシステムの説明図である。計算機センタ内には、利用者がプログラムを入力するネットワーク端末装置21、計算機センタ内の計算機を接続するネットワーク22、ネットワークに接続された計算機からなるプログラム実行環境23を管理する実行環境マネージャ24、処理を実行する計算機群25を配置する。利用者は端末装置21を通してサービス提供者である計算機センタのプログラム実行環境23に接続しプログラム実行を委託する。この場合の処理能力定義は、例えば下記のような、属性と値のセットの集合体として与えられる。
<Objective Type=”Response” Measure=”ms”>100</Objective>
<Required Type=”MemoryMax” Measure=”MB”>28</Required>
<Required Type=”StorageMax” Measure=”MB”>256</Required>
<Required Type=”CTIME” Measure=”ms”>10<Required>
Objective項目は、目標性能を定義する。Measureを単位としてTypeで指定された指標について、値として指定された性能水準を下回ることのないレベルの性能が要求される。実行性能を監視した結果、実測値がこれを下回った場合には、より多いリソースを割り当てて実行性能を改善する、サービスに対する課金を割り引く、エラーとして処理を中止するなど、サービス条件に応じた方法で対応する。Requiredは、必要なリソースを定義する。Required条件を満たすリソースを割り当てたにも関わらず、Objective項目が未達の場合は、処理能力定義が不適切であるか、プログラム不良の可能性があると判断する。
FIG. 2 is an explanatory diagram of a computer center network system such as a university that provides a service for executing a user program. In the computer center, a network terminal device 21 for a user to input a program, a network 22 for connecting computers in the computer center, an execution environment manager 24 for managing a program execution environment 23 composed of computers connected to the network, processing The computer group 25 that executes is arranged. The user connects to the program execution environment 23 of the computer center that is the service provider through the terminal device 21 and entrusts the program execution. The processing capability definition in this case is given as an aggregate of attribute and value sets, for example as follows.
<Objective Type = ”Response” Measure = ”ms”> 100 </ Objective>
<Required Type = ”MemoryMax” Measure = ”MB”> 28 </ Required>
<Required Type = ”StorageMax” Measure = ”MB”> 256 </ Required>
<Required Type = ”CTIME” Measure = ”ms”> 10 <Required>
The Objective item defines the target performance. For the index specified by Type with Measure as the unit, a level of performance that does not fall below the performance level specified as a value is required. As a result of monitoring execution performance, if the actual measured value falls below this value, a method depending on the service conditions, such as allocating more resources to improve execution performance, discounting service charges, or aborting processing as an error Correspond with. Required defines the required resources. If the Objective item is not reached even though resources that satisfy the required conditions are allocated, it is determined that the processing capability definition is inappropriate or there is a possibility of a program failure.

実行環境マネージャは、利用可能な計算機リソースのうち、処理能力定義でRequiredと指定された処理能力を提供可能な計算機リソースを予約することで、処理能力を調達する。このとき、計算機リソースが起動していない場合は、起動処理を行う。全ての利用可能な計算機リソースを割り当ててもRequired条件が満たせない場合、プログラム実行不可能として実行要求は却下される。利用者は、処理能力が調達可能であるという回答を実行環境マネージャから受け取ると、実行したいプログラムを実行環境マネージャに送信し、実行を要求する。実行環境マネージャは、受信した利用者のプログラムを予約した計算機リソースに配備し、起動する。上記の処理能力定義の例では、一時に必要な最大メモリ量を定義するMemoryMaxの値として28MBが、一時に必要な最大ストレージ量を定義するStorageMaxの値として256MBが指定されているため、最低でも28MBのメモリと、256MBのストレージが調達可能であることが必須条件となる。また、Objectiveとして指定されたレスポンスタイムが100msと指定されていることから、この間にリソースの割り当てと処理の実行が可能であることが求められる。実行環境マネージャはその要求を満たすよう、計算機リソースを動的に追加/切り離しし、処理能力を増減する。計算機リソースの追加/切り離しは、従来技術におけるグリッドコンピューティングのような、計算機リソースを仮想化するプログラム実行基盤の機能を用いて処理する。プログラム実行基盤は、起動していないときにも常に待機状態であり、実行環境マネージャからの要求を受けて起動する。プログラムの実行が終了すると、プログラムに割り当てた計算機リソースを解放し、端末装置に処理結果を送信する。このとき、実行環境マネージャは、プログラムが利用した処理能力について、監視情報を元に量を算定し、従量課金を行う。プログラムが利用したリソース量、およびプログラムの実測性能は、処理結果とともにサービス利用者に提供される。   The execution environment manager procures the processing capacity by reserving a computer resource that can provide the processing capacity specified as Required in the processing capacity definition among the available computer resources. At this time, if the computer resource is not activated, the activation process is performed. If the Required condition cannot be satisfied even though all available computer resources are allocated, the execution request is rejected as the program cannot be executed. When the user receives an answer from the execution environment manager that the processing capability can be procured, the user transmits a program to be executed to the execution environment manager and requests execution. The execution environment manager deploys the received user program to the reserved computer resource and starts it. In the above processing capability definition example, 28MB is specified as the MemoryMax value that defines the maximum amount of memory required at one time, and 256MB is specified as the StorageMax value that defines the maximum amount of storage required at one time. Being able to procure 28MB of memory and 256MB of storage is a prerequisite. Also, since the response time specified as Objective is specified as 100 ms, it is required that resources can be allocated and processing can be executed during this time. The execution environment manager dynamically adds / detaches computer resources to satisfy the request and increases / decreases the processing capacity. The addition / detachment of computer resources is processed using a program execution platform function that virtualizes computer resources, such as grid computing in the prior art. The program execution platform is always in a standby state even when it is not activated, and is activated in response to a request from the execution environment manager. When the execution of the program ends, the computer resources allocated to the program are released and the processing result is transmitted to the terminal device. At this time, the execution environment manager calculates the amount of processing capacity used by the program based on the monitoring information, and performs pay-per-use. The amount of resources used by the program and the measured performance of the program are provided to the service user together with the processing result.

この実施例により、計算機の従来は利用者数が変動すると計算機の負荷が変動し、処理速度が予測不能な状態になるという問題が回避でき、できる限り多くの利用者が計算機センタを同時に使いながら、必要な時間内に演算処理を終わらせるだけの処理能力を利用できるようになる。   According to this embodiment, it is possible to avoid the problem that the load of the computer fluctuates when the number of users fluctuates and the processing speed becomes unpredictable, and as many users as possible can use the computer center at the same time. Thus, it is possible to use the processing capability to finish the arithmetic processing within the required time.

図3は、本発明を、携帯端末に対して処理能力を提供するシステムに適用した例である。携帯端末31は、無線通信によりシステムの無線ゲートウェイ32に接続することで、システム内のネットワーク33を介して実行環境マネージャ35に接続する。携帯端末を扱う利用者が、プログラムを実行環境34で動かし、結果を得る手順は図2、図5、図6と同様である。この例では、ごく小さなデータ処理能力と、ディスプレイやイヤホンといったユーザインタフェース装置を備えた小型の携帯端末を持ち歩き、必要な場所で大きな処理能力を提供するプログラム実行サービスと無線接続することで、大きな計算装置を運搬することなく、大規模処理能力をいつでも利用可能とすることができる。たとえば、3次元画像処理プログラムを使い、バーチャルリアリティ型のユーザインタフェースを利用するチャットシステムなどは、必要とする処理能力が大きいことから、携帯電話程度のサイズの装置で十分な品質を実現することは困難であった。本実施例を利用すれば、処理能力は必要に応じて無線ネットワーク経由でサービス提供者から提供されるため、利用者が大きな計算装置を持ち運ばずとも、ユーザインタフェース装置を備えた簡単な形態端末でも十分な品質のサービスを受けることができる。   FIG. 3 shows an example in which the present invention is applied to a system that provides processing capability to a mobile terminal. The portable terminal 31 is connected to the execution environment manager 35 via the network 33 in the system by connecting to the wireless gateway 32 of the system by wireless communication. A user handling a portable terminal moves the program in the execution environment 34 and obtains the result is the same as that shown in FIGS. In this example, a small portable terminal equipped with a very small data processing capability and a user interface device such as a display or earphone is carried around, and a large amount of computation is performed by wirelessly connecting to a program execution service that provides a large processing capacity at a required location. Large capacity can be made available at any time without transporting the device. For example, a chat system that uses a virtual reality type user interface using a three-dimensional image processing program requires a large processing capacity, so that it is possible to achieve sufficient quality with a device about the size of a mobile phone. It was difficult. If the present embodiment is used, the processing capability is provided from the service provider via the wireless network as necessary, so that the user can easily carry a large computing device without carrying a large computing device. But you can get enough quality service.

図4は、本発明を、有線で繋がれた他のプログラム実行環境に対する追加処理能力提供サービスとして適用した例である。他のプログラム実行環境41は、ネットワーク42によりシステムのゲートウェイ43に接続し、さらにネットワーク44を経由して実行環境マネージャ46に接続する。他のプログラム実行環境41を管理する利用者が、プログラムを実行環境45で動かし、結果を得る手順は図2、図5、図6と同様である。この例では、実行環境41は、常に必要最大量の処理能力を保持せずとも、処理能力の不足が生じることが予想されている場合には本サービスを利用することで、回転率の低い計算機資産の保有量を削減することができる。本サービスの提供者は、ある利用者が予約している時間帯と別の時間帯に、別の利用者にサービスを提供することで、計算機資産の回転率を上げることができる。   FIG. 4 shows an example in which the present invention is applied as an additional processing capability providing service for another program execution environment connected by wire. The other program execution environment 41 is connected to the system gateway 43 via the network 42 and further connected to the execution environment manager 46 via the network 44. The procedure for a user who manages another program execution environment 41 to move the program in the execution environment 45 and obtain the result is the same as that shown in FIGS. In this example, the execution environment 41 does not always maintain the required maximum amount of processing capacity, but when it is predicted that a shortage of processing capacity will occur, this service is used to provide a computer with a low turnover rate. Asset holdings can be reduced. The provider of this service can increase the turnover rate of computer assets by providing a service to another user in a time zone different from the time zone reserved by a certain user.

本発明に関する機能コンポーネント構成図である。It is a functional component block diagram regarding this invention. 第1の実施例のネットワークシステム構成図である。It is a network system block diagram of a 1st Example. 第2の実施例のネットワークシステム構成図である。It is a network system block diagram of a 2nd Example. 第3の実施例のネットワークシステム構成図である。It is a network system block diagram of a 3rd Example. 第1、第2、第3の実施例でのサービス利用者の処理フローである。It is the processing flow of the service user in the 1st, 2nd, 3rd Example. 第1、第2、第3の実施例でのサービス提供者の処理フローである。It is the processing flow of the service provider in the 1st, 2nd, 3rd Example.

符号の説明Explanation of symbols

101…サービス利用者、102…処理能力定義、103…プログラム、104…プログラム実行委託手段、105…サービス提供者、106…認証手段、107…プログラム送受信手段、108…プログラム配備手段、109…リソース調整手段、110…監視手段、111…結果提供手段、113…実行環境マネージャ、114…処理を実行する計算機、115…プログラム実行基盤、21…利用者がプログラムを入力するネットワーク端末装置、22…計算機センタ内の計算機を接続するネットワーク、23…ネットワークに接続された計算機からなるプログラム実行環境、24…実行環境マネージャ、25…処理を実行する計算機、31…利用者がプログラムを入力する携帯端末装置、32…無線ゲートウェイ、33…計算機センタ内の計算機を接続するネットワーク、34…ネットワークに接続された計算機からなるプログラム実行環境、35…実行環境マネージャ、36…処理を実行する計算機、41…他のプログラム実行環境、42…他のプログラム実行環境と接続するネットワーク、43…ネットワークゲートウェイ、44…計算機センタ内の計算機を接続するネットワーク、45…ネットワークに接続された計算機からなるプログラム実行環境、46…実行環境マネージャ、47…処理を実行する計算機。
DESCRIPTION OF SYMBOLS 101 ... Service user, 102 ... Processing capability definition, 103 ... Program, 104 ... Program execution commissioning means, 105 ... Service provider, 106 ... Authentication means, 107 ... Program transmission / reception means, 108 ... Program deployment means, 109 ... Resource adjustment Means 110 ... Monitoring means 111 ... Result providing means 113 ... Execution environment manager 114 ... Computer for executing processing 115 ... Program execution base 21 ... Network terminal device for user to input program 22 ... Computer center A network for connecting computers in the network, 23... A program execution environment composed of computers connected to the network, 24... An execution environment manager, 25... A computer for executing processing, 31. ... wireless gateway, 33 ... computer center A network connecting computers of the above, 34... A program execution environment composed of computers connected to the network, 35... Execution environment manager, 36... A computer executing processing, 41. A network connected to the network 43, a network gateway 44, a network connecting computers in the computer center, 45 a program execution environment composed of computers connected to the network, 46 an execution environment manager, 47 a computer executing processing.

Claims (8)

利用者が保持するプログラムに対し実行環境を提供するサービス方法であって、
利用者がプログラムの必要とする処理能力を実行環境に対して通知する手段と、
サービス提供者が利用者に対し実行環境が十分な処理能力を提供可能か確認する手段と、
利用者のプログラムを実行環境に配備する手段と、
利用者が要求する処理能力が刻々と変化する場合に実行環境が動的に処理能力をネットワークで結ばれた計算機から調達し必要十分な処理能力の提供を保証する手段と、
を提供していることを特徴とするサービス方法。
A service method for providing an execution environment for a program held by a user,
A means for the user to notify the execution environment of the processing power required by the program;
Means for the service provider to confirm that the execution environment can provide sufficient processing power to the user;
Means for deploying user programs to the execution environment;
When the processing capability requested by the user changes from moment to moment, the execution environment dynamically procures processing capability from a networked computer and guarantees the provision of necessary and sufficient processing capability;
Providing a service method.
利用者を認証し、権限のない者が実行環境を利用することを抑止する手段を備えた、請求項1に記載の方法。   The method according to claim 1, further comprising means for authenticating a user and preventing an unauthorized person from using the execution environment. 利用者に対し、プログラムが使用した処理能力に応じた課金を行う手段を備えた、請求項1に記載の方法。   The method according to claim 1, further comprising means for charging a user according to the processing capacity used by the program. 実行したプログラムに対し、そのプログラムが利用した処理能力と、プログラムが発揮した性能を計測し、利用者に通知する手段を備えた、請求項1に記載の方法。   The method according to claim 1, further comprising means for measuring a processing capability used by the program and a performance exhibited by the program and notifying a user of the executed program. 一定の時間、または一定の処理能力を消費したプログラムを実行環境から削除する手段を備えた、請求項1に記載の方法。   The method according to claim 1, further comprising means for deleting a program that has consumed a certain amount of time or a certain processing capacity from the execution environment. 請求項1に記載の方法で実行されるプログラムおよび、例としての処理能力定義を、コンピュータ使用可能記録媒体または通信手段により、有償もしくは無償で配布するサービス方法。   A service method for distributing a program executed by the method according to claim 1 and an example processing capability definition for a fee or free of charge by a computer-usable recording medium or communication means. 請求項1に記載の方法で行うサービスであって、サービス提供者が、実行環境が必要とする処理能力を、第3者から必要時に調達することによって動的に構成するサービス方法。   The service method according to claim 1, wherein the service provider dynamically configures the processing capability required by the execution environment by procuring from a third party when necessary. 請求項1から請求項7までの請求項に記載の方法を組み合わせて提供するサービス方法。
A service method provided by combining the methods according to claim 1.
JP2004059979A 2004-03-04 2004-03-04 Program execution service provision method Pending JP2005250818A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004059979A JP2005250818A (en) 2004-03-04 2004-03-04 Program execution service provision method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004059979A JP2005250818A (en) 2004-03-04 2004-03-04 Program execution service provision method

Publications (1)

Publication Number Publication Date
JP2005250818A true JP2005250818A (en) 2005-09-15

Family

ID=35031247

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004059979A Pending JP2005250818A (en) 2004-03-04 2004-03-04 Program execution service provision method

Country Status (1)

Country Link
JP (1) JP2005250818A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012533131A (en) * 2009-07-23 2012-12-20 ユニバーシティ−インダストリ コーポレーション グループ オブ キュン ヘ ユニバーシティ Dynamic resource coordination among network service providers
JP2013505519A (en) * 2009-09-29 2013-02-14 アマゾン テクノロジーズ インコーポレイテッド Conclusion to causal program execution capacity modification, and dynamic modification of program execution capacity
US8689225B2 (en) 2009-09-29 2014-04-01 Amazon Technologies, Inc. Attributing causality to program execution capacity modifications
US11237870B1 (en) 2009-09-29 2022-02-01 Amazon Technologies, Inc. Dynamically modifying program execution capacity
CN114697341A (en) * 2020-12-28 2022-07-01 华为技术有限公司 Method of calculating calculation force of electronic device, control device, and storage medium

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012533131A (en) * 2009-07-23 2012-12-20 ユニバーシティ−インダストリ コーポレーション グループ オブ キュン ヘ ユニバーシティ Dynamic resource coordination among network service providers
US8543686B2 (en) 2009-07-23 2013-09-24 University-Industry Cooperation Group Of Kyung Hee University Dynamic resource collaboration between network service providers
JP2013505519A (en) * 2009-09-29 2013-02-14 アマゾン テクノロジーズ インコーポレイテッド Conclusion to causal program execution capacity modification, and dynamic modification of program execution capacity
US8689225B2 (en) 2009-09-29 2014-04-01 Amazon Technologies, Inc. Attributing causality to program execution capacity modifications
JP2014089776A (en) * 2009-09-29 2014-05-15 Amazon Technologies Inc Attributing causality to program execution capacity modifications, and dynamic modifications of program execution capacity
US9336069B2 (en) 2009-09-29 2016-05-10 Amazon Technologies, Inc. Attributing causality to program execution capacity modifications
US10360083B2 (en) 2009-09-29 2019-07-23 Amazon Technologies, Inc. Attributing causality to program execution capacity modifications
US11237870B1 (en) 2009-09-29 2022-02-01 Amazon Technologies, Inc. Dynamically modifying program execution capacity
US11762693B1 (en) 2009-09-29 2023-09-19 Amazon Technologies, Inc. Dynamically modifying program execution capacity
CN114697341A (en) * 2020-12-28 2022-07-01 华为技术有限公司 Method of calculating calculation force of electronic device, control device, and storage medium
CN114697341B (en) * 2020-12-28 2023-05-16 华为技术有限公司 Method for calculating power of electronic device, control device and storage medium

Similar Documents

Publication Publication Date Title
US11658916B2 (en) Simple integration of an on-demand compute environment
US20230179538A1 (en) Systems and methods for provision of a guaranteed batch
US7464160B2 (en) Provisioning grid services to maintain service level agreements
US11836535B1 (en) System and method of providing cloud bursting capabilities in a compute environment
US20120221733A1 (en) Data center batch job quality of service control
JPWO2009072186A1 (en) Resource lending control device, resource lending method, and resource lending program
RU2697700C2 (en) Equitable division of system resources in execution of working process
JP2007249470A (en) Cluster server system, charging device and charging method
Afzal et al. Capacity planning and scheduling in Grid computing environments
US8799474B2 (en) Apparatus and method to allocate limited resources
CN107172204A (en) The worksheet system and worksheet method of High Availabitity high capacity
CN109005214A (en) A kind of resource regulating method and device
JP2005250818A (en) Program execution service provision method
CN103713852A (en) Method for processing information, service platform and electronic devices
CN112905338B (en) Automatic computing resource allocation method and device
KR20100069538A (en) Method and apparatus for providing grid resource management in grid computing middleware system
US11755379B2 (en) Liaison system and method for cloud computing environment
JP2009205341A (en) Work flow support system, work flow support method, and work flow support program
JP2008077281A (en) Superscheduler, job request method and superscheduler program
Srinivasa Utility maximisation-based game theoretic approach for resource allocation in clouds
US20220100573A1 (en) Cloud bursting technologies
JP2005309868A (en) Processing allocation management apparatus, control method for the same, and program
JP6191361B2 (en) Information processing system, information processing system control method, and control program
JP2008171325A (en) Resource management device and method
Afzal et al. Stochastic workflow scheduling with QoS guarantees in grid computing environments

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060424