JP5414663B2 - Service providing system, apparatus and program - Google Patents

Service providing system, apparatus and program Download PDF

Info

Publication number
JP5414663B2
JP5414663B2 JP2010288623A JP2010288623A JP5414663B2 JP 5414663 B2 JP5414663 B2 JP 5414663B2 JP 2010288623 A JP2010288623 A JP 2010288623A JP 2010288623 A JP2010288623 A JP 2010288623A JP 5414663 B2 JP5414663 B2 JP 5414663B2
Authority
JP
Japan
Prior art keywords
agent
identification information
service
resource allocation
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010288623A
Other languages
Japanese (ja)
Other versions
JP2012137865A (en
Inventor
崇 白石
智 関根
誠一郎 田中
美千代 池上
一嘉 西
隆行 人見
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2010288623A priority Critical patent/JP5414663B2/en
Publication of JP2012137865A publication Critical patent/JP2012137865A/en
Application granted granted Critical
Publication of JP5414663B2 publication Critical patent/JP5414663B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Description

本発明の実施形態は、サービス提供システム、装置及びプログラムに関する。   Embodiments described herein relate generally to a service providing system, an apparatus, and a program.

計算機システムからなるサービス提供システムは、ユーザから要求されるレスポンスタイムや稼働率などの値を満たすように、サービスを提供する。但し、レスポンスタイム等のユーザの要求はサービス毎に異なる。そのため、システム設計者は、サービス毎に異なる要求に基づき、提供するサービスに特化してシステム構成やリソース配分を設計し、システム構築をする。   A service providing system including a computer system provides a service so as to satisfy values such as response time and operating rate requested by a user. However, user requests such as response time differ for each service. Therefore, a system designer designs a system configuration and resource allocation for a service to be provided based on different requirements for each service, and constructs a system.

また、同一のサービスにおいても、サービスの利用量は時とともに変化する。このため、設計時のシステム構成やリソース配分は、システム構築後、経時変化により過度に要求を満たすようになった場合、計算機資源に無駄を生じさせてしまう。なお、この無駄は、最大のサービスの利用量の見積もりに合わせたシステム構成やリソース配分を設計し、システム構築をした場合でも、利用量の最大値と最小値との差分だけ生じることになる。   Even in the same service, the usage amount of the service changes with time. For this reason, the system configuration and resource allocation at the time of design will be a waste of computer resources when the requirements are excessively satisfied due to the change over time after the system construction. Note that this waste occurs only in the difference between the maximum value and the minimum value of the usage amount even when the system configuration and resource allocation are designed in accordance with the estimation of the usage amount of the maximum service and the system is constructed.

一方、このような無駄を抑制する観点から、システム構成やリソース配分を動的に変化させるシステムを用い、変化後のサービスの利用量に合わせたシステム構成やリソース配分を再設計し、最適なシステム構成やリソース配分を再構築する手法が考えられる。   On the other hand, from the viewpoint of suppressing such waste, an optimal system is used by redesigning the system configuration and resource allocation according to the service usage after the change using a system that dynamically changes the system configuration and resource allocation. A method of reconstructing the configuration and resource allocation can be considered.

特開2007−4337号公報JP 2007-4337 A 特開2005−182796号公報JP 2005-182796 A 特開2001−67334号公報JP 2001-67334 A 特表2008−519322号公報Special table 2008-519322 特表2006−520027号公報JP 2006-520027 Gazette

しかしながら、以上のようなサービス提供システムは、サービス毎に異なる要求に基づき、システム構成やリソース配分の設計をする労力がかかる。例えば、新規サービスにより、新たな設計の手間が生じる。   However, the service providing system as described above requires labor for designing a system configuration and resource allocation based on different requirements for each service. For example, new design efforts are caused by new services.

また、システム構成やリソース配分を動的に変化させる場合、サービスの利用量に合わせて再設計を繰り返す必要がある。   In addition, when the system configuration and resource allocation are dynamically changed, it is necessary to repeat redesign according to the service usage.

本発明が解決しようとする課題は、サービス毎に異なる要求や、同一サービスの利用量の変化に対し、システム構成やリソース配分を設計する労力を低減し得るサービス提供システム、装置及びプログラムを提供することである。   The problem to be solved by the present invention is to provide a service providing system, apparatus, and program capable of reducing labor for designing system configuration and resource allocation in response to different requests for each service and changes in the usage amount of the same service. That is.

実施形態のサービス提供システムは、サービスマネージャ装置と、複数のノード装置とを備えている。前記サービスマネージャ装置は、サービスを識別するサービス識別情報を含むサービス要求を送信して前記サービス要求に対するサービス応答を受信するユーザ端末に通信可能なゲートウェイ装置に接続されている。前記各ノード装置は、前記サービスマネージャ装置に通信可能となっている。   The service providing system of the embodiment includes a service manager device and a plurality of node devices. The service manager device is connected to a gateway device capable of communicating with a user terminal that transmits a service request including service identification information for identifying a service and receives a service response to the service request. Each of the node devices can communicate with the service manager device.

前記サービスマネージャ装置は、サービス評価値記憶手段、モジュール識別情報記憶手段、配置記憶手段、サービス要求送信手段、第1の評価値計測手段、ペナルティ計算手段、ペナルティ送信手段及び配置更新手段を備えている。   The service manager device includes service evaluation value storage means, module identification information storage means, arrangement storage means, service request transmission means, first evaluation value measurement means, penalty calculation means, penalty transmission means, and arrangement update means. .

前記サービス評価値記憶手段は、前記サービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス応答との間で計測可能な評価値とを関連付けて予め記憶する。   The service evaluation value storage means stores in advance the service identification information and an evaluation value measurable between the service request including the service identification information and the service response.

前記モジュール識別情報記憶手段は、前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けて記憶する。   The module identification information storage means stores the service identification information in association with module identification information that individually identifies a plurality of service providing module means that individually execute each stage of the service identified by the service identification information. To do.

前記配置記憶手段は、前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて記憶する。   The arrangement storage means identifies each node identification information for identifying each node device, agent identification information for identifying an agent means arranged in each node device, and identifying the service providing module means included in the agent means The module identification information is stored in association with the module identification information.

前記サービス要求送信手段は、前記ゲートウェイ装置からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信する。   When the service request transmission unit receives a service request from the gateway device, the service request transmission unit reads the module identification information from the module identification information storage unit based on the service identification information in the service request, and then, based on the module identification information. Node identification information is read from the arrangement storage means, and based on the node identification information, the service request is transmitted to the node device identified by the node identification information.

前記第1の評価値計測手段は、前記サービス要求送信手段により送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測する。   When the first evaluation value measuring unit receives a service response to the service request transmitted from the service request transmitting unit from any of the node devices, the first evaluation value measuring unit transmits the service response to the gateway device, and the service request and the The evaluation value is measured between service responses.

前記ペナルティ計算手段は、前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算する。   The penalty calculation means calculates a service penalty value of a positive value when the measured evaluation value does not satisfy the evaluation value in the service evaluation value storage means, and the measured evaluation value is the service evaluation value. If the evaluation value in the evaluation value storage means is excessively satisfied, a negative service penalty value is calculated.

前記ペナルティ送信手段は、前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信する。   The penalty transmission means transmits the calculated service penalty value and the measured evaluation value to the node device that is the transmission destination of the service request and the node device that is the transmission source of the service response.

前記配置更新手段は、前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新する。   The arrangement update means receives the node update information indicating the node identification information, the agent identification information and the module identification information updated so as to delete, move or duplicate the agent means from any of the node devices. The arrangement storage means is updated based on the arrangement update information.

前記各ノード装置は、プログラム実行手段、リソース配分記憶手段、リソース配分更新手段、第1のリソース配分削除手段、プログラム削除手段、第2のリソース配分削除手段、プログラム移動手段及び別ノード問合せ手段を備えている。   Each of the node devices includes a program execution unit, a resource allocation storage unit, a resource allocation update unit, a first resource allocation deletion unit, a program deletion unit, a second resource allocation deletion unit, a program migration unit, and another node inquiry unit. ing.

前記プログラム実行手段は、自ノード装置に前記エージェント手段が配置される場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なCPUを含んでいる。   The program execution means is used when the agent means is arranged in the own node device, and can store the agent program for causing the own node device to function as the agent means, and the agent program can be executed. CPU is included.

前記リソース配分記憶手段は、前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けて記憶する。   The resource allocation storage means stores the agent identification information for identifying the agent means arranged in the own node device and the resource allocation indicating the resource allocation of the own node device in association with each other.

前記リソース配分更新手段は、前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新する。   When the resource allocation update unit receives a resource allocation update message for updating to increase or decrease the resource allocation associated with the agent identification information for identifying the agent unit from the agent unit arranged in the own node device, Based on the resource allocation update message, the resource allocation in the resource allocation storage means is updated.

前記第1のリソース配分削除手段は、前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する。   When the first resource allocation deletion unit receives an agent deletion message for deleting the agent unit by designating agent identification information for identifying the agent unit from the agent unit arranged in the own node device, the agent deletion unit Based on the message, the agent identification information and resource allocation in the resource allocation storage means are deleted.

前記プログラム削除手段は、前記エージェント削除メッセージを受けると、前記第1のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除する。   When the program deletion means receives the agent deletion message, the program deletion means updates the arrangement indicating the node identification information, the agent identification information, and the module identification information related to the own node device after being deleted by the first resource allocation deletion means Information is transmitted to the service manager device, and the agent program of the agent means is deleted from the memory.

前記第2のリソース配分削除手段は、前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する。   The second resource allocation deletion means designates agent identification information for identifying the agent means and node identification information for indicating the destination node apparatus from the agent means arranged in the own node apparatus, and specifies the agent means. When the agent movement message to be moved is received, the agent identification information and resource distribution in the resource distribution storage means are deleted based on the agent movement message.

前記プログラム移動手段は、前記エージェント移動メッセージを受けると、前記第2のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除する。   Upon receipt of the agent movement message, the program moving means receives the node identification information, the agent identification information and the module identification information related to the own node device after being deleted by the second resource allocation deleting means, and the movement Arrangement update information including both the node identification information, the agent identification information, and the module identification information regarding the destination node device is transmitted to the service manager device, and the agent program of the agent means is transferred to the destination node device. And the agent program is deleted from the memory.

前記別ノード問合せ手段は、前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答する。   When the separate node inquiry means receives an inquiry message inquiring about resource allocation of another node apparatus other than the local node apparatus from the agent means arranged in the local node apparatus, the storage of the resource allocation storage means of the separate node apparatus The other node apparatus is inquired about the contents, and the stored contents returned from the other node apparatus are returned to the agent means.

前記エージェント手段は、上下限値記憶手段、いずれかの前記サービス提供モジュール手段、第2の評価値計測手段、比較手段、リソース増加判定手段、この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段、移動メッセージ送出手段、リソース減少判定手段、この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段、削除メッセージ送出手段を備えている。   The agent means includes upper and lower limit value storage means, one of the service providing module means, second evaluation value measurement means, comparison means, resource increase determination means, and if the result of this determination is that increase is possible, the resource allocation Means for sending a resource allocation update message to be updated so as to increase the resource allocation update means, a mobile message sending means, a resource decrease determining means, and if the result of this determination is that the resource allocation can be decreased, the resource allocation is decreased. A resource distribution update message to be updated to the resource distribution update unit, and a deletion message transmission unit.

前記上下限値記憶手段は、前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて記憶する。   The upper and lower limit value storage means includes an upper limit value indicating an upper limit of an integrated value obtained by integrating the service identification information, the module identification information, and a module penalty value assigned to each service providing module means, A lower limit value indicating the lower limit of the integrated value is stored in association with each other.

前記第2の評価値計測手段は、このサービス提供モジュール手段に対して前記評価値を計測する。   The second evaluation value measuring means measures the evaluation value for the service providing module means.

前記比較手段は、前記第2の評価値計測手段により計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較する。   The comparing means calculates the module penalty value based on the evaluation value measured by the second evaluation value measuring means and the service penalty value and the evaluation value received from the service manager device, and the module The integrated value of the penalty value is calculated, and the integrated value is compared with the upper limit value and the lower limit value in the upper / lower limit value storage means.

前記リソース増加判定手段は、前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定する。   The resource increase determination means refers to the resource allocation storage means in the own node device in which the agent means is located when the integrated value is larger than the upper limit value as a result of the comparison, and identifies the agent means It is determined whether or not the resource allocation associated with the identification information can be increased.

前記エージェント手段は、この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する。   The agent means sends a resource allocation update message for updating the resource allocation to increase the resource allocation if it can be increased as a result of this determination.

前記移動メッセージ送出手段は、前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを前記第2のリソース配分削除手段及び前記プログラム移動手段に送出する。   The mobile message sending means sends the inquiry message to the another node inquiry means if the result of the determination is negative, and the agent movement message is sent to the other node inquiry means based on the stored contents returned from the other node inquiry means. It is sent to the second resource allocation deleting means and the program moving means.

前記リソース減少判定手段は、前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定する。   The resource decrease determining means refers to the resource allocation storage means in the own node apparatus in which the agent means is located when the integrated value is smaller than the lower limit value as a result of the comparison, and identifies the agent means It is determined whether or not the resource allocation associated with the identification information can be reduced.

前記エージェント手段は、この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する。   If the result of this determination is that it can be reduced, the agent means sends a resource allocation update message for updating the resource allocation to reduce the resource allocation to the resource allocation updating means.

前記削除メッセージ送出手段は、前記リソース減少判定手段による判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント削除メッセージを前記第1のリソース配分削除手段及び前記プログラム削除手段に送出する。   The deletion message sending means sends the inquiry message to the another node inquiry means if the result of the determination by the resource reduction decision means is negative, and based on the stored contents returned from the other node inquiry means An agent deletion message is sent to the first resource allocation deletion unit and the program deletion unit.

一実施形態に係るサービス提供システムの構成の一例を示す模式図である。It is a schematic diagram which shows an example of a structure of the service provision system which concerns on one Embodiment. 同実施形態におけるサービスマネージャ装置及び第1ノード装置の構成の一例を示す模式図である。It is a schematic diagram which shows an example of a structure of the service manager apparatus and 1st node apparatus in the embodiment. 同実施形態におけるSLA記憶部を説明するための模式図である。It is a schematic diagram for demonstrating the SLA memory | storage part in the same embodiment. 同実施形態におけるサービス処理フロー記憶部を説明するための模式図である。It is a schematic diagram for demonstrating the service processing flow memory | storage part in the embodiment. 同実施形態におけるサービス配置記憶部を説明するための模式図である。It is a schematic diagram for demonstrating the service arrangement | positioning memory | storage part in the embodiment. 同実施形態における第1及び第2ノード装置の構成の一例を示す模式図である。It is a schematic diagram which shows an example of a structure of the 1st and 2nd node apparatus in the embodiment. 同実施形態におけるサービスマネージャ装置及び第3ノード装置の構成の一例を示す模式図である。It is a schematic diagram which shows an example of a structure of the service manager apparatus and 3rd node apparatus in the embodiment. 同実施形態における第3及び第4ノード装置の構成の一例を示す模式図である。It is a schematic diagram which shows an example of a structure of the 3rd and 4th node apparatus in the embodiment. 同実施形態におけるリソース配分記憶部を説明するための模式図である。It is a schematic diagram for demonstrating the resource allocation memory | storage part in the same embodiment. 同実施形態におけるペナルティ上下限値記憶部を説明するための模式図である。It is a schematic diagram for demonstrating the penalty upper and lower limit storage part in the embodiment. 同実施形態におけるサービス提供システムの全体動作を説明するためのフローチャートである。It is a flowchart for demonstrating the whole operation | movement of the service provision system in the embodiment. 同実施形態におけるステップST200又はST300の動作を詳細に説明するためのフローチャートである。It is a flowchart for demonstrating in detail the operation | movement of step ST200 or ST300 in the embodiment.

以下、本発明の一実施形態について図面を用いて説明する。なお、以下の各装置は、装置毎に、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings. Each of the following devices can be implemented for each device with either a hardware configuration or a combination configuration of hardware resources and software. As the software of the combined configuration, a program that is installed in advance on a computer of a corresponding device from a network or a storage medium and that realizes the function of the corresponding device is used.

図1は一実施形態に係るサービス提供システムの構成の一例を示す模式図である。サービス提供システムは、ゲートウェイ装置10に接続されたサービスマネージャ装置20と、このサービスマネージャ装置20に通信可能な複数のノード装置N1〜N4とを備えている。各ノード装置N1〜N4は、1つのエージェントマネージャ部30〜30を静的に備えており、0個以上4個以下のエージェント部A〜Dが動的(且つ自律的)に配置される。なお、このサービス提供システムにおいては、エージェント部A〜Dの配置が動的に変化するため、システム構成とリソース配分が動的に変化する。また、エージェント部A〜Dの配置が同じでもリソース配分を変化させる場合がある。 FIG. 1 is a schematic diagram illustrating an example of a configuration of a service providing system according to an embodiment. The service providing system includes a service manager device 20 connected to the gateway device 10 and a plurality of node devices N1 to N4 that can communicate with the service manager device 20. Each of the node devices N1 to N4 statically includes one agent manager unit 30 1 to 30 4 , and 0 to 4 agent units A to D are dynamically (and autonomously) arranged. . In this service providing system, since the arrangement of the agent units A to D dynamically changes, the system configuration and resource allocation change dynamically. Further, even if the arrangement of the agent units A to D is the same, the resource allocation may be changed.

図1に示す構成例では、第1ノード装置N1は、第1エージェント部A及び第1エージェントマネージャ部30を備えている。第2ノード装置N2は、第2エージェント部B及び第2エージェントマネージャ部30を備えている。第3ノード装置N3は、複製の第1エージェント部A’、第3エージェント部C及び第3エージェントマネージャ部30を備えている。第4ノード装置N4は、第4エージェント部D及び第4エージェントマネージャ部30を備えている。 In the configuration example shown in FIG. 1, the first node device N1 includes a first agent unit A and the first agent manager unit 30 1. The second node device N2, and a second agent unit B and the second agent manager unit 30 2. The third node device N3 is first agent unit A replication ', and a third agent unit C, and a third agent manager unit 30 3. Fourth node device N4 is provided with a fourth agent unit D and the fourth agent manager unit 30 4.

全てのノード装置N1〜N4は互いに接続されているが、図面を見やすくする観点から、図1では一部の接続線の記載を省略している。また、ノード装置N1,…の台数と、エージェント部A,…の個数とは、4台と4個に限らず、それぞれ独立に任意の台数と個数とを使用可能となっている。   Although all the node devices N1 to N4 are connected to each other, some connection lines are not shown in FIG. 1 from the viewpoint of making the drawing easy to see. The number of node devices N1,... And the number of agent units A,... Are not limited to four and four, and any number and number can be used independently of each other.

ここで、ゲートウェイ装置10は、外部のコンピュータネットワークへの出入り口となるネットワーク拠点である。全てのサービス要求は、ゲートウェイ装置10からサービスマネージャ装置20に送信される。全てのサービス応答は、サービスマネージャ装置20からゲートウェイ装置10に受信される。例えば、ゲートウェイ装置10は、サービスを識別するサービス識別情報を含むサービス要求をユーザ端末(図示せず)から受信すると、このサービス要求をサービスマネージャ装置20に送信する。また、ゲートウェイ装置10は、このサービス要求に対するサービス応答をサービスマネージャ装置20から受信すると、このサービス応答をユーザ端末に送信する。   Here, the gateway device 10 is a network base serving as an entrance to an external computer network. All service requests are transmitted from the gateway device 10 to the service manager device 20. All service responses are received by the gateway device 10 from the service manager device 20. For example, when receiving a service request including service identification information for identifying a service from a user terminal (not shown), the gateway device 10 transmits the service request to the service manager device 20. When the gateway apparatus 10 receives a service response to the service request from the service manager apparatus 20, the gateway apparatus 10 transmits the service response to the user terminal.

サービスマネージャ装置20は、内部のコンピュータネットワークに存在するノード装置N1〜N4上のエージェント部A〜Dが提供するサービスを管理する。サービスマネージャ装置20は、各ノード装置N1〜N4とゲートウェイ装置10との間に配置されている。なお、全てのサービス要求は、ゲートウェイ装置10及びサービスマネージャ装置20を通っていずれかのノード装置N1〜N4に受信される。同様に、全てのサービス応答は、いずれかのノード装置N1〜N4から送信され、サービスマネージャ装置20及びゲートウェイ装置10を通ってユーザ端末に受信される。   The service manager device 20 manages services provided by the agent units A to D on the node devices N1 to N4 existing in the internal computer network. The service manager device 20 is arranged between the node devices N1 to N4 and the gateway device 10. All service requests are received by any of the node devices N1 to N4 through the gateway device 10 and the service manager device 20. Similarly, all service responses are transmitted from any of the node devices N1 to N4, and are received by the user terminal through the service manager device 20 and the gateway device 10.

具体的には、サービスマネージャ装置20は、例えば図2に示すように、SLA(Service Level Agreement)記憶部21、サービス処理フロー記憶部22、サービス配置記憶部23、サービス評価部24、サービスペナルティ計算部25及び配置更新部26を備えている。   Specifically, for example, as shown in FIG. 2, the service manager device 20 includes an SLA (Service Level Agreement) storage unit 21, a service processing flow storage unit 22, a service arrangement storage unit 23, a service evaluation unit 24, a service penalty calculation. A unit 25 and an arrangement updating unit 26 are provided.

SLA記憶部(サービス評価値記憶手段)21は、予め内容を書込可能で各部24〜25から読出可能なメモリであり、サービスごとのSLA(サービス内容合意書に記載された合意内容のうち、計測可能な評価値)が設定される。例えば、SLA記憶部21は、図3に示すように、サービスを識別するサービス識別情報S1,S2と、当該サービス識別情報S1,S2を含むサービス要求とサービス応答との間で計測可能な評価値(例、レスポンスタイム、スループット、稼働率など)とを関連付けて予め記憶している。このように、SLAの評価値としては、レスポンスタイム、スループット、稼働率など、さまざまなバリエーションが考えられる。SLAの評価値は単一のみで設定してもよく、複数設定してもよい。   The SLA storage unit (service evaluation value storage unit) 21 is a memory in which contents can be written in advance and can be read from the respective units 24 to 25, and among the SLA (service content agreement written in the service content agreement), An evaluation value that can be measured) is set. For example, as shown in FIG. 3, the SLA storage unit 21 has service identification information S1 and S2 for identifying a service, and an evaluation value that can be measured between a service request including the service identification information S1 and S2 and a service response. (Eg, response time, throughput, operation rate, etc.) are stored in advance in association with each other. As described above, various variations such as response time, throughput, and operation rate can be considered as the evaluation value of the SLA. A single SLA evaluation value may be set, or a plurality of SLA evaluation values may be set.

サービス処理フロー記憶部(モジュール識別情報記憶手段)22は、予め内容を書込可能で各部24〜25から読出可能なメモリであり、どの種類のサービス提供モジュール部MA〜MDがどの順序で処理することによってサービスを提供するかを記憶する。例えば、サービス処理フロー記憶部22は、図4に示すように、サービス識別情報S1,S2と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール部MA〜MDを個別に識別するモジュール識別情報とを関連付けて記憶する。   The service processing flow storage unit (module identification information storage unit) 22 is a memory in which contents can be written in advance and can be read from each unit 24 to 25, and which types of service providing module units MA to MD process in any order. By which the service is provided. For example, as shown in FIG. 4, the service processing flow storage unit 22 includes a plurality of service providing module units MA that individually execute each stage of service identification information S1 and S2 and a service identified by the service identification information. The module identification information for individually identifying the MD is stored in association with each other.

この例では、第1及び第2サービス提供モジュール部MA,MBにより第1サービスS1を提供する。同様に、第3及び第4サービス提供モジュール部MC,MDにより第2サービスS2を提供する。   In this example, the first service S1 is provided by the first and second service providing module units MA and MB. Similarly, the second service S2 is provided by the third and fourth service providing module units MC and MD.

サービス配置記憶部(配置記憶手段)23は、予め内容を書込可能で各部24〜26から読出/書込可能なメモリであり、どの種類のエージェント部A〜D及びその複製が、どのノード装置N1〜N4に配置されたかを記憶する。例えば、サービス配置記憶部23は、図5に示すように、各ノード装置N1〜N4を識別する各ノード識別情報と、各ノード装置N1〜N4に配置されたエージェント部A〜D,A’を識別するエージェント識別情報と、エージェント部A〜D,A’に含まれるサービス提供モジュール部MA〜MDを識別するモジュール識別情報とを関連付けて記憶する。   The service arrangement storage unit (arrangement storage unit) 23 is a memory in which contents can be written in advance and can be read / written from each unit 24-26. It is stored whether N1 to N4 are arranged. For example, as shown in FIG. 5, the service arrangement storage unit 23 stores node identification information for identifying the node devices N1 to N4 and agent units A to D and A ′ arranged in the node devices N1 to N4. Agent identification information to be identified and module identification information for identifying service providing module units MA to MD included in the agent units A to D and A ′ are stored in association with each other.

なお、複製の第1エージェント部A’は、第1エージェント部Aが多重化された、第1エージェント部Aと同じ種類のエージェントである。また、サービス配置記憶部23の記憶内容としては、それぞれのエージェント部A〜Dのリソース配分も同時に記憶しておくバリエーションも考えられる。   The duplicate first agent part A 'is the same type of agent as the first agent part A in which the first agent part A is multiplexed. Further, as the storage contents of the service arrangement storage unit 23, a variation in which the resource allocation of each agent unit A to D is also stored can be considered.

サービス評価部24は、ゲートウェイ装置10とサービス提供モジュール部MA〜MDの間のサービスの要求と応答を伝達し、SLA記憶部21に設定したSLAの評価値と同じ種類の評価値を計測する。評価値の一例としては、性能の観点から、サービス要求とサービス要求結果の時間からレスポンスタイム(または、スループットなど)を計測する。なお、サービス配置記憶部23とサービス処理フロー記憶部22の情報を元に、要求を伝達するエージェント部A〜Dを選択する。評価値としては、単一の種類を計測してもよく、複数の種類を計測してもよい。   The service evaluation unit 24 transmits service requests and responses between the gateway device 10 and the service providing module units MA to MD, and measures the same type of evaluation value as the SLA evaluation value set in the SLA storage unit 21. As an example of the evaluation value, the response time (or throughput) is measured from the time of the service request and the service request result from the viewpoint of performance. The agent units A to D that transmit the request are selected based on the information in the service arrangement storage unit 23 and the service processing flow storage unit 22. As an evaluation value, a single type may be measured, or a plurality of types may be measured.

このようなサービス評価部24は、具体的には以下の機能(f24-1)〜(f24-2)をもっている。   Specifically, such a service evaluation unit 24 has the following functions (f24-1) to (f24-2).

(f24-1) ゲートウェイ装置10からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいてサービス処理フロー記憶部22からモジュール識別情報を読出した後、このモジュール識別情報に基づいてサービス配置記憶部23からノード識別情報を読出し、このノード識別情報に基づいて、サービス要求を当該ノード識別情報に識別されるノード装置N1,N2,N3又はN4に送信するサービス要求送信機能。   (f24-1) When a service request is received from the gateway device 10, the module identification information is read from the service processing flow storage unit 22 based on the service identification information in the service request, and then the service arrangement is performed based on the module identification information. A service request transmission function for reading node identification information from the storage unit 23 and transmitting a service request to the node device N1, N2, N3 or N4 identified by the node identification information based on the node identification information.

(f24-2) サービス要求送信機能により送信したサービス要求に対するサービス応答をいずれかのノード装置N1〜N4から受けると、当該サービス応答をゲートウェイ装置10に送信すると共に、当該サービス要求と当該サービス応答との間で評価値を計測する第1の評価値計測機能。   (f24-2) When a service response to the service request transmitted by the service request transmission function is received from any of the node devices N1 to N4, the service response is transmitted to the gateway device 10, and the service request and the service response 1st evaluation value measurement function which measures an evaluation value between.

サービスペナルティ計算部25は、例えば、以下の機能(f25-1)〜(f25-2)をもっている。   The service penalty calculation unit 25 has, for example, the following functions (f25-1) to (f25-2).

(f25-1) サービス評価部24により計測された評価値がSLA記憶部21内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、当該計測された評価値がSLA記憶部21内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算するペナルティ計算機能。なお、満たしている度合いが「過度」か否かは、計測された評価値とSLA記憶部21内の評価値との差分の絶対値が基準値以上か否かにより判定可能である。   (f25-1) When the evaluation value measured by the service evaluation unit 24 does not satisfy the evaluation value in the SLA storage unit 21, a positive service penalty value is calculated, and the measured evaluation value is the SLA. A penalty calculation function for calculating a negative service penalty value when the evaluation value in the storage unit 21 is excessively satisfied. Whether or not the degree of satisfaction is “excessive” can be determined based on whether or not the absolute value of the difference between the measured evaluation value and the evaluation value in the SLA storage unit 21 is greater than or equal to a reference value.

(f25-2) 当該計算されたサービスペナルティ値及び当該計測された評価値を、サービス要求の送信先のノード装置N1,N2,N3又はN4及びサービス応答の送信元のノード装置N1,N2,N3又はN4に送信するペナルティ送信機能。   (f25-2) The calculated service penalty value and the measured evaluation value are used as the node device N1, N2, N3 or N4 of the service request transmission destination and the node device N1, N2, N3 of the service response transmission source. Or penalty transmission function to transmit to N4.

ここで、サービスペナルティ値とは、サービスがどれくらいSLAを満たしているかを示す情報である。なお、サービスペナルティ値はSLAの評価値ごとに計算してもよく、SLAの複数の評価値に基づいて1つのサービスペナルティ値を計算してもよい。   Here, the service penalty value is information indicating how much the service satisfies the SLA. The service penalty value may be calculated for each evaluation value of the SLA, or one service penalty value may be calculated based on a plurality of evaluation values of the SLA.

サービスペナルティ値の計算方法の一例として、次式の通り、計測されたレスポンスタイムからサービスペナルティ値を計算する場合を説明する。   As an example of a method for calculating the service penalty value, a case where the service penalty value is calculated from the measured response time as follows is described.

(サービスペナルティ値)=((計測したレスポンスタイム)−(SLA記憶部21内のレスポンスタイム))×(レスポンスタイム重み)
なお、「…重み」は、ユーザが重要視している要求に高い値を設定しておく。また、このようなサービスペナルティ値は、モジュールペナルティ積算部43,43又は43,43において、サービスを構成する各サービス提供モジュール部MA,MB又はMC,MDにおけるモジュールペナルティ値に分割される。
(Service penalty value) = ((Measured response time) − (Response time in SLA storage unit 21)) × (Response time weight)
Note that “... Weight” is set to a high value for a request that is regarded as important by the user. Further, such services penalty value is the module penalty integration section 43 1, 43 2 or 43 3, 43 4, each of the service providing module unit MA constituting the service, MB, or MC, is divided into modules penalty value in MD The

分割する割合は、以下の(1)又は(2)のように定める。   The ratio to be divided is determined as in (1) or (2) below.

例えば、モジュールペナルティ積算部43は、モジュール評価部42により計測されたサービス提供モジュール部MAの処理時間に基づき、(1)又は(2)に示す割合でサービスペナルティ値を分割する。 For example, the module penalty integration section 43 1 on the basis of the processing time of the measured service providing module unit MA by the module evaluation unit 42 1, to divide the service penalty value in the proportions indicated in (1) or (2).

(1)サービスのレスポンスタイム中のサービス提供モジュール部MAの処理時間の割合
(2)「そのサービス提供モジュール部MAの現在の処理時間と、そのサービス提供モジュール部MAのその前の時点における処理時間との差分」と「現在のレスポンスタイムと、その前の時点におけるレスポンスタイムの差分」の割合。なお、「その前の時点」は「前の周期」と読み替えてもよい。また、第1エージェント部Aにサービス提供モジュール部MA,…が複数存在する場合、サービス要求の種類で処理を区別する。
(1) Ratio of processing time of service providing module unit MA during service response time (2) “Current processing time of service providing module unit MA and processing time of service providing module unit MA at the previous time point The difference between “the difference between” and “the difference between the current response time and the response time before that”. The “previous time” may be read as “previous cycle”. Further, when there are a plurality of service providing module parts MA,... In the first agent part A, the process is distinguished by the type of service request.

配置更新部26は、エージェント部A,B,C又はDを削除、移動又は複製するように更新したノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をいずれかのノード装置N1〜N4から受けると、当該配置更新情報に基づいてサービス配置記憶部23を更新する配置更新機能をもっている。   The placement update unit 26 receives the node update information indicating the node identification information, the agent identification information, and the module identification information updated so as to delete, move, or duplicate the agent unit A, B, C, or D. When received from N4, it has an arrangement update function for updating the service arrangement storage unit 23 based on the arrangement update information.

一方、ノード装置N1〜N4は仮想マシン(エージェント部A〜D)を動作させる物理的なコンピュータであり、図2,図6〜図8に示すように、エージェントマネージャ部30〜30と、図示しないプログラム実行手段とを備えている。このプログラム実行手段は、自ノード装置N1〜N4にエージェント手段(エージェント部A〜D)が配置される場合に用いられ、自ノード装置N1〜N4を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なCPUを含んでいる。 On the other hand, the node device N1~N4 is a physical computer running a virtual machine (agent unit to D), 2, 6 to 8, the agent manager unit 30 1 to 30 4, Program execution means (not shown). This program execution means is used when agent means (agent units A to D) are arranged in the own node apparatuses N1 to N4, and an agent program for causing the own node apparatuses N1 to N4 to function also as the agent means. A storable memory and a CPU capable of executing the agent program are included.

ここで、ノード装置N1〜N4内のエージェントマネージャ装置30〜30は、互いに同一構成であるので、ここでは第1ノード装置N1内の第1エージェントマネージャ部30を例に挙げて説明する。 Here, the agent manager device 30 1 to 30 4 in the node device N1~N4 is the same configuration with each other, it will be described here by way of first agent manager 30 1 in the first node device N1 as an example .

第1エージェントマネージャ部30は、第1ノード装置N1内に配置された全てのエージェント部A,…を管理するものであり、例えば、エージェント部A,…のリソース配分の管理や、エージェント部A,…の配置の管理を行なう。リソース配分の管理としては、エージェント部A,…のリソース配分の記憶と、エージェント部A,…のリソース配分の変更をする。エージェント部A,…の配置の管理としては、別のノード装置N2,…にリソース配分を問合せ、その問合せ結果に基づくエージェント部A,…の移動、複製を行なう。また、エージェント部A,…が不要になった場合の削除も行なう。 The first agent manager unit 30 1, all of the agent unit A is arranged in the first node device N1, and manages the ..., for example, the agent unit A, ... management of resources allocation, the agent unit A , ... are managed. As the resource allocation management, the resource allocation of the agent parts A,... Is stored and the resource allocation of the agent parts A,. As management of the arrangement of the agent units A,..., Another node device N2,... Is inquired about resource allocation, and the agent units A,. Also, the agent part A,... Is deleted when it becomes unnecessary.

具体的には、エージェントマネージャ部30は、リソース配分記憶部31、リソース配分部32、別ノード問合せ部33及びエージェント再配置部34を備えている。 Specifically, agent manager unit 30 1, the resource allocation storage unit 31 1, the resource allocation unit 32 1, and a different node query unit 331 and the agent relocation unit 34 1.

リソース配分記憶部31は、各部32〜34,44から読出/書込可能なメモリであり、自ノード装置N1に配置されたエージェント部A,…を識別するエージェント識別情報と、自ノード装置N1のリソースの配分を示すリソース配分とを関連付けて記憶する。例えば、第3ノード装置N3のリソース配分記憶部31は、図9に示すように、自ノード装置N3に配置された第1及び第3エージェント部A’,Cを識別するエージェント識別情報と、自ノード装置N3のリソースの配分を示すリソース配分40%,20%とを関連付けて記憶している。補足すると、本実施形態では、各エージェント部A,…の単位でリソース配分やシステム構成を変化させる。ここでいうリソース配分とは、そのエージェント部A,…が使用できるプロセッサ、ハードディスク(補助記憶装置)、主記憶装置、ネットワークなどの計算機資源の割当を意味する。 The resource allocation storage unit 31 1 is a memory that can be read / written from each of the units 32 1 to 34 1 , 44 1 , and includes agent identification information that identifies the agent units A,. The resource allocation indicating the resource allocation of the node device N1 is stored in association with each other. For example, the resource allocation storage unit 31 of the third node device N3, as shown in FIG. 9, the first and third agent unit A are arranged in this node device N3 ', and agent identification information for identifying the C, The resource allocation 40% and 20% indicating the resource allocation of the own node device N3 are stored in association with each other. Supplementally, in the present embodiment, resource allocation and system configuration are changed in units of each agent unit A,. Resource allocation here means allocation of computer resources such as processors, hard disks (auxiliary storage devices), main storage devices, and networks that can be used by the agent units A,.

リソース配分部32は、リソース配分を変化させ、リソース配分をリソース配分記憶部31に記録する。また、エージェント部A,…の削除又は移動に伴ってエージェント識別情報及びリソース配分を削除した後には、当該削除後のリソース配分記憶部31のエージェント識別情報を含むメッセージをエージェント再配置部34に送る。 The resource allocation unit 32 1 changes the resource allocation and records the resource allocation in the resource allocation storage unit 31 1 . The agent unit A, ... deletion or after removing the agent identification information and resource allocation in accordance with the movement, the agent relocation unit 34 1 a message containing the agent identification information of the resource allocation storage unit 31 1 after the deletion Send to.

例えばリソース配分部32は、以下の機能(f32-1)〜(f32-3)をもっている。 For example the resource allocation unit 32 1 has the following functions (f32-1) ~ (f32-3).

(f32-1) 自ノード装置N1に配置されたエージェント部A,…から当該エージェント部A,…を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいてリソース配分記憶部31内のリソース配分を更新するリソース配分更新機能。 (f32-1) A resource allocation update message for updating so as to increase or decrease the resource allocation associated with the agent identification information for identifying the agent unit A,... from the agent unit A,. receiving the resource allocation update function for updating the resource allocation of the resource allocation storage unit 31 1 on the basis of the resource allocation update message.

(f32-2) 自ノード装置N1に配置されたエージェント部A,…から当該エージェント部A,…を識別するエージェント識別情報を指定して当該エージェントA,…を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいてリソース配分記憶部31内の当該エージェント識別情報及びリソース配分を削除する第1のリソース配分削除機能。 (f32-2) Upon receiving an agent deletion message for designating agent identification information for identifying the agent part A,... from the agent part A,. first resource allocation deletion function deletes the agent identification information and resource allocation of the resource allocation storage unit 31 1 on the basis of the agent deletes the message.

(f32-3) 自ノード装置N1に配置されたエージェント部A,…から当該エージェント部A,…を識別するエージェント識別情報と移動先のノード装置N2,…を示すノード識別情報とを指定して当該エージェント部A,…を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいてリソース配分記憶部31内の当該エージェント識別情報及びリソース配分を削除する第2のリソース配分削除機能。 (f32-3) The agent identification information for identifying the agent part A,... and the node identification information for indicating the destination node apparatus N2,. the agent unit a, receiving agents movement messages for moving ..., second resource allocation deletion function deletes the agent identification information and resource allocation of the resource allocation storage unit 31 1 on the basis of the agent moving message.

別ノード問合せ部33は、他のノード装置N2〜N4にブロードキャスト又はマルチキャストによって別ノード装置N2〜N4のリソース配分を問い合わせる。問合せ結果は、エージェント再配置のあて先などを決定するための元とする情報とする。なお、サービス配置記憶部23にリソース配分の情報を持たせる場合は、別ノード問合せ部33は、配置更新部26にリソース配分を問合せる。 Another node query unit 33 1 inquires a resource allocation of another node device N2 to N4 by broadcast or multicast to another node device N2 to N4. The inquiry result is information used as a source for determining the destination of the agent relocation. In the case to have information of the resource allocation to the service location storage unit 23, another node inquiry unit 33 1, inquires the resource allocation to the arrangement updating unit 26.

具体的には、別ノード問合せ部33は、自ノード装置N1に配置されたエージェント部A,…から、自ノード装置N1以外の別ノード装置N2,N3,N4のリソース配分を問合せる問合せメッセージを受けると、別ノード装置N2,N3,N4のリソース配分記憶部31,31,31の記憶内容を別ノード装置N2,N3,N4に問合せると共に、別ノード装置N2,N3,N4から応答された当該記憶内容を当該エージェント部A,…に応答する別ノード問合せ機能をもっている。 Specifically, another node inquiry unit 33 1, the own node device N1 to arranged the agent unit A, from ..., an inquiry message for inquiring another node resource allocation device N2, N3, N4 other than the own node device N1 receiving the, the inquiring another node device N2, N3, resource allocation storage unit 31 2 of the N4, 31 3, 31 4 of the memory contents to another node device N2, N3, N4, the response from another node device N2, N3, N4 It has another node inquiry function for responding the stored contents to the agent part A,.

エージェント再配置部34は、エージェント意思決定部44からのメッセージを受け取り、内容に応じて、エージェント部Aが現在存在するノード装置N1から他のノード装置N2〜N4への移動、複製、もしくは削除を行なう。エージェント部Aの移動または、複製を行なう場合は別ノード問合せ部33から、別ノード装置N2〜N4へのリソース配分を問い合わせて、そのノード装置N2〜N4にエージェント部Aを配置可能かどうか調べる。その結果を踏まえて、どのノード装置N2〜N4にエージェント部Aの移動または複製を行なうべきかを決定する。 Agent relocation unit 34 1 receives a message from the agent decision section 44 1, depending on the content, moving from the node device N1 to the agent unit A is present the current to another node device N2 to N4, replication, or Delete. Movement or agent unit A, from another node inquiry unit 33 1 for performing duplication, query the resource allocation to another node apparatus N2 to N4, see if positionable agent unit A to the node device N2 to N4 . Based on the result, it is determined to which node device N2 to N4 the agent unit A should be moved or copied.

エージェント部Aの削除を行なう場合、エージェント再配置部34は、別ノード装置N2,N3,N4のリソース配分記憶部31,31,31の記憶内容を確認し、他に同じサービス提供モジュール部MAを含む複製のエージェント部A’が存在するかを確認する。もし他に同じサービス提供モジュール部MAを含む複製のエージェント部A’が存在しない場合は、エージェント部Aを削除しない。理由は、サービス提供システムがサービスを提供するためには、各サービス提供モジュール部MA,MB,MC,MDが少なくとも1つずつ必要なためである。 When performing the deletion of the agent unit A, the agent relocation unit 34 1 checks another node device N2, N3, resource allocation storage unit 31 2 of the N4, 31 3, 31 4 of the memory contents, other providing the same service It is confirmed whether or not a duplicate agent part A ′ including the module part MA exists. If there is no duplicate agent part A ′ including the same service providing module part MA, the agent part A is not deleted. The reason is that at least one service providing module unit MA, MB, MC, MD is required for the service providing system to provide the service.

エージェント部Aの移動、複製、削除を行う場合、エージェント再配置部34は、配置更新部26を介してサービス配置記憶部23の情報を修正する。また、エージェント部A〜Dの配置の変更に合わせて、変更されたエージェント部A〜D内のサービス提供モジュール部MA〜MDへのサービス要求のあて先の設定と、そのサービス提供モジュール部MA〜MDに対してサービス要求を送るサービス提供モジュール部MA〜MDのサービス要求のあて先の設定を修正する。 Movement of the agent unit A, replication, when deleting the agent relocation unit 34 1 corrects the information of the service location storage unit 23 via the placement updating unit 26. Further, in accordance with the change in the arrangement of the agent units A to D, setting of the service request destinations to the service providing module units MA to MD in the changed agent units A to D and the service providing module units MA to MD are performed. The service request destination settings of the service providing module units MA to MD that send a service request to the server are corrected.

具体的には、エージェント再配置部34は、以下の機能(f34-1)〜(f34-2)をもっている。 Specifically, the agent relocation unit 34 1 has the following functions (f34-1) ~ (f34-2).

(f34-1) エージェント意思決定部44からエージェント削除メッセージを受けると、リソース配分部32により削除された後の自ノード装置N1に関するノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をサービスマネージャ装置20に送信し、当該エージェント部A,…のエージェントプログラムをメモリから削除するプログラム削除機能。 (f34-1) Receiving agents deletion message from the agent decision section 44 1, disposed update indicating the own node node identification information on device N1 after being removed by the resource allocation unit 32 1, the agent identification information and the module identification information A program deletion function for transmitting information to the service manager device 20 and deleting the agent program of the agent part A,.

(f34-2) エージェント意思決定部44からエージェント移動メッセージを受けると、リソース配分部32により削除された後の自ノード装置N1に関するノード識別情報、エージェント識別情報及びモジュール識別情報と、移動先のノード装置N2,N3又はN4に関するノード識別情報、エージェント識別情報及びモジュール識別情報との両者を含む配置更新情報をサービスマネージャ装置20に送信し、当該エージェント部A,…のエージェントプログラムを移動先のノード装置N2,N3又はN4に送信すると共に、当該エージェントプログラムをメモリから削除するプログラム移動機能。 (f34-2) Receiving agents move messages from the agent decision section 44 1, node identification information about the node device N1 after being removed by the resource allocation unit 32 1, and the agent identification information and the module identification information, the destination Is transmitted to the service manager device 20 including the node identification information, the agent identification information, and the module identification information regarding the node device N2, N3 or N4, and the agent program of the agent unit A,. A program transfer function for transmitting to the node device N2, N3 or N4 and deleting the agent program from the memory.

一方、エージェント部A〜Dは、物理的なコンピュータの上で動作する仮想マシンである。なお、エージェント部A〜Dは、サービスを提供するための部品となるサービス提供モジュール部MA〜MDを個別に含んでいる。複数のエージェント部A,B又はC,Dが1つのサービスS1又はS2を連携して処理する。エージェント部A,B,C,Dは、任意のノード装置N1〜N4に移動させることができ、可用性を向上させる多重化のために同じ種類のエージェント部A,B,C,Dを複数配置させることもできる。   On the other hand, the agent units A to D are virtual machines that operate on a physical computer. The agent units A to D individually include service providing module units MA to MD that are components for providing services. A plurality of agent units A, B or C, D process one service S1 or S2 in cooperation. The agent units A, B, C, and D can be moved to any node device N1 to N4, and a plurality of agent units A, B, C, and D of the same type are arranged for multiplexing to improve availability. You can also.

この例では、第1エージェント部A、複製の第1エージェント部A’及び第2エージェント部Bにより第1サービスS1を提供し、第3エージェント部C及び第4エージェント部Dにより第2サービスS2を提供する。なお、複製の第1エージェント部A’は第1エージェント部Aを多重化した、第1エージェント部Aと同じ種類のエージェントである。   In this example, the first service part A is provided by the first agent part A, the duplicate first agent part A ′ and the second agent part B, and the second service S2 is provided by the third agent part C and the fourth agent part D. provide. The duplicated first agent part A 'is the same type of agent as the first agent part A in which the first agent part A is multiplexed.

エージェント部A〜Dは、ノード装置N1〜N4の間で移動、複製が行なわれ、必要が無くなると削除される。   The agent units A to D are moved and copied between the node devices N1 to N4, and are deleted when they are no longer necessary.

なお、各エージェント部A〜Dは、サービス提供モジュール部MA〜MDによるサービス処理内容を除き、互いに同一の機能構成であるので、ここでは、第1エージェント部Aを例に挙げて詳細に説明する。   The agent units A to D have the same functional configuration except for the contents of service processing performed by the service providing module units MA to MD. Therefore, here, the first agent unit A will be described in detail as an example. .

第1エージェント部Aは、サービス提供モジュール部MA、ペナルティ上下限値記憶部41、モジュール評価部42、モジュールペナルティ積算部43及びエージェント意思決定部44を備えている。 The first agent unit A, and includes the service providing module unit MA, the penalty on the lower limit value storage unit 411, the module evaluation unit 42 1, the module penalty integration section 43 1 and the agent decision unit 44 1.

サービス提供モジュール部MAは、サービスの提供を行なうための部品の1つであり、サービス識別情報により識別されるサービスの各段階を個別に実行するものであって、他のサービス提供モジュール部MBと連携して、サービスを提供する。補足すると、サービス提供システムが提供するサービスは、一般的なWebシステムで用いられるWebサーバ、アプリケーションサーバ及びデータベースサーバの三層構造のようなサービス提供モジュールのように、複数のサービス提供モジュールが連携して処理することを想定している。   The service providing module unit MA is one of the components for providing the service, and individually executes each stage of the service identified by the service identification information. The service providing module unit MA and other service providing module units MB Provide services in cooperation. Supplementally, a service provided by a service providing system is a combination of a plurality of service providing modules such as a service providing module such as a three-layer structure of a Web server, an application server, and a database server used in a general Web system. Is assumed to be processed.

ペナルティ上下限値記憶部41は、同じエージェント部A内のサービス提供モジュール部MAに対するペナルティ積算値の上限値と下限値を記憶する。具体的には、ペナルティ上下限値記憶部41は、図10の下から4行目に示すように、サービス識別情報と、モジュール識別情報と、サービスペナルティ値をサービス提供モジュール部MAに割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて記憶する。なお、図10の下から1行目〜3行目に示すデータは、ノード装置N1には配置されていないエージェント部B〜Dに関するデータであるが、参考のために記載した。 Penalty on the lower limit value storage unit 411 stores the upper limit value and the lower limit value of the penalty integrated value to the service providing module unit MA of the same agent unit A. Specifically, the penalty on the lower limit value storage unit 411, as shown in the fourth line from the bottom of FIG. 10, the service identification information, and module identification information, assigning the service penalty value to the service providing module unit MA An upper limit value indicating the upper limit of the integrated value obtained by integrating the module penalty values and a lower limit value indicating the lower limit of the integrated value are stored in association with each other. Note that the data shown in the first to third lines from the bottom of FIG. 10 is data related to the agent units B to D that are not arranged in the node device N1, but are described for reference.

モジュール評価部42は、提供するサービスの中で、例えば第1エージェント部Aにある第1サービス提供モジュール部MAがどれくらいペナルティを請け負うべきかを決定するために第1サービス提供モジュール部MAの評価をする。具体的には、モジュール評価部42は、この第1サービス提供モジュール部MAに対して、前述した評価値を計測する第2の評価値計測機能をもっている。 Module evaluation unit 42 1, the evaluation of the first service providing module unit MA to determine whether to undertake penalty, much for example the first service providing module unit MA in the first agent unit A is in the services provided do. Specifically, the module evaluation unit 42 1, to the first service providing module unit MA, has a second evaluation value measuring function of measuring an evaluation value mentioned above.

モジュールペナルティ積算部43は、モジュール評価部42で計測された評価値と、サービスマネージャ装置20から受けたサービスペナルティ値及び評価値とに基づいて、モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の積算値を計算する機能をもっている。なお、モジュールペナルティ値の計算は、前述した通り、例えば、モジュール評価部42により計測された第1サービス提供モジュール部MAの処理時間に基づく割合でサービスペナルティ値を分割することにより行う。また、積算値の計算は、モジュールペナルティ値を一定時間の間積算することにより行う。また、モジュールペナルティ値の積算値は一定時間ごとにリセットされる。なお、モジュールペナルティ値とは、エージェントのリソース配分を変更するか、移動、複製、削除するかを決定するための判断材料とする情報である。 Module penalty integration section 43 1, the evaluation value measured by the module evaluation unit 42 1, on the basis of the service penalty value and the evaluation value received from the service manager unit 20, the calculating module penalty value, the module penalty Has a function to calculate the integrated value. The calculation module penalty value, as described above, for example, by dividing the service penalty value in a ratio based on the first service providing module unit MA of the processing time measured by the module evaluation unit 42 1. The integrated value is calculated by integrating the module penalty value for a certain time. Further, the integrated value of the module penalty value is reset at regular intervals. The module penalty value is information used as a judgment material for deciding whether to change, move, copy, or delete the resource allocation of agents.

また、モジュールペナルティ積算部43は、計算した積算値と、ペナルティ上下限値記憶部41内の上限値及び下限値とを比較し、比較結果を示すメッセージをエージェント意思決定部44に送出する機能をもっている。 Further, the module penalty integration section 43 1, and the calculated integrated value is compared with the upper limit value and the lower limit value of the penalty on the lower limit value storage unit 41 1, transmits the message indicating the comparison result to the agent decision section 44 1 It has a function to do.

エージェント意思決定部44は、モジュールペナルティ積算部43からのメッセージに応じて、リソース配分記憶部31と別ノード問合せ部33から情報を得て、エージェント部A,…のリソース配分を変更するか、エージェント部A,…を再配置するかを決定し、リソース配分記憶部31やサービス配置記憶部23を更新して、リソース配分部31にリソース配分の変更を行なうようにメッセージを送るか、もしくはエージェント再配置部34にエージェント部A,…の移動、複製、削除を行なうようにメッセージを送る。ここでいうエージェント部A,…の再配置とは、エージェント部A,…の移動、複製、削除のことである。 Agent decision unit 44 1 in response to a message from module penalty integration section 43 1, changing to obtain information and resource allocation storage unit 31 1 from another node inquiry unit 33 1, the agent unit A, ... resource allocation either, agent unit a, determines ... relocating, update the resource allocation storage unit 31 1 and the service location storage unit 23, a message to perform change of resource allocation in the resource allocation unit 31 1 sending either or agent unit a to the agent relocation unit 34 1, ... move, copy, send a message to perform the deletion. The rearrangement of the agent parts A,... Here means the movement, duplication, and deletion of the agent parts A,.

具体的には、エージェント意思決定部44は、以下の機能(f44-1)〜(f44-5)をもっている。 Specifically, the agent decision section 44 1 has the following functions (f44-1) ~ (f44-5).

(f44-1) モジュールペナルティ積算部43による比較の結果、積算値が上限値より大きいとき、当該エージェント部A,…が配置された自ノード装置N1内のリソース配分記憶部31を参照し、当該エージェント部A,…を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定するリソース増加判定機能。 (f44-1) module penalty integration section 43 first comparison result by, when the integrated value is larger than the upper limit, the agent unit A, ... refers to the resource allocation storage unit 31 1 in the node device N1 arranged A resource increase determination function for determining whether or not the resource distribution associated with the agent identification information for identifying the agent part A,.

(f44-2) この判定の結果、増加可能な場合にはリソース配分を増加させるように更新するリソース配分更新メッセージをリソース配分部32に送出する機能。 (f44-2) the result of this determination is a function of sending a resource allocation update message if possible increase updates to increase the resource allocation in the resource allocation unit 32 1.

(f44-3) リソース増加判定機能による判定の結果、否の場合には問合せメッセージを別ノード問合せ部33に送出し、当該別ノード問合せ部33から応答された記憶内容に基づいてエージェント移動メッセージをリソース配分部32及びエージェント再配置部34に送出する移動メッセージ送出機能。 (f44-3) result of the determination by the resource increase determination function, in the case of not sends out an inquiry message to another node inquiry unit 33 1, the agent moves on the basis of the stored contents returned from the another node inquiry unit 33 1 A mobile message transmission function for transmitting a message to the resource allocation unit 32 1 and the agent relocation unit 34 1 .

(f44-4) モジュールペナルティ積算部43による比較の結果、積算値が下限値より小さいとき、当該エージェント部A,…が配置された自ノード装置N1内のリソース配分記憶部31を参照し、当該エージェント部A,…を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定するリソース減少判定機能。 (f44-4) module penalty integration section 43 first comparison result by, when the integrated value is smaller than the lower limit, the agent unit A, ... refers to the resource allocation storage unit 31 1 in the node device N1 arranged , A resource decrease determination function for determining whether or not the resource distribution associated with the agent identification information for identifying the agent part A,.

(f44-5) この判定の結果、減少可能な場合にはリソース配分を減少させるように更新するリソース配分更新メッセージをリソース配分部32に送出する機能。 (f44-5) the result of this determination is a function of sending a resource allocation update message if possible decrease is updated to reduce the resources allocated to the resource allocation unit 32 1.

(f44-6) リソース減少判定機能による判定の結果、否の場合には問合せメッセージを別ノード問合せ部33に送出し、当該別ノード問合せ部33から応答された記憶内容に基づいてエージェント削除メッセージをリソース配分部32及びエージェント再配置部34に送出する削除メッセージ送出機能。 (f44-6) result of the determination by the resource reduction determination function, in the case of not sends out an inquiry message to another node inquiry unit 33 1, the agent deletes based on the stored contents of the response from said another node inquiry unit 33 1 A deletion message transmission function for transmitting a message to the resource allocation unit 32 1 and the agent relocation unit 34 1 .

次に、以上のように構成されたサービス提供システムの動作を図11及び図12のフローチャートを用いて説明する。   Next, the operation of the service providing system configured as described above will be described with reference to the flowcharts of FIGS.

図11はサービス提供システムの全体動作を説明するためのフローチャートである。図示するように、業務要件を分析し、SLA記憶部21、サービス処理フロー記憶部22、サービス配置記憶部23、リソース配分記憶部31〜31及びペナルティ上下限値記憶部41〜41の初期値を設定する(ST100)。 FIG. 11 is a flowchart for explaining the overall operation of the service providing system. As shown, to analyze the operational requirements, SLA storage unit 21, a service processing flow storage unit 22, the service location storage unit 23, a resource allocation storage unit 31 1 to 31 4 and the penalty on the lower limit value storage unit 41 1 to 41 4 Is set (ST100).

ここで、リソース配分記憶部31〜31の初期値は、ノード装置N1〜N4の各々が提供可能なリソース配分を、各ノード装置N1〜N4におけるリソース配分の初期値の合計が上回らなければ、任意で良い。 Here, the initial value of the resource allocation storage unit 31 1 to 31 4, each can be provided by resource allocation of the node device N1-N4, if total exceed the initial value of the resource allocation in each node device N1-N4 Any is good.

次に、サービスの業務要件に見合った量の利用を行なう試験的運用を行い、サービスの業務要件に見合ったシステム構成とリソース配分の再構成を行なう(ST200)。   Next, a trial operation is performed in which an amount corresponding to the service business requirement is used, and a system configuration and resource allocation are reconfigured according to the service business requirement (ST200).

しかる後、再構成されたサービス提供システムを本番運用する(ST300)。運用中にSLAが変化した場合、SLA記憶部21の設定とペナルティ上下限値記憶部41〜41の上限値及び下限値を再設定して、サービスの業務要件に見合ったシステムに再構成する。 Thereafter, the reconfigured service providing system is put into operation (ST300). When the SLA changes during operation, the setting of the SLA storage unit 21 and the upper and lower limit values of the penalty upper and lower limit storage units 41 1 to 41 4 are reset to reconfigure the system to meet the service business requirements. To do.

図12はサービス提供システムの全体動作のうち、ステップST200又はST300におけるシステム構成とリソース配分の再構成を行なう動作を詳細に説明するためのフローチャートである。すなわち、ステップST番号の200番台を300番台に読み替えてもよい。また、ノード装置N1〜N4内の各部の下付添字1,2等は、各部が属するノード装置N1〜N4を表している。このため、下付添字1,2等をもつ各部は、ノード装置N1,N2等の中でそれぞれ並列に処理を実行している。   FIG. 12 is a flowchart for explaining in detail the operation of reconfiguring the system configuration and resource allocation in step ST200 or ST300 in the overall operation of the service providing system. That is, the step ST number of the 200 series may be read as the 300 series. Further, subscripts 1, 2, etc. of each part in the node devices N1 to N4 represent the node devices N1 to N4 to which each part belongs. For this reason, each part having the subscripts 1, 2, etc. executes processing in parallel in the node devices N1, N2, etc.

ステップST201においては、図示しないユーザ端末から第1サービスS1を識別するサービス識別情報を含むサービス要求をゲートウェイ装置10が受信すると、ゲートウェイ装置10からサービスマネージャ装置20にサービス要求が送信される。   In step ST201, when the gateway apparatus 10 receives a service request including service identification information for identifying the first service S1 from a user terminal (not shown), the service request is transmitted from the gateway apparatus 10 to the service manager apparatus 20.

サービスマネージャ装置20においては、サービス評価部24がサービス処理フロー記憶部22からサービスの処理を行なう第1及び第2サービス提供モジュール部MA,MBを確認し、サービス配置記憶部23から、要求されたサービスの処理を行なう第1及び第2サービス提供モジュール部MA,MBの配置された各ノード装置N1〜N3を確認する。ここで確認した情報を元に、サービス評価部24は、第1サービス提供モジュール部MAを含む第1又は第3ノード装置N1又はN3にサービス要求を送信する。   In the service manager device 20, the service evaluation unit 24 confirms the first and second service providing module units MA and MB that perform service processing from the service processing flow storage unit 22, and is requested from the service arrangement storage unit 23. The node devices N1 to N3 in which the first and second service providing module units MA and MB that perform service processing are arranged are confirmed. Based on the information confirmed here, the service evaluation unit 24 transmits a service request to the first or third node device N1 or N3 including the first service providing module unit MA.

いずれかのノード装置N1又はN3の第1エージェント部A内の第1サービス提供モジュール部MA内で処理が行なわれ、第2ノード装置N2内の第2エージェント部Bにサービス要求を送信する。第2エージェント部Bの第2サービス提供モジュール部MBはサービス要求に対するサービス応答を第1エージェント部Aに返信する。第1エージェント部Aの第1サービス提供モジュール部MAはこのサービス応答をサービスマネージャ装置20内のサービス評価部24に返信する。   Processing is performed in the first service providing module unit MA in the first agent unit A of any node device N1 or N3, and a service request is transmitted to the second agent unit B in the second node device N2. The second service providing module unit MB of the second agent unit B returns a service response to the service request to the first agent unit A. The first service providing module unit MA of the first agent unit A returns this service response to the service evaluation unit 24 in the service manager device 20.

これらサービス要求の送信からサービス応答の受信までの処理において、サービス評価部24がサービスの評価値を計測する一方、各エージェント部A,B内のモジュール評価部42,42が各サービス提供モジュール部MA,MBの評価値を計測する。 In the processing from the transmission of the service request to the reception of the service response, the service evaluation unit 24 measures the evaluation value of the service, while the module evaluation units 42 1 and 42 2 in the agent units A and B respectively The evaluation values of the parts MA and MB are measured.

サービス評価部24の評価方法は任意であるが、例えばレスポンスタイムを評価する。   Although the evaluation method of the service evaluation part 24 is arbitrary, for example, response time is evaluated.

サービス提供モジュール部MA,MBの評価方法は任意であるが、例えばレスポンスタイムの割合を求める。例えば、評価対象のサービス提供モジュール部MAが、サービスマネージャ装置20からサービス要求を受けてから連携する他のサービス提供モジュール部MBにサービス要求を送信するまでの処理時間と、連携する他のサービス提供モジュール部MBからのサービス応答を受信してからサービス応答をサービスマネージャ装置20に返すまでの処理時間とを合計した処理時間のうち、サービス提供モジュール部MAの処理時間が占める割合を評価する。   Although the service providing module units MA and MB can be evaluated by any method, for example, a response time ratio is obtained. For example, the processing time from when the service providing module unit MA to be evaluated receives a service request from the service manager device 20 until the service request is transmitted to another service providing module unit MB to be linked, and other service providing to be linked The ratio of the processing time of the service providing module unit MA out of the total processing time of receiving the service response from the module unit MB and returning the service response to the service manager device 20 is evaluated.

ステップST202においては、サービスペナルティ計算部25は、サービス評価部24により計測された評価値と、SLA記憶部21の評価値とに基づいて、サービスペナルティ値を計算する。   In step ST202, the service penalty calculation unit 25 calculates a service penalty value based on the evaluation value measured by the service evaluation unit 24 and the evaluation value of the SLA storage unit 21.

サービスペナルティ値の計算方法は任意であるが、この例では、サービス評価部24により計測された評価値がSLA記憶部21内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、当該計測された評価値がSLA記憶部21内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算する。   The service penalty value can be calculated by any method. In this example, when the evaluation value measured by the service evaluation unit 24 does not satisfy the evaluation value in the SLA storage unit 21, a positive service penalty value is set. The service penalty value of a negative value is calculated when the measured evaluation value satisfies the evaluation value in the SLA storage unit 21 excessively.

ステップST203においては、サービスペナルティ計算部25は、計算されたサービスペナルティ値及び当該計測された評価値を、サービス要求の送信先のノード装置N1及びサービス応答の送信元のノード装置N2に送信する。   In step ST203, the service penalty calculation unit 25 transmits the calculated service penalty value and the measured evaluation value to the node device N1 that is the transmission destination of the service request and the node device N2 that is the transmission source of the service response.

モジュールペナルティ積算部43,43は、モジュール評価部42,42で計測された評価値と、サービスマネージャ装置20から受けたサービスペナルティ値及び評価値とに基づいて、モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の積算値を計算する。 Module penalty integration section 43 1, 43 2, based a module evaluation unit 42 1, 42 evaluation value measured by 2, to the service penalty value and the evaluation value received from the service manager unit 20, calculates the module penalty value At the same time, the integrated value of the module penalty value is calculated.

ステップST204以降のフローでは、さまざまなバリエーションが考えられるが、以下はSLA記憶部21内の評価値をレスポンスタイムとしたときの一例である。   Various variations are conceivable in the flow after step ST204, but the following is an example when the evaluation value in the SLA storage unit 21 is used as the response time.

ステップST204においては、モジュールペナルティ積算部43,43は、計算した積算値と、ペナルティ上下限値記憶部41,41内の上限値とを比較し、比較結果を示すメッセージをエージェント意思決定部44,44に送出する。これにより、エージェント部A,Bのリソース配分の変更、エージェント部A,Bの移動、複製、削除を行なう。 In step ST204, the module penalty integration units 43 1 and 43 2 compare the calculated integration values with the upper limit values in the penalty upper and lower limit storage units 41 1 and 41 2 , and send a message indicating the comparison result to the agent's intention. The data is sent to the determination units 44 1 and 44 2 . Thereby, the resource allocation of the agent parts A and B is changed, and the agent parts A and B are moved, duplicated, and deleted.

ステップST205においては、エージェント意思決定部44,44は、モジュールペナルティ積算部43,43による比較の結果、積算値が上限値より大きいとき、リソース配分記憶部31,31を参照し、リソース配分が増加可能か否かを判定する。この判定は、例えば、自ノード装置N1が提供可能なリソース配分に比べ、リソース配分記憶部31内のリソース配分の合計が余裕分(例、10%分)よりも低ければ増加可能とすればよい。 In step ST205, the agent decision making units 44 1 and 44 2 refer to the resource allocation storage units 31 1 and 31 2 when the integrated value is larger than the upper limit value as a result of the comparison by the module penalty integrating units 43 1 and 43 2 . Then, it is determined whether the resource allocation can be increased. This determination may, for example, compared to provide available resources allocation node device N1 is, total margin (e.g., 10% content) of the resource allocation of the resource allocation storage unit 31 in one if possible increase is lower than Good.

ステップST206においては、エージェント意思決定部44,44は、ステップST206の判定の結果、増加可能な場合にはリソース配分を増加させるように更新するリソース配分更新メッセージをリソース配分部32,32に送出する。 In step ST 206, the agent decision section 44 1, 44 2, results, resource allocation unit 32 resource allocation update message to be updated to increase the resource allocation if possible increase 1 of the determination in step ST 206, 32 Send to 2 .

リソース配分部32,32は、自ノード装置N1,N2に配置されたエージェント部A,Bから当該エージェント部A,Bを識別するエージェント識別情報に関連付けたリソース配分を増加させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいてリソース配分記憶部31,31内のリソース配分を更新する。 The resource allocation units 32 1 and 32 2 are updated so as to increase the resource allocation associated with the agent identification information for identifying the agent units A and B from the agent units A and B arranged in the own node devices N1 and N2. When the resource allocation update message is received, the resource allocation in the resource allocation storage units 31 1 and 31 2 is updated based on the resource allocation update message.

ステップST207においては、エージェント意思決定部44,44は、ステップST206による判定の結果、増加が否の場合には問合せメッセージを別ノード問合せ部33,33に送出し、当該別ノード問合せ部33,33から応答された記憶内容に基づいて、別ノードのリソース配分を確認して移動先のノード装置N4を決定する。 In step ST207, the agent decision making sections 44 1 and 44 2 send an inquiry message to the separate node inquiry sections 33 1 and 33 2 if the increase is not determined as a result of the determination in step ST206, and the separate node inquiry Based on the storage contents returned from the units 33 1 and 33 2 , the resource allocation of another node is confirmed to determine the destination node device N 4.

このとき、エージェント意思決定部44,44は、例えば、別ノード問合せ部33,33から応答された別ノード装置N2〜N4、N1とN3〜N4のリソース配分記憶部31〜31、31と31〜31の記憶内容のうち、移動対象のエージェント部A,Bが必要とするリソース配分以上の空きリソース配分であって、当該必要とするリソース配分に最も近い空きリソース配分を示す記憶内容をもつ別ノード装置N4を移動先のノード装置N4として選択する。これは、可能な限り大きな空きリソースを残しておき、他のエージェント部の移動又は複製ができる可能性を高めるためである。なお、移動後のノード装置N1,…に1つのエージェント部A,…も存在しなくなった場合には、省電力のために自動的に電源を落とす。 At this time, the agent decision making units 44 1 and 44 2 , for example, the resource allocation storage units 31 2 to 31 of the different node devices N 2 to N 4 and N 1 and N 3 to N 4 that are responded from the different node inquiry units 33 1 and 33 2. 4, 31 1 and 31 3 to 31 4 of the storage contents, the agent unit a of the moving object, a B requires a free resource allocation or resource allocation to the closest available resource in the resource allocation to the required Another node device N4 having the storage content indicating the distribution is selected as the destination node device N4. This is to increase the possibility that other agent units can be moved or copied while leaving as much free resources as possible. When the node devices N1,... After moving no longer have one agent unit A,..., The power is automatically turned off to save power.

また、エージェント意思決定部44,44は、この移動を検討するとき、サービス提供モジュール部MA,MBの細分化をしすぎてしまっている場合には、細分化したサービス提供モジュール部MA,MBのリソース配分をまとめて、統合した上で移動を行なえるかを判定する。 Further, when the agent decision-making units 44 1 and 44 2 consider this movement, if the service providing module units MA and MB have been subdivided too much, the subdivided service providing module units MA and MA It is determined whether movement can be performed after the MB resource allocation is integrated and integrated.

もし、必要とする配分リソースに見合う空きリソースが一つのノード装置N2〜N4、N1とN3〜N4になく移動ができない場合は、エージェント意思決定部44,44は、複製を行なう。この場合、必要とするリソース配分に足りない分だけのリソースを複製先のエージェント部A,Bに配分することとし、複製先のエージェント部A,Bが必要とするリソース配分以上の(ノード装置内のエージェント部の全てが安定して動作するのに十分な余力を残して)できるだけ近い空きリソース量のノード装置を複製先ノード装置として選択する。なお、移動又は複製ができるノード装置がない場合、エージェント意思決定部44,44は、電源が落ちているノード装置(エージェント部がなく、空きリソース量が多いノード装置)を起動し、そのノード装置に移動をするようにすればよい。 If there is no free resource corresponding to the required distributed resource in one of the node devices N2 to N4, N1 and N3 to N4, the agent decision making units 44 1 and 44 2 perform replication. In this case, a resource that is insufficient for the required resource allocation is allocated to the copy-destination agent units A and B, which is greater than the resource allocation required by the copy-destination agent units A and B (within the node device). A node device having a free resource amount that is as close as possible is selected as a duplication destination node device (leaving sufficient capacity for all of the agent units to operate stably). If there is no node device that can be moved or copied, the agent decision-making units 44 1 and 44 2 start a node device that is turned off (a node device that has no agent unit and a large amount of free resources), and What is necessary is just to make it move to a node apparatus.

しかしながら、この例では、前述した通り、別ノード装置N4を選択したので、エージェント意思決定部44,44は、当該移動対象のエージェント部A,Bを識別するエージェント識別情報と当該選択したノード装置N4を示すノード識別情報とを指定したエージェント移動メッセージを作成し、このエージェント移動メッセージをリソース配分部32,32及びエージェント再配置部34,34に送出する。 However, in this example, as described above, since another node device N4 has been selected, the agent decision making units 44 1 and 44 2 have agent identification information for identifying the agent units A and B to be moved and the selected node. An agent movement message designating the node identification information indicating the device N4 is created, and this agent movement message is sent to the resource distribution units 32 1 and 32 2 and the agent relocation units 34 1 and 34 2 .

リソース配分部32,32は、自ノード装置N1に配置されたエージェント部A,Bから当該エージェント部A,Bを識別するエージェント識別情報と移動先のノード装置N4を示すノード識別情報とを指定して当該エージェント部A,Bを移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいてリソース配分記憶部31,31内の当該エージェント識別情報及びリソース配分を削除する。 The resource distribution units 32 1 and 32 2 receive agent identification information for identifying the agent units A and B from the agent units A and B arranged in the own node device N1, and node identification information indicating the destination node device N4. If specified to undergo agent movement messages for moving the agent unit a, a B, and deletes the agent identification information and resource allocation of the resource allocation storage unit 31 1, 31 in 2 based on the agent moving message.

エージェント再配置部34,34は、エージェント意思決定部44からエージェント移動メッセージを受けると、リソース配分部32,32により削除された後の自ノード装置N1,N2に関するノード識別情報、エージェント識別情報及びモジュール識別情報と、移動先のノード装置N4に関するノード識別情報、エージェント識別情報及びモジュール識別情報との両者を含む配置更新情報をサービスマネージャ装置20に送信し、当該エージェント部A,Bのエージェントプログラムを移動先のノード装置N4に送信すると共に、当該エージェントプログラムをメモリから削除する。 Upon receiving the agent movement message from the agent decision making unit 44 1 , the agent relocation units 34 1 and 34 2 receive node identification information on the own node devices N 1 and N 2 after being deleted by the resource distribution units 32 1 and 32 2 , Arrangement update information including both agent identification information and module identification information and node identification information, agent identification information and module identification information regarding the destination node device N4 is transmitted to the service manager device 20, and the agent units A and B And the agent program is deleted from the memory.

サービスマネージャ装置20においては、配置更新部26が、エージェント部A,Bを移動するように更新したノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をノード装置N1,N2から受けると、当該配置更新情報に基づいてサービス配置記憶部23を更新する。   In the service manager device 20, when the placement updating unit 26 receives from the node devices N1 and N2 the placement update information indicating the node identification information, the agent identification information, and the module identification information updated so as to move the agent units A and B. The service arrangement storage unit 23 is updated based on the arrangement update information.

ステップST208においては、ステップST204での比較の結果、積算値が上限値以下のとき、モジュールペナルティ積算部43,43は、計算した積算値と、ペナルティ上下限値記憶部41,41内の下限値とを比較し、比較結果を示すメッセージをエージェント意思決定部44,44に送出する。 In step ST208, when the integrated value is equal to or less than the upper limit value as a result of the comparison in step ST204, the module penalty integrating units 43 1 and 43 2 calculate the calculated integrated value and the penalty upper and lower limit value storing units 41 1 and 41 2. And a message indicating the comparison result is sent to the agent decision making units 44 1 and 44 2 .

ステップST209においては、エージェント意思決定部44,44は、モジュールペナルティ積算部43,43による比較の結果、積算値が下限値より過度に小さいとき、リソース配分記憶部31,31を参照し、リソース配分が減少可能か否かを判定する。 In step ST209, the agent decision section 44 1, 44 2, module penalty integration section 43 1, 43 2 result of the comparison by, when the integrated value is excessively smaller than the lower limit value, the resource allocation storage unit 31 1, 31 2 To determine whether the resource allocation can be reduced.

ステップST210においては、エージェント意思決定部44,44は、ステップST209の判定の結果、減少可能な場合にはリソース配分を減少させるように更新するリソース配分更新メッセージをリソース配分部32,32に送出する。 In step ST210, the agent decision section 44 1, 44 2, results, resource allocation unit 32 resource allocation update message for updating to reduce the resource allocation, if possible reduction 1 determined in step ST209, 32 Send to 2 .

リソース配分部32,32は、自ノード装置N1,N2に配置されたエージェント部A,Bから当該エージェント部A,Bを識別するエージェント識別情報に関連付けたリソース配分を減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいてリソース配分記憶部31,31内のリソース配分を更新する。 The resource allocation units 32 1 and 32 2 are updated so as to reduce the resource allocation associated with the agent identification information for identifying the agent units A and B from the agent units A and B arranged in the own node devices N1 and N2. When the resource allocation update message is received, the resource allocation in the resource allocation storage units 31 1 and 31 2 is updated based on the resource allocation update message.

ステップST211においては、エージェント意思決定部44,44は、ステップST209による判定の結果、減少が否の場合には問合せメッセージを別ノード問合せ部33,33に送出し、当該別ノード問合せ部33,33から応答された記憶内容に基づいて、別ノード装置N2〜N4,N1とN3〜N4に複製のエージェント部A,Bが存在するならば、エージェント削除メッセージをリソース配分部32,32及びエージェント再配置部34,34に送出する。 In step ST211, the agent decision making sections 44 1 and 44 2 send an inquiry message to the separate node inquiry sections 33 1 and 33 2 if the result of the determination in step ST209 is that the decrease is not possible, and the separate node inquiry Based on the storage contents returned from the units 33 1 and 33 2 , if duplicate agent units A and B exist in the different node apparatuses N 2 to N 4 and N 1 and N 3 to N 4, an agent deletion message is sent to the resource distribution unit 32. 1 and 32 2 and the agent relocation units 34 1 and 34 2 .

この例では、第1エージェント部Aの複製のエージェント部A’が第3ノード装置N3に存在する。よって、エージェント意思決定部44は、エージェント削除メッセージをリソース配分部32及びエージェント再配置部34に送出する。 In this example, a duplicate agent part A ′ of the first agent part A exists in the third node device N3. Therefore, the agent decision making unit 44 1 sends an agent deletion message to the resource distribution unit 32 1 and the agent relocation unit 34 1 .

リソース配分部32は、エージェント意思決定部44からエージェント部Aを識別するエージェント識別情報を指定して当該エージェントAを削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいてリソース配分記憶部31内の当該エージェント識別情報及びリソース配分を削除する。 When the resource allocation unit 32 1 receives an agent deletion message for specifying the agent identification information for identifying the agent unit A from the agent decision-making unit 44 1 and deleting the agent A, the resource allocation unit 32 1 stores the resource allocation based on the agent deletion message. remove the agent identification information and resource allocation section 31 1.

エージェント再配置部34は、エージェント意思決定部44から当該エージェント削除メッセージを受けると、リソース配分部32により削除された後の自ノード装置N1に関するノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をサービスマネージャ装置20に送信し、当該エージェント部A,…のエージェントプログラムをメモリから削除する。 Agent relocation unit 34 1, when the agent decision unit 44 1 receives the agent deletion message, node identification information, agent identification information and the module identification information about the node device N1 after being removed by the resource allocation unit 32 1 Is sent to the service manager device 20, and the agent program of the agent part A,... Is deleted from the memory.

サービスマネージャ装置20においては、配置更新部26が、エージェント部Aを削除するように更新したノード識別情報、エージェント識別情報及びモジュール識別情報を示す配置更新情報をノード装置N1から受けると、当該配置更新情報に基づいてサービス配置記憶部23を更新する。   In the service manager device 20, when the placement update unit 26 receives from the node device N1 the placement update information indicating the node identification information, the agent identification information, and the module identification information updated so as to delete the agent unit A, the placement update unit 26 The service arrangement storage unit 23 is updated based on the information.

次に、エージェント意思決定部44,44は、ステップST208で、ペナルティ積算したモジュールペナルティが下限値より大きい場合と、ステップST206,ST207,ST210,ST211の後には、ある一定時間が経過しているかどうかを確認する。一定時間が経っている場合はモジュールペナルティ値の積算値をクリア(ST212)し、ステップST201に戻る。一定時間が経っていない場合は、そのままステップST201に戻る。 Next, the agent decision-making units 44 1 and 44 2 determine that a certain period of time has elapsed after step ST208 when the penalty integrated module penalty is greater than the lower limit value and after steps ST206, ST207, ST210, ST211. Check if it is. If the predetermined time has passed, the integrated value of the module penalty value is cleared (ST212), and the process returns to step ST201. If the predetermined time has not passed, the process returns to step ST201 as it is.

上述したように本実施形態によれば、サービス要求の送信からサービス応答の受信までの処理において、サービス評価部24により計測された評価値と、SLA記憶部21の評価値とに基づいて、サービスペナルティ値を計算し、モジュール評価部42,42で計測された評価値と、サービスマネージャ装置20から受けたサービスペナルティ値及び評価値とに基づいて、モジュールペナルティ値及びその積算値を計算し、計算した積算値と、ペナルティ上下限値記憶部41,41内の上限値及び下限値とを比較し、比較結果に応じてリソース配分を増加若しくは変更し、又はエージェント部A,…を削除、移動若しくは複製する構成により、サービス毎に異なる要求や、同一サービスの利用量の変化に対し、システム構成やリソース配分を設計する労力を低減させることができる。 As described above, according to the present embodiment, in the processing from the transmission of the service request to the reception of the service response, the service is based on the evaluation value measured by the service evaluation unit 24 and the evaluation value of the SLA storage unit 21. the penalty value is calculated, and the module evaluation unit 42 1, 42 evaluation value measured by 2, based on the service penalty value and the evaluation value received from the service manager unit 20 calculates the module penalty value and the integrated value thereof The calculated integrated value is compared with the upper limit value and lower limit value in the penalty upper and lower limit storage units 41 1 and 41 2 , and the resource allocation is increased or changed according to the comparison result, or the agent units A,. Depending on the configuration to delete, move, or copy, the system configuration and It is possible to reduce the effort to design over scan allocation.

補足すると、本実施形態によれば、新しいサービスに対してもシステム構成やリソース配分の設計をすることなく、そのサービスに要求されるSLAの評価値を設定するだけで、各エージェント部A〜Dが自律的にリソース配分を増加若しくは変更するか、又はエージェント部A,…を削除、移動若しくは複製するかを判断する構成により、SLAの評価値を満たすシステム構成やリソース配分を自律的に設計し、システムを自律的に構成する。   Supplementally, according to the present embodiment, each agent unit A to D can be set by setting an SLA evaluation value required for a new service without designing a system configuration or resource allocation. Autonomously design a system configuration and resource allocation satisfying the SLA evaluation value by determining whether to increase or change the resource allocation autonomously, or to delete, move or duplicate the agent part A,. , Configure the system autonomously.

また時とともに変化するサービスの利用量に対しては、各エージェント部A〜Dが自律的にSLAの評価値を満たしているかを評価し、満たしていない場合は、システム構成やリソース配分を自律的に再設計し、システム構成やリソース配分を自律的に変化させる。   Also, for service usage that changes over time, each agent unit A to D autonomously evaluates whether or not the SLA evaluation value is satisfied. If not, the system configuration and resource allocation are autonomous. Redesigned to autonomously change system configuration and resource allocation.

これらによって、新しいサービスのためのサービスに特化したシステムの設計・構築の手間を無くし、さらには、サービスの要求の変化に応じた再設計・再構成の手間無く、計算機資源を効率的に使用することができる。このような本実施形態は、例えばクラウドコンピューティングにおけるプライベートクラウド又はパブリッククラウドのシステムを構成する場合に適用することもできる。   As a result, there is no need to design and build a service-specific system for new services, and more efficient use of computer resources without the need for redesign and reconfiguration in response to changes in service requirements. can do. Such an embodiment can also be applied when configuring a private cloud or public cloud system in cloud computing, for example.

また、本実施形態は、各エージェント部A〜Dが自律的にリソース配分を増加若しくは変更するか、又はエージェント部A,…を削除、移動若しくは複製するかを判断する構成により、例えば特許文献3に記載のマスターエージェントのような特定の機能部への負荷の集中といった事態を防ぐことができる。   Further, in the present embodiment, each of the agent units A to D autonomously increases or changes the resource allocation, or deletes, moves, or duplicates the agent units A,. It is possible to prevent a situation such as concentration of load on a specific functional unit such as the master agent described in 1.

また、本実施形態は、以下の(i)〜(iii)等に示すように変形してもよい。   Further, the present embodiment may be modified as shown in the following (i) to (iii).

(i)移動又は複製のいずれを行なうかの選択方法には、さまざまなバリエーションが考えられ、SLAの評価値によっても異なる。SLAの評価値の種類(SLAの指標)がレスポンスタイムの場合、例えば、モジュールペナルティ値の積算値が上限値を上回った場合には移動を優先的に行ない、移動しきれない大きさのリソース配分(例、40%)が必要な場合のみ、複製を行なう(例、20%ずつ2つのエージェント部A,A’とする)。   (I) There are various variations in the method for selecting whether to perform migration or duplication, and the method varies depending on the evaluation value of the SLA. When the type of SLA evaluation value (SLA index) is response time, for example, when the integrated value of the module penalty value exceeds the upper limit value, the movement is preferentially performed, and the resource allocation that cannot be moved is allocated. Duplication is performed only when (for example, 40%) is required (for example, two agent parts A and A 'are each 20%).

(ii)SLAの評価値の種類が稼働率の場合、ステップST204〜ST210において、モジュールペナルティ値の積算値がある一定時間内に上限値を上回った場合、多重化をして可用性を上げるために、そのエージェント部A,…の複製をするエージェント複製メッセージをエージェント再配置部34に送って、エージェント部A,…を複製する。モジュールペナルティ値の積算値がある一定時間内に下限値を下回った場合、そのエージェント部A,…を削除するモジュール削除メッセージをエージェント再配置部34に送り、多重化されたエージェント部A,…を削除する。 (Ii) When the type of SLA evaluation value is an operation rate, in steps ST204 to ST210, if the integrated value of the module penalty value exceeds the upper limit within a certain time, multiplexing is performed to increase availability. , the agent unit a, ... a a to the agent replication messages replicate sent to the agent relocation unit 34 1, the replication agent unit a, ... a. When the lower limit value within a certain period of time the accumulated value of the module penalty value, the agent unit A, sends the module deletion message for deleting a ... to the agent relocation unit 34 1, the multiplexed agent unit A, ... Is deleted.

(iii)可用性の観点からSLAの評価値であるレスポンスタイムを年間停止時間などに置き換え、同様のアプローチを行なう。但し、可用性を満たす複製の最低数を記憶しておき、エージェント部A,…の削除の際には、サービスを構成するサービス提供モジュール部MA,…がこの最低数以下にならないようにする。   (Iii) From the viewpoint of availability, the response time, which is the evaluation value of the SLA, is replaced with an annual stop time or the like, and a similar approach is performed. However, the minimum number of replicas satisfying availability is stored, and when the agent parts A,... Are deleted, the service providing module parts MA,.

なお、上記の各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。   Note that the methods described in the above embodiments are, as programs that can be executed by a computer, magnetic disks (floppy (registered trademark) disks, hard disks, etc.), optical disks (CD-ROMs, DVDs, etc.), magneto-optical disks. (MO), stored in a storage medium such as a semiconductor memory, and distributed.

また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。   In addition, as long as the storage medium can store a program and can be read by a computer, the storage format may be any form.

また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。   In addition, an OS (operating system) running on a computer based on an instruction of a program installed in the computer from a storage medium, MW (middleware) such as database management software, network software, and the like realize the above-described embodiment. A part of each process may be executed.

さらに、各実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。   Furthermore, the storage medium in each embodiment is not limited to a medium independent of a computer, but also includes a storage medium in which a program transmitted via a LAN, the Internet, or the like is downloaded and stored or temporarily stored.

また、記憶媒体は1つに限らず、複数の媒体から上記の各実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。   Further, the number of storage media is not limited to one, and the case where the processing in each of the above embodiments is executed from a plurality of media is also included in the storage media in the present invention, and the media configuration may be any configuration.

なお、各実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記の各実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。   Note that the computer in each embodiment executes each process in each of the above embodiments based on a program stored in a storage medium. Any configuration of the system or the like may be used.

また、各実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。   In addition, the computer in each embodiment is not limited to a personal computer, and includes an arithmetic processing device, a microcomputer, and the like included in an information processing device, and is a generic term for devices and devices that can realize the functions of the present invention by a program. Yes.

なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。   In addition, although some embodiment of this invention was described, these embodiment is shown as an example and is not intending limiting the range of invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.

10…ゲートウェイ装置、20…サービスマネージャ装置、21…SLA記憶部、22…サービス処理フロー記憶部、23…サービス配置記憶部、24…サービス評価部、25…サービスペナルティ計算部、26…配置更新部、30〜30…エージェントマネージャ部、31〜31…リソース配分記憶部、32〜32…リソース配分部、33〜33…別ノード問合せ部、34〜34…エージェント再配置部、41〜41…ペナルティ上下限値記憶部、42〜42…モジュール評価部、43〜43…モジュールペナルティ積算部、44〜44…エージェント意思決定部、N1〜N4…ノード装置、A〜D…エージェント部、MA〜MD…サービス提供モジュール部。 DESCRIPTION OF SYMBOLS 10 ... Gateway apparatus, 20 ... Service manager apparatus, 21 ... SLA storage part, 22 ... Service processing flow storage part, 23 ... Service arrangement | positioning storage part, 24 ... Service evaluation part, 25 ... Service penalty calculation part, 26 ... Arrangement update part , 30 1 to 30 4 ... agent manager section, 31 1 to 31 4 ... resource allocation storage section, 32 1 to 32 4 ... resource allocation section, 33 1 to 33 4 ... separate node inquiry section, 34 1 to 34 4 ... agent Rearrangement unit, 41 1 to 41 4 ... Penalty upper / lower limit value storage unit, 42 1 to 42 4 ... Module evaluation unit, 43 1 to 43 4 ... Module penalty accumulation unit, 44 1 to 44 4 ... Agent decision making unit, N1 ~ N4 ... Node device, A ~ D ... Agent part, MA ~ MD ... Service providing module part.

Claims (6)

サービスを識別するサービス識別情報を含むサービス要求を送信して前記サービス要求に対するサービス応答を受信するユーザ端末に通信可能なゲートウェイ装置に接続されたサービスマネージャ装置と、前記サービスマネージャ装置に通信可能な複数のノード装置とを備えたサービス提供システムであって、
前記サービスマネージャ装置は、
前記サービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス応答との間で計測可能な評価値とを関連付けて予め記憶するサービス評価値記憶手段と、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けて記憶するモジュール識別情報記憶手段と、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて記憶する配置記憶手段と、
前記ゲートウェイ装置からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信するサービス要求送信手段と、
前記サービス要求送信手段により送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測する第1の評価値計測手段と、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算するペナルティ計算手段と、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信するペナルティ送信手段と、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新する配置更新手段と、
を備え、
前記各ノード装置は、
自ノード装置に前記エージェント手段が配置される場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なCPUを含むプログラム実行手段と、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けて記憶するリソース配分記憶手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新するリソース配分更新手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第1のリソース配分削除手段と、
前記エージェント削除メッセージを受けると、前記第1のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除するプログラム削除手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第2のリソース配分削除手段と、
前記エージェント移動メッセージを受けると、前記第2のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除するプログラム移動手段と、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答する別ノード問合せ手段と、
を備え、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて記憶する上下限値記憶手段と、
いずれかの前記サービス提供モジュール手段と、
このサービス提供モジュール手段に対して前記評価値を計測する第2の評価値計測手段と、
前記第2の評価値計測手段により計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較する比較手段と、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定するリソース増加判定手段と、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段と、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを前記第2のリソース配分削除手段及び前記プログラム移動手段に送出する移動メッセージ送出手段と、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定するリソース減少判定手段と、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段と、
前記リソース減少判定手段による判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント削除メッセージを前記第1のリソース配分削除手段及び前記プログラム削除手段に送出する削除メッセージ送出手段と、
を備えたことを特徴とするサービス提供システム。
A service manager device connected to a gateway device capable of communicating with a user terminal that transmits a service request including service identification information for identifying a service and receives a service response to the service request, and a plurality of devices capable of communicating with the service manager device A service providing system comprising a plurality of node devices,
The service manager device
A service evaluation value storage means for storing the service identification information in advance in association with an evaluation value that can be measured between the service request including the service identification information and the service response;
Module identification information storage means for storing the service identification information in association with module identification information for individually identifying a plurality of service providing module means for individually executing each stage of the service identified by the service identification information;
Each node identification information for identifying each node device, agent identification information for identifying an agent unit arranged in each node device, and the module identification information for identifying the service providing module unit included in the agent unit An arrangement storage means for storing
When a service request is received from the gateway device, module identification information is read from the module identification information storage unit based on service identification information in the service request, and then node identification is performed from the arrangement storage unit based on the module identification information. Service request transmitting means for reading information and transmitting the service request to the node device identified by the node identification information based on the node identification information;
When a service response to the service request transmitted by the service request transmitting unit is received from any node device, the service response is transmitted to the gateway device, and the evaluation value is set between the service request and the service response. First evaluation value measuring means for measuring;
When the measured evaluation value does not satisfy the evaluation value in the service evaluation value storage means, a positive service penalty value is calculated, and the measured evaluation value is stored in the service evaluation value storage means. A penalty calculation means for calculating a negative service penalty value when the evaluation value is excessively satisfied,
Penalty transmitting means for transmitting the calculated service penalty value and the measured evaluation value to the node device that is the transmission destination of the service request and the node device that is the transmission source of the service response;
When the node update information indicating the node identification information, the agent identification information, and the module identification information updated so as to delete, move, or duplicate the agent means is received from any of the node devices, based on the arrangement update information An arrangement updating means for updating the arrangement storage means;
With
Each of the node devices
Program execution including a memory capable of storing an agent program for causing the own node apparatus to function as the agent means, and a CPU capable of executing the agent program, used when the agent means is arranged in the own node apparatus Means,
Resource allocation storage means for associating and storing agent identification information for identifying agent means arranged in the own node device, and resource allocation indicating the resource allocation of the own node device;
When receiving a resource allocation update message for updating to increase or decrease the resource allocation associated with the agent identification information for identifying the agent means from the agent means arranged in the own node device, based on the resource allocation update message Resource allocation updating means for updating resource allocation in the resource allocation storage means;
When an agent deletion message for deleting the agent means by specifying agent identification information for identifying the agent means is received from the agent means arranged in the local node device, the resource allocation storage means based on the agent deletion message First resource allocation deletion means for deleting the agent identification information and resource allocation of
Upon receipt of the agent deletion message, the service manager apparatus sends the node identification information, the agent identification information, and the arrangement update information indicating the module identification information related to the own node apparatus after being deleted by the first resource allocation deletion means. And a program deleting means for deleting the agent program of the agent means from the memory,
When receiving an agent movement message for moving the agent means by specifying agent identification information for identifying the agent means and node identification information indicating the destination node apparatus from the agent means arranged in the own node device, Second resource allocation deletion means for deleting the agent identification information and resource allocation in the resource allocation storage means based on an agent movement message;
Upon receipt of the agent movement message, the node identification information, the agent identification information and the module identification information relating to the own node device after being deleted by the second resource allocation deletion means, and the movement destination node device The arrangement update information including both the node identification information, the agent identification information, and the module identification information is transmitted to the service manager apparatus, and the agent program of the agent means is transmitted to the destination node apparatus, and Program moving means for deleting the agent program from the memory;
When an inquiry message inquiring about resource allocation of another node device other than the own node device is received from the agent means arranged in the own node device, the storage contents of the resource allocation storage unit of the another node device are stored in the another node device. Inquiring, and another node inquiry means for responding to the agent means the storage contents returned from the another node device,
With
The agent means includes
The service identification information, the module identification information, an upper limit value indicating an upper limit of an integrated value obtained by integrating the module penalty values assigned to the service providing module means, and a lower limit indicating the lower limit of the integrated value Upper and lower limit value storage means for storing values in association with each other;
Any of the service providing module means;
Second evaluation value measuring means for measuring the evaluation value for the service providing module means;
The module penalty value is calculated based on the evaluation value measured by the second evaluation value measuring unit, the service penalty value and the evaluation value received from the service manager device, and the integration of the module penalty value is performed. A comparison means for calculating a value and comparing the integrated value with the upper limit value and the lower limit value in the upper and lower limit storage means;
As a result of the comparison, when the integrated value is larger than the upper limit value, the resource associated with the agent identification information for identifying the agent unit is referred to by referring to the resource distribution storage unit in the own node device in which the agent unit is arranged Resource increase determination means for determining whether the distribution can be increased;
If the result of this determination is that it can be increased, means for sending a resource allocation update message to update the resource allocation to increase the resource allocation;
If the result of the determination is negative, the inquiry message is sent to the different node inquiry means, and the agent movement message is sent to the second resource allocation deletion means based on the stored contents returned from the different node inquiry means. And a moving message sending means for sending to the program moving means;
As a result of the comparison, when the integrated value is smaller than the lower limit value, the resource associated with the agent identification information for identifying the agent unit with reference to the resource distribution storage unit in the own node device in which the agent unit is arranged Resource reduction determination means for determining whether the allocation can be reduced;
If the result of this determination is that the resource allocation can be decreased, the resource allocation update message for updating the resource allocation to be decreased is sent to the resource allocation update unit;
If the result of determination by the resource reduction determination means is negative, the inquiry message is sent to the other node inquiry means, and the agent deletion message is sent to the first node based on the stored contents returned from the other node inquiry means. Resource allocation deleting means and a deletion message sending means for sending to the program deleting means,
A service providing system characterized by comprising:
請求項1に記載のサービス提供システムにおいて、
前記移動メッセージ送出手段は、
前記別ノード問合せ手段から応答された前記別ノード装置のリソース配分記憶手段の記憶内容のうち、移動対象のエージェント手段が必要とするリソース配分以上の空きリソース配分であって、当該必要とするリソース配分に最も近い前記空きリソース配分を示す記憶内容をもつ別ノード装置を移動先のノード装置として選択する手段と、
当該移動対象のエージェント手段を識別するエージェント識別情報と当該選択したノード装置を示すノード識別情報とを指定した前記エージェント移動メッセージを作成し、このエージェント移動メッセージを前記第2のリソース配分削除手段及び前記プログラム移動手段に送出する手段と、
を備えたことを特徴とするサービス提供システム。
The service providing system according to claim 1,
The mobile message sending means includes:
Out of the stored contents of the resource allocation storage means of the other node device responded from the different node inquiry means, the resource allocation is a free resource allocation greater than the resource allocation required by the agent unit to be moved, and the required resource allocation Means for selecting another node device having a storage content indicating the free resource allocation closest to the node device as the movement destination;
The agent movement message specifying the agent identification information for identifying the agent means to be moved and the node identification information indicating the selected node device is created, and the agent movement message is designated as the second resource allocation deletion means and the Means for sending to the program moving means;
A service providing system characterized by comprising:
サービスを識別するサービス識別情報を含むサービス要求を送信して前記サービス要求に対するサービス応答を受信するユーザ端末に通信可能なゲートウェイ装置と、前記サービス要求を受けるとサービスの各段階を実行して実行結果又は前記サービス応答を送信する複数のノード装置との間の通信に介在するサービスマネージャ装置であって、
前記サービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス応答との間で計測可能な評価値とを関連付けて予め記憶するサービス評価値記憶手段と、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けて記憶するモジュール識別情報記憶手段と、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて記憶する配置記憶手段と、
前記ゲートウェイ装置からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信するサービス要求送信手段と、
前記サービス要求送信手段により送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測する第1の評価値計測手段と、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算するペナルティ計算手段と、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信するペナルティ送信手段と、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新する配置更新手段と、
を備え、
前記各ノード装置は、
自ノード装置に前記エージェント手段が配置される場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なCPUを含み、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けてリソース配分記憶手段に記憶し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除すると共に、当該削除した後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除すると共に、当該削除した後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除し、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答し、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて上下限値記憶手段に記憶し、
いずれかの前記サービス提供モジュール手段を有して当該サービス提供モジュール手段に対して前記評価値を計測し、
当該計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較し、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定し、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを送出し、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを送出し、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定し、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを送出し、
前記減少可能か否かの判定の結果、否の場合には前記問合せメッセージを送出し、当該送出に対して応答された記憶内容に基づいて前記エージェント削除メッセージを送出することを特徴とするサービスマネージャ装置。
A gateway device capable of communicating with a user terminal that transmits a service request including service identification information for identifying a service and receives a service response to the service request, and a result of executing each stage of the service upon receiving the service request Or a service manager device intervening in communication with a plurality of node devices that transmit the service response,
A service evaluation value storage means for storing the service identification information in advance in association with an evaluation value that can be measured between the service request including the service identification information and the service response;
Module identification information storage means for storing the service identification information in association with module identification information for individually identifying a plurality of service providing module means for individually executing each stage of the service identified by the service identification information;
Each node identification information for identifying each node device, agent identification information for identifying an agent unit arranged in each node device, and the module identification information for identifying the service providing module unit included in the agent unit An arrangement storage means for storing
When a service request is received from the gateway device, module identification information is read from the module identification information storage unit based on service identification information in the service request, and then node identification is performed from the arrangement storage unit based on the module identification information. Service request transmitting means for reading information and transmitting the service request to the node device identified by the node identification information based on the node identification information;
When a service response to the service request transmitted by the service request transmitting unit is received from any node device, the service response is transmitted to the gateway device, and the evaluation value is set between the service request and the service response. First evaluation value measuring means for measuring;
When the measured evaluation value does not satisfy the evaluation value in the service evaluation value storage means, a positive service penalty value is calculated, and the measured evaluation value is stored in the service evaluation value storage means. A penalty calculation means for calculating a negative service penalty value when the evaluation value is excessively satisfied,
Penalty transmitting means for transmitting the calculated service penalty value and the measured evaluation value to the node device that is the transmission destination of the service request and the node device that is the transmission source of the service response;
When the node update information indicating the node identification information, the agent identification information, and the module identification information updated so as to delete, move, or duplicate the agent means is received from any of the node devices, based on the arrangement update information An arrangement updating means for updating the arrangement storage means;
With
Each of the node devices
Used when the agent means is arranged in the own node device, including a memory capable of storing an agent program for causing the own node device to function also as the agent means, and a CPU capable of executing the agent program,
Storing agent identification information for identifying agent means arranged in the own node device and resource allocation indicating resource allocation of the own node device in a resource allocation storage unit in association with each other;
When receiving a resource allocation update message for updating to increase or decrease the resource allocation associated with the agent identification information for identifying the agent means from the agent means arranged in the own node device, based on the resource allocation update message Updating the resource allocation in the resource allocation storage means;
When an agent deletion message for deleting the agent means by specifying agent identification information for identifying the agent means is received from the agent means arranged in the local node device, the resource allocation storage means based on the agent deletion message Delete the agent identification information and resource allocation, and transmit the node identification information related to the node device after the deletion, the arrangement identification information indicating the agent identification information and the module identification information to the service manager device, Deleting the agent program of the agent means from the memory;
When receiving an agent movement message for moving the agent means by specifying agent identification information for identifying the agent means and node identification information indicating the destination node apparatus from the agent means arranged in the own node device, Delete the agent identification information and resource allocation in the resource allocation storage means based on the agent movement message, and the node identification information, the agent identification information and the module identification information regarding the own node device after the deletion, Arrangement update information including both the node identification information, the agent identification information, and the module identification information related to the destination node device is transmitted to the service manager device, and the agent program of the agent means is transmitted. And transmits to the node device of the destination, and deletes the agent program from said memory,
When an inquiry message inquiring about resource allocation of another node device other than the own node device is received from the agent means arranged in the own node device, the storage contents of the resource allocation storage unit of the another node device are stored in the another node device. Inquiring and responding to the agent means with the stored contents returned from the other node device,
The agent means includes
The service identification information, the module identification information, an upper limit value indicating an upper limit of an integrated value obtained by integrating the module penalty values assigned to the service providing module means, and a lower limit indicating the lower limit of the integrated value Store the value in the upper and lower limit storage means in association with the value,
Having any one of the service providing module means, measuring the evaluation value for the service providing module means,
Based on the measured evaluation value and the service penalty value and evaluation value received from the service manager device, the module penalty value is calculated, and the integrated value of the module penalty value is calculated. And the upper limit value and the lower limit value in the upper and lower limit storage means,
As a result of the comparison, when the integrated value is larger than the upper limit value, the resource associated with the agent identification information for identifying the agent unit is referred to by referring to the resource distribution storage unit in the own node device in which the agent unit is arranged Determine if the allocation can be increased,
As a result of this determination, if the resource allocation can be increased, a resource allocation update message for updating to increase the resource allocation is sent.
As a result of the determination, in the case of no, the inquiry message is sent to the other node inquiry means, and the agent movement message is sent based on the stored contents returned from the other node inquiry means,
As a result of the comparison, when the integrated value is smaller than the lower limit value, the resource associated with the agent identification information for identifying the agent unit with reference to the resource distribution storage unit in the own node device in which the agent unit is arranged Determine whether the allocation can be reduced,
As a result of this determination, if the resource allocation can be decreased, a resource allocation update message for updating the resource allocation to be decreased is transmitted,
As a result of the determination as to whether or not the decrement is possible, if not, the inquiry message is transmitted, and the agent deletion message is transmitted based on the stored contents responded to the transmission. apparatus.
サービスを識別するサービス識別情報を含むサービス要求を送信して前記サービス要求に対するサービス応答を受信するユーザ端末に通信可能なゲートウェイ装置と、前記サービス要求を受けるとサービスの各段階を実行して実行結果又は前記サービス応答を送信する複数のノード装置との間の通信に介在してサービス評価値記憶手段、モジュール識別情報記憶手段及び配置記憶手段を備えたサービスマネージャ装置に用いられるサービスマネージャ装置用プログラムであって、
前記サービスマネージャ装置を、
前記サービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス応答との間で計測可能な評価値とを関連付けて予め前記サービス評価値記憶手段に書込む手段、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けて前記モジュール識別情報記憶手段に書込む手段、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて前記配置記憶手段に書込む手段、
前記ゲートウェイ装置からサービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信するサービス要求送信手段、
前記サービス要求送信手段により送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測する第1の評価値計測手段、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算するペナルティ計算手段、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信するペナルティ送信手段、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新する配置更新手段、
として機能させ、
前記各ノード装置は、
自ノード装置に前記エージェント手段が配置された場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なCPUを含み、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けてリソース配分記憶手段に記憶し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除すると共に、当該削除した後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除し、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除すると共に、当該削除した後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除し、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答し、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて上下限値記憶手段に記憶し、
いずれかの前記サービス提供モジュール手段を有して当該サービス提供モジュール手段に対して前記評価値を計測し、
当該計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較し、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定し、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを送出し、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを送出し、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定し、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを送出し、
前記減少可能か否かの判定の結果、否の場合には前記問合せメッセージを送出し、当該送出に対して応答された記憶内容に基づいて前記エージェント削除メッセージを送出するサービスマネージャ装置用プログラム。
A gateway device capable of communicating with a user terminal that transmits a service request including service identification information for identifying a service and receives a service response to the service request, and a result of executing each stage of the service upon receiving the service request Or a service manager device program used in a service manager device provided with service evaluation value storage means, module identification information storage means, and arrangement storage means through communication with a plurality of node devices that transmit the service response. There,
The service manager device;
Means for associating the service identification information with an evaluation value measurable between the service request including the service identification information and the service response in advance in the service evaluation value storage means;
The service identification information and the module identification information for individually identifying a plurality of service providing module means for individually executing each stage of the service identified by the service identification information are associated and written to the module identification information storage means means,
Each node identification information for identifying each node device, agent identification information for identifying an agent unit arranged in each node device, and the module identification information for identifying the service providing module unit included in the agent unit Means for writing to the arrangement storage means in association with each other,
When a service request is received from the gateway device, module identification information is read from the module identification information storage unit based on service identification information in the service request, and then node identification is performed from the arrangement storage unit based on the module identification information. Service request transmission means for reading information and transmitting the service request to the node device identified by the node identification information based on the node identification information;
When a service response to the service request transmitted by the service request transmitting unit is received from any node device, the service response is transmitted to the gateway device, and the evaluation value is set between the service request and the service response. First evaluation value measuring means for measuring,
When the measured evaluation value does not satisfy the evaluation value in the service evaluation value storage means, a positive service penalty value is calculated, and the measured evaluation value is stored in the service evaluation value storage means. Penalty calculation means for calculating a negative service penalty value when the evaluation value is excessively satisfied,
Penalty transmission means for transmitting the calculated service penalty value and the measured evaluation value to the node device that is the transmission destination of the service request and the node device that is the transmission source of the service response,
When the node update information indicating the node identification information, the agent identification information, and the module identification information updated so as to delete, move, or duplicate the agent means is received from any of the node devices, based on the arrangement update information An arrangement updating means for updating the arrangement storage means,
Function as
Each of the node devices
Used when the agent means is arranged in the own node device, including a memory capable of storing an agent program for causing the own node device to function as the agent means, and a CPU capable of executing the agent program,
Storing agent identification information for identifying agent means arranged in the own node device and resource allocation indicating resource allocation of the own node device in a resource allocation storage unit in association with each other;
When receiving a resource allocation update message for updating to increase or decrease the resource allocation associated with the agent identification information for identifying the agent means from the agent means arranged in the own node device, based on the resource allocation update message Updating the resource allocation in the resource allocation storage means;
When an agent deletion message for deleting the agent means by specifying agent identification information for identifying the agent means is received from the agent means arranged in the local node device, the resource allocation storage means based on the agent deletion message Delete the agent identification information and resource allocation, and transmit the node identification information related to the node device after the deletion, the arrangement identification information indicating the agent identification information and the module identification information to the service manager device, Deleting the agent program of the agent means from the memory;
When receiving an agent movement message for moving the agent means by specifying agent identification information for identifying the agent means and node identification information indicating the destination node apparatus from the agent means arranged in the own node device, Delete the agent identification information and resource allocation in the resource allocation storage means based on the agent movement message, and the node identification information, the agent identification information and the module identification information regarding the own node device after the deletion, Arrangement update information including both the node identification information, the agent identification information, and the module identification information related to the destination node device is transmitted to the service manager device, and the agent program of the agent means is transmitted. And transmits to the node device of the destination, and deletes the agent program from said memory,
When an inquiry message inquiring about resource allocation of another node device other than the own node device is received from the agent means arranged in the own node device, the storage contents of the resource allocation storage unit of the another node device are stored in the another node device. Inquiring and responding to the agent means with the stored contents returned from the other node device,
The agent means includes
The service identification information, the module identification information, an upper limit value indicating an upper limit of an integrated value obtained by integrating the module penalty values assigned to the service providing module means, and a lower limit indicating the lower limit of the integrated value Store the value in the upper and lower limit storage means in association with the value,
Having any one of the service providing module means, measuring the evaluation value for the service providing module means,
Based on the measured evaluation value and the service penalty value and evaluation value received from the service manager device, the module penalty value is calculated, and the integrated value of the module penalty value is calculated. And the upper limit value and the lower limit value in the upper and lower limit storage means,
As a result of the comparison, when the integrated value is larger than the upper limit value, the resource associated with the agent identification information for identifying the agent unit is referred to by referring to the resource distribution storage unit in the own node device in which the agent unit is arranged Determine if the allocation can be increased,
As a result of this determination, if the resource allocation can be increased, a resource allocation update message for updating to increase the resource allocation is sent.
As a result of the determination, in the case of no, the inquiry message is sent to the other node inquiry means, and the agent movement message is sent based on the stored contents returned from the other node inquiry means,
As a result of the comparison, when the integrated value is smaller than the lower limit value, the resource associated with the agent identification information for identifying the agent unit with reference to the resource distribution storage unit in the own node device in which the agent unit is arranged Determine whether the allocation can be reduced,
As a result of this determination, if the resource allocation can be decreased, a resource allocation update message for updating the resource allocation to be decreased is transmitted,
As a result of the determination as to whether or not the decrement is possible, if not, the service manager device program sends out the inquiry message and sends out the agent deletion message based on the stored contents responded to the sending.
サービスを識別するサービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス要求に対するサービス応答との間で計測可能な評価値とを関連付けて予めサービス評価値記憶手段に記憶し、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けてモジュール識別情報記憶手段に記憶し、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて配置記憶手段に記憶し、
前記サービス要求を送信して前記サービス応答を受信するユーザ端末に通信可能なゲートウェイ装置から前記サービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信し、
当該送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測し、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算し、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信し、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新するサービスマネージャ装置に通信可能な各々のノード装置であって、
自ノード装置に前記エージェント手段が配置された場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なCPUを含むプログラム実行手段と、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けて記憶するリソース配分記憶手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新するリソース配分更新手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第1のリソース配分削除手段、
前記エージェント削除メッセージを受けると、前記第1のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除するプログラム削除手段と、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第2のリソース配分削除手段、
前記エージェント移動メッセージを受けると、前記第2のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除するプログラム移動手段と、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答する別ノード問合せ手段と、
を備え、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて記憶する上下限値記憶手段と、
いずれかの前記サービス提供モジュール手段と、
このサービス提供モジュール手段に対して前記評価値を計測する第2の評価値計測手段と、
前記第2の評価値計測手段により計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較する比較手段と、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定するリソース増加判定手段と、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段と、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを前記第2のリソース配分削除手段及び前記プログラム移動手段に送出する移動メッセージ送出手段と、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定するリソース減少判定手段と、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段と、
前記リソース減少判定手段による判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント削除メッセージを前記第1のリソース配分削除手段及び前記プログラム削除手段に送出する削除メッセージ送出手段と、
を備えたことを特徴とするノード装置。
Service identification information for identifying a service, and a service request including the service identification information and an evaluation value measurable between a service response to the service request are associated with each other and stored in a service evaluation value storage unit in advance.
Storing the service identification information and module identification information for individually identifying a plurality of service providing module means for individually executing each stage of the service identified by the service identification information in a module identification information storage means;
Each node identification information for identifying each node device, agent identification information for identifying an agent unit arranged in each node device, and the module identification information for identifying the service providing module unit included in the agent unit Is stored in the arrangement storage means,
When the service request is received from a gateway device that can communicate with a user terminal that transmits the service request and receives the service response, the module identification information is stored in the module identification information storage unit based on the service identification information in the service request. Is read out from the placement storage means based on the module identification information, based on the node identification information, the service request is transmitted to the node device identified by the node identification information,
When a service response to the transmitted service request is received from any of the node devices, the service response is transmitted to the gateway device, and the evaluation value is measured between the service request and the service response,
When the measured evaluation value does not satisfy the evaluation value in the service evaluation value storage means, a positive service penalty value is calculated, and the measured evaluation value is stored in the service evaluation value storage means. Calculate a negative service penalty value if the rating is overfilled,
The calculated service penalty value and the measured evaluation value are transmitted to the node device that is the transmission destination of the service request and the node device that is the transmission source of the service response,
When the node update information indicating the node identification information, the agent identification information, and the module identification information updated so as to delete, move, or duplicate the agent means is received from any of the node devices, based on the arrangement update information Each node device capable of communicating with a service manager device that updates the arrangement storage means,
Program execution including a memory capable of storing an agent program for causing the own node apparatus to function as the agent means, and a CPU capable of executing the agent program, used when the agent means is arranged in the own node apparatus Means,
Resource allocation storage means for associating and storing agent identification information for identifying agent means arranged in the own node device, and resource allocation indicating the resource allocation of the own node device;
When receiving a resource allocation update message for updating to increase or decrease the resource allocation associated with the agent identification information for identifying the agent means from the agent means arranged in the own node device, based on the resource allocation update message Resource allocation updating means for updating resource allocation in the resource allocation storage means;
When an agent deletion message for deleting the agent means by specifying agent identification information for identifying the agent means is received from the agent means arranged in the local node device, the resource allocation storage means based on the agent deletion message First resource allocation deletion means for deleting the agent identification information and resource allocation of
Upon receipt of the agent deletion message, the service manager apparatus sends the node identification information, the agent identification information, and the arrangement update information indicating the module identification information related to the own node apparatus after being deleted by the first resource allocation deletion means. And a program deleting means for deleting the agent program of the agent means from the memory,
When receiving an agent movement message for moving the agent means by specifying agent identification information for identifying the agent means and node identification information indicating the destination node apparatus from the agent means arranged in the own node device, Second resource allocation deletion means for deleting the agent identification information and resource allocation in the resource allocation storage means based on an agent movement message;
Upon receipt of the agent movement message, the node identification information, the agent identification information and the module identification information relating to the own node device after being deleted by the second resource allocation deletion means, and the movement destination node device The arrangement update information including both the node identification information, the agent identification information, and the module identification information is transmitted to the service manager apparatus, and the agent program of the agent means is transmitted to the destination node apparatus, and Program moving means for deleting the agent program from the memory;
When an inquiry message inquiring about resource allocation of another node device other than the own node device is received from the agent means arranged in the own node device, the storage contents of the resource allocation storage unit of the another node device are stored in the another node device. Inquiring, and another node inquiry means for responding to the agent means the storage contents returned from the another node device,
With
The agent means includes
The service identification information, the module identification information, an upper limit value indicating an upper limit of an integrated value obtained by integrating the module penalty values assigned to the service providing module means, and a lower limit indicating the lower limit of the integrated value Upper and lower limit value storage means for storing values in association with each other;
Any of the service providing module means;
Second evaluation value measuring means for measuring the evaluation value for the service providing module means;
The module penalty value is calculated based on the evaluation value measured by the second evaluation value measuring unit, the service penalty value and the evaluation value received from the service manager device, and the integration of the module penalty value is performed. A comparison means for calculating a value and comparing the integrated value with the upper limit value and the lower limit value in the upper and lower limit storage means;
As a result of the comparison, when the integrated value is larger than the upper limit value, the resource associated with the agent identification information for identifying the agent unit is referred to by referring to the resource distribution storage unit in the own node device in which the agent unit is arranged Resource increase determination means for determining whether the distribution can be increased;
If the result of this determination is that it can be increased, means for sending a resource allocation update message to update the resource allocation to increase the resource allocation;
If the result of the determination is negative, the inquiry message is sent to the different node inquiry means, and the agent movement message is sent to the second resource allocation deletion means based on the stored contents returned from the different node inquiry means. And a moving message sending means for sending to the program moving means;
As a result of the comparison, when the integrated value is smaller than the lower limit value, the resource associated with the agent identification information for identifying the agent unit with reference to the resource distribution storage unit in the own node device in which the agent unit is arranged Resource reduction determination means for determining whether the allocation can be reduced;
If the result of this determination is that the resource allocation can be decreased, the resource allocation update message for updating the resource allocation to be decreased is sent to the resource allocation update unit;
If the result of determination by the resource reduction determination means is negative, the inquiry message is sent to the other node inquiry means, and the agent deletion message is sent to the first node based on the stored contents returned from the other node inquiry means. Resource allocation deleting means and a deletion message sending means for sending to the program deleting means,
A node device comprising:
サービスを識別するサービス識別情報と、当該サービス識別情報を含むサービス要求と前記サービス要求に対するサービス応答との間で計測可能な評価値とを関連付けて予めサービス評価値記憶手段に記憶し、
前記サービス識別情報と、当該サービス識別情報により識別されるサービスの各段階を個別に実行する複数のサービス提供モジュール手段を個別に識別するモジュール識別情報とを関連付けてモジュール識別情報記憶手段に記憶し、
前記各ノード装置を識別する各ノード識別情報と、前記各ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記エージェント手段に含まれる前記サービス提供モジュール手段を識別する前記モジュール識別情報とを関連付けて配置記憶手段に記憶し、
前記サービス要求を送信して前記サービス応答を受信するユーザ端末に通信可能なゲートウェイ装置から前記サービス要求を受けると、当該サービス要求内のサービス識別情報に基づいて前記モジュール識別情報記憶手段からモジュール識別情報を読出した後、このモジュール識別情報に基づいて前記配置記憶手段からノード識別情報を読出し、このノード識別情報に基づいて、前記サービス要求を当該ノード識別情報に識別されるノード装置に送信し、
当該送信したサービス要求に対するサービス応答をいずれかのノード装置から受けると、当該サービス応答を前記ゲートウェイ装置に送信すると共に、当該サービス要求と当該サービス応答との間で前記評価値を計測し、
前記計測された評価値が前記サービス評価値記憶手段内の評価値を満たしていない場合には正の値のサービスペナルティ値を計算し、前記計測された評価値が前記サービス評価値記憶手段内の評価値を過度に満たしている場合に負の値のサービスペナルティ値を計算し、
前記計算されたサービスペナルティ値及び前記計測された評価値を、前記サービス要求の送信先のノード装置及び前記サービス応答の送信元のノード装置に送信し、
前記エージェント手段を削除、移動又は複製するように更新した前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報をいずれかの前記ノード装置から受けると、当該配置更新情報に基づいて前記配置記憶手段を更新するサービスマネージャ装置に通信可能な各々のノード装置であって、自ノード装置に前記エージェント手段が配置された場合に用いられ、前記自ノード装置を当該エージェント手段としても機能させるためのエージェントプログラムを記憶可能なメモリ及びこのエージェントプログラムを実行可能なCPUを含むプログラム実行手段と、リソース配分記憶手段とを備えた前記ノード装置に用いられるノード装置用プログラムであって、
前記ノード装置を、
前記自ノード装置に配置されたエージェント手段を識別するエージェント識別情報と、前記自ノード装置のリソースの配分を示すリソース配分とを関連付けて前記リソース配分記憶手段に書込む手段、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報に関連付けたリソース配分を増加又は減少させるように更新するリソース配分更新メッセージを受けると、当該リソース配分更新メッセージに基づいて前記リソース配分記憶手段内のリソース配分を更新するリソース配分更新手段、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報を指定して当該エージェント手段を削除するエージェント削除メッセージを受けると、当該エージェント削除メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第1のリソース配分削除手段、
前記エージェント削除メッセージを受けると、前記第1のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報を示す配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記メモリから削除するプログラム削除手段、
前記自ノード装置に配置されたエージェント手段から当該エージェント手段を識別するエージェント識別情報と移動先のノード装置を示すノード識別情報とを指定して当該エージェント手段を移動させるエージェント移動メッセージを受けると、当該エージェント移動メッセージに基づいて前記リソース配分記憶手段内の当該エージェント識別情報及びリソース配分を削除する第2のリソース配分削除手段、
前記エージェント移動メッセージを受けると、前記第2のリソース配分削除手段により削除された後の自ノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報と、前記移動先のノード装置に関する前記ノード識別情報、前記エージェント識別情報及び前記モジュール識別情報との両者を含む配置更新情報を前記サービスマネージャ装置に送信し、当該エージェント手段の前記エージェントプログラムを前記移動先のノード装置に送信すると共に、当該エージェントプログラムを前記メモリから削除するプログラム移動手段、
前記自ノード装置に配置されたエージェント手段から、前記自ノード装置以外の別ノード装置のリソース配分を問合せる問合せメッセージを受けると、前記別ノード装置のリソース配分記憶手段の記憶内容を前記別ノード装置に問合せると共に、前記別ノード装置から応答された前記記憶内容を当該エージェント手段に応答する別ノード問合せ手段、
として機能させ、
前記エージェント手段は、
前記サービス識別情報と、前記モジュール識別情報と、前記サービスペナルティ値を前記各サービス提供モジュール手段に割り当てたモジュールペナルティ値を積算した積算値の上限を示す上限値と、当該積算値の下限を示す下限値とを関連付けて、当該エージェント手段が配置された自ノード装置内の上下限値記憶手段に書込む手段、
いずれかの前記サービス提供モジュール手段、
このサービス提供モジュール手段に対して前記評価値を計測する第2の評価値計測手段、
前記第2の評価値計測手段により計測された評価値と、前記サービスマネージャ装置から受けたサービスペナルティ値及び評価値とに基づいて、前記モジュールペナルティ値を計算すると共に、当該モジュールペナルティ値の前記積算値を計算し、この積算値と前記上下限値記憶手段内の上限値及び下限値とを比較する比較手段、
前記比較の結果、前記積算値が前記上限値より大きいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が増加可能か否かを判定するリソース増加判定手段、
この判定の結果、増加可能な場合には前記リソース配分を増加させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段、
前記判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント移動メッセージを前記第2のリソース配分削除手段及び前記プログラム移動手段に送出する移動メッセージ送出手段、
前記比較の結果、前記積算値が前記下限値より小さいとき、当該エージェント手段が配置された自ノード装置内のリソース配分記憶手段を参照し、当該エージェント手段を識別するエージェント識別情報に関連付けられたリソース配分が減少可能か否かを判定するリソース減少判定手段、
この判定の結果、減少可能な場合には前記リソース配分を減少させるように更新するリソース配分更新メッセージを前記リソース配分更新手段に送出する手段、
前記リソース減少判定手段による判定の結果、否の場合には前記問合せメッセージを前記別ノード問合せ手段に送出し、当該別ノード問合せ手段から応答された記憶内容に基づいて前記エージェント削除メッセージを前記第1のリソース配分削除手段及び前記プログラム削除手段に送出する削除メッセージ送出手段、
を含んでいるノード装置用プログラム。
Service identification information for identifying a service, and a service request including the service identification information and an evaluation value measurable between a service response to the service request are associated with each other and stored in a service evaluation value storage unit in advance.
Storing the service identification information and module identification information for individually identifying a plurality of service providing module means for individually executing each stage of the service identified by the service identification information in a module identification information storage means;
Each node identification information for identifying each node device, agent identification information for identifying an agent unit arranged in each node device, and the module identification information for identifying the service providing module unit included in the agent unit Is stored in the arrangement storage means,
When the service request is received from a gateway device that can communicate with a user terminal that transmits the service request and receives the service response, the module identification information is stored in the module identification information storage unit based on the service identification information in the service request. Is read out from the placement storage means based on the module identification information, based on the node identification information, the service request is transmitted to the node device identified by the node identification information,
When a service response to the transmitted service request is received from any of the node devices, the service response is transmitted to the gateway device, and the evaluation value is measured between the service request and the service response,
When the measured evaluation value does not satisfy the evaluation value in the service evaluation value storage means, a positive service penalty value is calculated, and the measured evaluation value is stored in the service evaluation value storage means. Calculate a negative service penalty value if the rating is overfilled,
The calculated service penalty value and the measured evaluation value are transmitted to the node device that is the transmission destination of the service request and the node device that is the transmission source of the service response,
When the node update information indicating the node identification information, the agent identification information, and the module identification information updated so as to delete, move, or duplicate the agent means is received from any of the node devices, based on the arrangement update information Each node device that can communicate with the service manager device that updates the arrangement storage means, and is used when the agent means is arranged in the own node device, and the own node device also functions as the agent means A program for a node device used in the node device, comprising: a memory capable of storing an agent program for executing the program; a program execution unit including a CPU capable of executing the agent program; and a resource allocation storage unit.
The node device is
Means for associating agent identification information for identifying agent means arranged in the own node device with resource allocation indicating resource allocation of the own node device and writing to the resource allocation storage means;
When receiving a resource allocation update message for updating to increase or decrease the resource allocation associated with the agent identification information for identifying the agent means from the agent means arranged in the own node device, based on the resource allocation update message Resource allocation updating means for updating resource allocation in the resource allocation storage means;
When an agent deletion message for deleting the agent means by specifying agent identification information for identifying the agent means is received from the agent means arranged in the local node device, the resource allocation storage means based on the agent deletion message First resource allocation deletion means for deleting the agent identification information and resource allocation of
Upon receipt of the agent deletion message, the service manager apparatus sends the node identification information, the agent identification information, and the arrangement update information indicating the module identification information related to the own node apparatus after being deleted by the first resource allocation deletion means. A program deleting means for deleting the agent program of the agent means from the memory,
When receiving an agent movement message for moving the agent means by specifying agent identification information for identifying the agent means and node identification information indicating the destination node apparatus from the agent means arranged in the own node device, Second resource allocation deletion means for deleting the agent identification information and resource allocation in the resource allocation storage means based on an agent movement message;
Upon receipt of the agent movement message, the node identification information, the agent identification information and the module identification information relating to the own node device after being deleted by the second resource allocation deletion means, and the movement destination node device The arrangement update information including both the node identification information, the agent identification information, and the module identification information is transmitted to the service manager apparatus, and the agent program of the agent means is transmitted to the destination node apparatus, and Program moving means for deleting the agent program from the memory,
When an inquiry message inquiring about resource allocation of another node device other than the own node device is received from the agent means arranged in the own node device, the storage contents of the resource allocation storage unit of the another node device are stored in the another node device. Another node inquiry means for making an inquiry and responding to the agent means for the stored contents returned from the other node device,
Function as
The agent means includes
The service identification information, the module identification information, an upper limit value indicating an upper limit of an integrated value obtained by integrating the module penalty values assigned to the service providing module means, and a lower limit indicating the lower limit of the integrated value Means for associating the value with each other, and writing to the upper and lower limit value storage means in the own node device in which the agent means is arranged
Any of the service providing module means;
Second evaluation value measuring means for measuring the evaluation value for the service providing module means;
The module penalty value is calculated based on the evaluation value measured by the second evaluation value measuring unit, the service penalty value and the evaluation value received from the service manager device, and the integration of the module penalty value is performed. A comparison means for calculating a value and comparing the integrated value with the upper limit value and the lower limit value in the upper and lower limit value storage means;
As a result of the comparison, when the integrated value is larger than the upper limit value, the resource associated with the agent identification information for identifying the agent unit is referred to by referring to the resource distribution storage unit in the own node device in which the agent unit is arranged Resource increase determination means for determining whether or not the distribution can be increased,
If the result of this determination is that it can be increased, means for sending a resource allocation update message for updating to increase the resource allocation to the resource allocation update means,
If the result of the determination is negative, the inquiry message is sent to the different node inquiry means, and the agent movement message is sent to the second resource allocation deletion means based on the stored contents returned from the different node inquiry means. And a moving message sending means for sending to the program moving means,
As a result of the comparison, when the integrated value is smaller than the lower limit value, the resource associated with the agent identification information for identifying the agent unit with reference to the resource distribution storage unit in the own node device in which the agent unit is arranged Resource decrease determination means for determining whether the distribution can be decreased;
If the result of this determination is that the resource allocation can be reduced, a means for sending a resource allocation update message to update the resource allocation to reduce the resource allocation;
If the result of determination by the resource reduction determination means is negative, the inquiry message is sent to the other node inquiry means, and the agent deletion message is sent to the first node based on the stored contents returned from the other node inquiry means. Resource allocation deletion means and deletion message transmission means to be sent to the program deletion means,
A program for a node device including
JP2010288623A 2010-12-24 2010-12-24 Service providing system, apparatus and program Active JP5414663B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010288623A JP5414663B2 (en) 2010-12-24 2010-12-24 Service providing system, apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010288623A JP5414663B2 (en) 2010-12-24 2010-12-24 Service providing system, apparatus and program

Publications (2)

Publication Number Publication Date
JP2012137865A JP2012137865A (en) 2012-07-19
JP5414663B2 true JP5414663B2 (en) 2014-02-12

Family

ID=46675243

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010288623A Active JP5414663B2 (en) 2010-12-24 2010-12-24 Service providing system, apparatus and program

Country Status (1)

Country Link
JP (1) JP5414663B2 (en)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2988462B2 (en) * 1998-02-12 1999-12-13 三菱電機株式会社 Autonomous cooperative processing device, autonomous cooperative processing method, and recording medium therefor
JP2005004676A (en) * 2003-06-16 2005-01-06 Fujitsu Ltd Adaptive distributed processing system
CN101084680B (en) * 2004-10-28 2012-03-14 意大利电信股份公司 Method for managing resources in a platform for telecommunication service and/or network management, corresponding platform and computer program product therefor
WO2007034826A1 (en) * 2005-09-20 2007-03-29 Nec Corporation Resource quantity calculation system, method, and program
JP2007148469A (en) * 2005-11-24 2007-06-14 Hitachi Ltd Preliminary resource allocation method using business process definition
JPWO2007077600A1 (en) * 2005-12-28 2009-06-04 富士通株式会社 Operation management program, operation management method, and operation management apparatus
JP2007249470A (en) * 2006-03-15 2007-09-27 Nec Biglobe Ltd Cluster server system, charging device and charging method
JP4772854B2 (en) * 2008-12-02 2011-09-14 株式会社日立製作所 Computer system configuration management method, computer system, and configuration management program

Also Published As

Publication number Publication date
JP2012137865A (en) 2012-07-19

Similar Documents

Publication Publication Date Title
US10481935B2 (en) Management system, overall management node, and management method for managing virtualization resources in a mobile communication network
CN106844399B (en) Distributed database system and self-adaptive method thereof
US20170289298A1 (en) Large scale storage system and method of operating thereof
KR101634409B1 (en) Techniques for resource location and migration across data centers
CN112532675B (en) Method, device and medium for establishing network edge computing system
US9929918B2 (en) Profile-based SLA guarantees under workload migration in a distributed cloud
KR102297850B1 (en) Method and appratus for providing a cloud service based on cloud service brokerage
JP5970541B2 (en) Information processing system, management server group, and server management program
US10158579B2 (en) Resource silos at network-accessible services
CN105094997B (en) Physical memory sharing method and system between a kind of cloud computing host node
CN107085539B (en) cloud database system and dynamic cloud database resource adjustment method
CN109857445A (en) Storage system and control software layout method
US8713125B2 (en) Method and system for scaling usage of a social based application on an online social network
CN100465901C (en) Network system, management computer, cluster management method, and computer program
US20200133657A1 (en) Method, electronic device and computer readable storage medium of storage management
CN113169889B (en) Method and apparatus for mapping network slices onto a network infrastructure with SLA guarantees
JP7003876B2 (en) Communication system and communication method
CN109391490A (en) The management method and device of network slice
EP4293510A1 (en) Data migration method and apparatus, and device, medium and computer product
CN110727738B (en) Global routing system based on data fragmentation, electronic equipment and storage medium
CN110569302A (en) method and device for physical isolation of distributed cluster based on lucene
JP5675471B2 (en) Data center system management method, data center system, and management apparatus
KR101256918B1 (en) Method for enhancing scalability and availability of cloud services and the system thereby
CN104468759A (en) Method and device for achieving application migration in PaaS platform
Taghizadeh et al. A metaheuristic‐based data replica placement approach for data‐intensive IoT applications in the fog computing environment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120913

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131009

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131112

R150 Certificate of patent or registration of utility model

Ref document number: 5414663

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350