WO2011104999A1 - Service providing system, and computer program and data processing method for same - Google Patents

Service providing system, and computer program and data processing method for same Download PDF

Info

Publication number
WO2011104999A1
WO2011104999A1 PCT/JP2011/000214 JP2011000214W WO2011104999A1 WO 2011104999 A1 WO2011104999 A1 WO 2011104999A1 JP 2011000214 W JP2011000214 W JP 2011000214W WO 2011104999 A1 WO2011104999 A1 WO 2011104999A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
execution
monitoring
service execution
processing
Prior art date
Application number
PCT/JP2011/000214
Other languages
French (fr)
Japanese (ja)
Inventor
栄 島村
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2012501660A priority Critical patent/JPWO2011104999A1/en
Publication of WO2011104999A1 publication Critical patent/WO2011104999A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Definitions

  • the present invention relates to a service providing system that provides a service in response to a request from a client device for each of a plurality of service providers, a computer program thereof, and a data processing method.
  • Fig. 13 shows the service provision mechanism.
  • the service providing mechanism includes a client device 101 operated by a customer, and a service providing system 210 that executes a service in response to a request and returns a response.
  • the service providing system 210 includes a load distribution management unit 104 and service execution units 105 to 107 in which service applications 115 to 117 of various service providers are deployed (Non-patent Document 1).
  • the reason why there are a plurality of service execution units 105 to 107 is that a configuration scaled out with respect to the load of service provision is considered. Further, the load distribution management unit 104 and the service execution units 105 to 107 may be implemented as independent devices, or may be implemented as software, and a plurality of components may operate within one device.
  • the conventional service providing system 210 having such a configuration operates as follows. That is, the service user sends a request from the client apparatus 101 to the service providing system 210 in order to use the service application.
  • the load distribution management unit 104 in the service providing system 210 receives requests from many client apparatuses 101 and allocates processing to appropriate service execution units 105 to 107.
  • Patent Document There is also a proposal to regulate service use requests from service user side devices to reduce the load on systems that provide services when an information communication service system such as a shopping service system becomes overloaded (Patent Document) 1).
  • a load threshold table that stores thresholds for starting and releasing service regulation corresponding to a load on the side that provides the information communication service, and whether or not a service use request is issued on the service user side are determined.
  • a service regulation information table is provided as a reference for this.
  • the service regulation information including the device of the service user who has not requested the service is broadcast and delivered. Restrict issuance of service usage requests from users (not shown).
  • Patent Document 2 proposes a proposal for assigning independent computing resources for each user company in the data center and automatically changing the assignment in real time according to the load.
  • control program creates a computer allocation control table for each user company identifier and sets it in the load distribution management unit. Means are provided for identifying the user company identifier from the IP address in the user request packet.
  • the load balancing management unit identifies the user company from the user request packet and transfers it to the appropriate computer group. Furthermore, the control program compares the service level contract for each user with the operating status monitor result of the computer, and increases the allocated computer when the contract condition is not met.
  • the computer allocation control table for each user company identifier is changed and reset in the load distribution management unit. Further, the control program changes billing information based on it (not shown).
  • Non-Patent Document 1 access control using the number of connections for each service provider is common, but it is not always appropriate as a load balancing method, and processing interference between service providers tends to occur. .
  • Patent Document 1 only regulates by preventing the client side from transmitting a request in cooperation with the regulation information on the server side.
  • a system that performs service regulation on the server side as the load increases is a common existing technology.
  • Patent Document 2 is premised on the allocation of computer resources to a system that executes a unique service for each service provider. For this reason, it is difficult to apply to a service providing system shared between service providers.
  • the present invention has been made in view of the above-described problems.
  • interference such as performance between services of different service providers occurs.
  • the present invention provides a difficult service providing system, its computer program, and a data processing method.
  • the first service providing system of the present invention includes a service execution unit that executes a service in response to a request from a client device for each of a plurality of service providers, and a service execution unit that receives a request from a plurality of client devices.
  • Load distribution means for distributing to each other, a service execution monitoring unit for monitoring the service execution status of each service execution means, and an access control means for controlling the service in accordance with the monitored service execution status.
  • the second service providing system of the present invention includes a service execution means for executing a service in response to a request from a client device for each of a plurality of service providers, and a dedicated type capable of processing only a service of a specific service provider.
  • Service execution means for executing a service in response to a request from a client device for each of a plurality of service providers, and a dedicated type capable of processing only a service of a specific service provider.
  • Service execution means for receiving requests from a plurality of client devices and distributing the requests to the service execution means, service execution monitoring means for monitoring the service execution status of each service execution means, and monitored service execution
  • the access control means for controlling the service according to the situation, and the access control means processes only the request for the specific service provider with a high load by the operation from the service execution monitoring means.
  • Load balancing means is set to be executed by a dedicated service providing system.
  • a third service providing system of the present invention includes a service execution unit that executes a service in response to a request from a client device for each of a plurality of service providers, and a service execution unit that receives a request from a plurality of client devices.
  • Load distribution means for distributing to each other, service execution monitoring means for monitoring the service execution status of each service execution means, access control means for controlling the service in accordance with the monitored service execution status, and for each service provider Charging management means for managing charging information, and service execution monitoring means for periodically notifying the access control means of load information for each service provider, the access control means based on the notified load information, Although the charging rate is low based on the charging information acquired from the charging management means at high load, the load is high. To block the screw provider of the request.
  • a first computer program of the present invention is a computer program of a service providing system that communicates with a client device for each of a plurality of service providers, and a service execution process that executes a service in response to a request from the client device; Corresponding to load distribution processing that receives requests from multiple client devices and distributes them to service execution processing, service execution monitoring processing that monitors the service execution status of each service execution processing, and the monitored service execution status
  • the service providing system executes an access control process for controlling the service.
  • a second computer program of the present invention is a computer program of a service providing system that communicates with a client device for each of a plurality of service providers, and provides a service in response to a request from the client device for each of a plurality of service providers.
  • a service execution process to be executed a dedicated service execution process capable of processing only a service of a specific service provider, a load distribution process for receiving requests from a plurality of client devices and distributing the requests to the service execution processes, Service execution monitoring process that monitors the service execution status of the service execution process, and the service is controlled according to the monitored service execution status. Only process the request for that particular service provider An access control process for setting the load balancing process so as to be executed by a dedicated service providing system is allowed to execute the service providing system.
  • a third computer program of the present invention is a computer program of a service providing system that communicates with a client device for each of a plurality of service providers, and provides a service in response to a request from the client device for each of a plurality of service providers.
  • Service execution processing to be executed load distribution processing for receiving requests from a plurality of client devices and distributing them to the service execution processing, service execution monitoring processing for monitoring the service execution status of each service execution processing, and monitoring Access control processing that controls services according to service execution status, billing management processing that manages billing information for each service provider, and service execution that periodically notifies load control information for each service provider to access control processing Based on the monitoring process and the notified load information, Executing an access control process load from the billing management processing of the original to the charging rate of the charging information acquired is low to block the high service provider requests under load, the service providing system.
  • a first data processing method of the present invention is a data processing method of a service providing system that communicates with a client device for each of a plurality of service providers, and executes a service in response to a request from the client device.
  • Supports load balancing operation that receives requests from multiple client devices and distributes them to service execution processing, service execution monitoring operation that monitors the service execution status of each service execution processing, and monitored service execution status And an access control operation for controlling the service.
  • a second data processing method of the present invention is a data processing method of a service providing system that communicates with a client device for each of a plurality of service providers, and corresponds to a request from a client device for each of a plurality of service providers.
  • a service execution operation for executing a service a dedicated service execution operation capable of processing only a service of a specific service provider, a load distribution operation for receiving requests from a plurality of client devices and distributing them to the service execution processing, Service execution monitoring operation that monitors the service execution status of each service execution process, and the service is controlled according to the monitored service execution status.
  • a service dedicated to processing only requests for that specific service provider Having an access control operation for setting the load balancing process so as to be executed by the test system.
  • a third data processing method of the present invention is a data processing method of a service providing system that communicates with a client device for each of a plurality of service providers, and corresponds to a request from a client device for each of a plurality of service providers.
  • Service execution operation for executing a service load distribution operation for receiving requests from a plurality of client devices and distributing the requests to service execution processing, service execution monitoring operation for monitoring the service execution status of each service execution processing, and monitoring Access control operation for controlling the service in accordance with the service execution status, billing management operation for managing billing information for each service provider, and periodically reporting load information for each service provider to the access control processing Based on the service execution monitoring operation and the notified load information, charging Having an access control operation to block high load service provider requests billing information to the low billing rate based on acquired from the processing.
  • a plurality of components are formed as a single member, and a single component is formed of a plurality of members. It may be that a certain component is a part of another component, a part of a certain component overlaps with a part of another component, or the like.
  • the order of the plurality of processes and the plurality of operations can be changed within a range that does not hinder the contents.
  • the computer program and the data processing method of the present invention are not limited to being executed at a timing when a plurality of processes and a plurality of operations are individually different. For this reason, other processes and operations occur during execution of certain processes and operations, and the execution timing of certain processes and operations overlaps with the execution timing of other processes and operations. Etc.
  • the service providing system can read a computer program and execute a corresponding processing operation, such as a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), an I / F. It can be implemented as hardware constructed by general-purpose devices such as (Interface) units, dedicated logic circuits constructed to execute predetermined processing operations, combinations thereof, and the like.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • I / F an I / F.
  • It can be implemented as hardware constructed by general-purpose devices such as (Interface) units, dedicated logic circuits constructed to execute predetermined processing operations, combinations thereof, and the like.
  • causing the service providing system to execute various operations corresponding to the computer program also means causing the service providing system to control the operation of various devices.
  • storing various data in the service providing system means that the CPU stores various data in an information storage medium such as an HDD (Hard Disk Drive) fixed to the service providing system, and can be exchanged for the service providing system.
  • the CPU allows various data to be stored by the CD drive in an information storage medium such as a CD-R (Compact Disc-Recordable) loaded.
  • service execution means executes a service in response to a request from a client device for each of a plurality of service providers.
  • the requests from the plurality of client devices are received and the load distribution means distributes them to the service execution means.
  • the service execution monitoring unit monitors the service execution status of each service execution means.
  • the access control means controls the service corresponding to the monitored service execution status.
  • a load distribution management unit 104 that receives a request from a client device 101 and appropriately distributes the request to service execution units 105 to 107, and a client device 101.
  • Service provider-specific access control unit 103 that executes service rejection or suspension according to the service execution status, and requests distributed from the load distribution management unit 104.
  • Service execution units 105 to 107 that appropriately execute services correspondingly, service applications 115 to 117 that actually execute processing corresponding to requests, and service applications that operate in the respective service execution units 105 to 107
  • Service execution monitoring unit that monitors the execution statuses 115 to 117 20, it consists of.
  • the operation of the service execution units 105 to 107 will be described below.
  • the service execution units 105 to 107 generate execution instances of the service applications 115 to 117 corresponding to the requests.
  • the same service applications 115 to 117 are shared by a plurality of service providers, so that there are execution instances in which the processing contents are the same and internal data is different for each service provider. Generated.
  • the service execution monitoring unit 120 organizes the execution status of the execution instances of the service applications 115 to 117 generated and executed as described above for each corresponding service provider, and controls the execution of the service applications 115 to 117. To do.
  • the service provider-specific access control unit 103 rejects or temporarily holds a request for a service requested by a specific service provider by an operation from the service execution monitoring unit 120.
  • the service execution monitoring unit 120 includes a service provider-specific process status management unit 121 that aggregates and manages the process status of each service provider for a plurality of service processes in the service execution units 105 to 107, and each request. And the service provider relationship management unit 122 that holds which service provider the service process is executed by, and the request when the request from the client device 101 arrives, The service provider identification unit 123 for identifying which service provider is requesting the service processing and the processing status of the service applications 115 to 117 with respect to the request by accessing a plurality of locations of the service applications 115 to 117. Monitor and pause processing in response to the situation and Composed of the service provider by the access control unit 103 is a processing monitoring control means for locked.
  • the service provider identification unit 123 analyzes requests for the service applications 115 to 117 and identifies which service provider the service was operated for.
  • the service provider identification unit 123 is defined independently of the processing of the service applications 115 to 117, and executes the target processing in a form plugged into the service applications 115 to 117.
  • the service provider identification unit 123 has a function of interrupting the service execution of the specific service provider and rejecting the service execution itself or temporarily holding it by an external operation.
  • AOP Application Oriented Programming
  • the access control unit 103 for each service provider is inserted into some places of the service applications 115 to 117 in a form that is plugged in by AOP or equivalent technology, and processing time of the plugged-in part Monitor the amount of data, the size of sent and received messages, etc. when accessing the database. Further, the access control unit 103 for each service provider can suspend processing or temporarily suspend processing at the plugged-in location.
  • the service providing system 110 as described above is logically realized by a computer device or the like that operates in accordance with a computer program.
  • a computer program includes, for example, a service execution process that executes a service in response to a request from a client apparatus, a load distribution process that receives requests from a plurality of client apparatuses and distributes the requests to the service execution process, and
  • the service providing system 110 executes service execution monitoring processing for monitoring the service execution status of the service execution processing and access control processing for controlling the service in accordance with the monitored service execution status.
  • the service execution monitoring unit 120 operates in an event-driven manner with respect to the operation of the service applications 115 to 117 in the service execution units 105 to 107.
  • the service execution units 105 to 107 When the service execution units 105 to 107 receive the requests for the service applications 115 to 117 from the client device 101, the service provider identification unit 123 plugged into the service applications 115 to 117 looks at the request and for which service provider (P1001).
  • the service provider identifying unit 123 sends the identifier of the service provider and the identifier of the execution instance of the service application 115 to 117 to the processing / service provider relationship management unit 122 (P1002).
  • the processing / service provider relationship management unit 122 records the combination of the received service provider identifier and the execution instance identifiers of the service applications 115 to 117 (P1003).
  • the process monitoring control unit 124 is plugged into the execution instances of the service applications 115 to 117, and processes the service provider information corresponding to the execution instance when the execution instance process reaches the plugged-in location. An inquiry is made to the service provider relationship management unit 122 (P1101).
  • P1102 Information such as the time required for processing in the vicinity where the process monitoring control unit 124 is plugged in, the amount of exchange data when accessing the database, and the amount of communication data is collected (P1102).
  • the service provider information acquired in P1101 and the execution status information collected in P1102 are sent as monitoring information to the processing status management unit 121 for each service provider (P1103).
  • the process monitoring control unit 124 is plugged into one or more locations of the service applications 115 to 117, and each time the execution instance process reaches that location, the above processing of the corresponding process monitoring control unit 124 is called. It is.
  • the operation P1200 of the service provider-specific process status management unit 121 when monitoring information is received from the process monitoring control unit 124 will be described with reference to FIG.
  • the service provider-specific processing status management unit 121 records the processing status for each service provider (P1201).
  • the service provider-specific processing status management unit 121 identifies the identifiers of the service execution units 105 to 107 that are being monitored with respect to the service provider-specific access control unit 103. Then, the identifier of the service provider is notified (P1203).
  • the access control unit 103 for each service provider records a set of the service provider identifier and the service execution unit identifier notified from the processing status management unit 121 for each service provider (P1301).
  • a service execution unit identifier to which a request for the service provider may be allocated is set in the load distribution management unit 104 (P1304).
  • the process monitoring control unit 124 is plugged in from the outside of the service applications 115 to 117, and reception of requests is controlled based on monitoring information of internal processes of each execution instance.
  • the service provider-specific process status management unit 121 When the service provider-specific process status management unit 121 receives the execution status information from the service provider-specific access control unit 103, it records the process status for each service provider (P1251). It is checked whether or not the execution instances for the service provider are in an abnormal state over a certain number (P1252).
  • the service provider-specific access control unit 103 is forced to terminate the execution instance of the service provider and jump to P1255 (P1253). If the number is not more than a certain number (P1252-N), it is checked whether there is a service provider that is prominently causing a load compared to the processing of other service providers (P1254).
  • the process ends, and the next monitoring information from the service provider-specific access control unit 103 is waited for.
  • the service provider specific processing status management unit 121 identifies the identifiers of the service execution units 105 to 107 that are being monitored with respect to the service provider specific access control unit 103. Then, the identifier of the service provider is notified (P1255).
  • the third embodiment of the present invention receives a request from the client apparatus 101 and appropriately distributes the request to the service execution units 105 to 107, and a load distribution management.
  • Service execution units 105 to 107 that appropriately execute services in response to requests distributed from the unit 104, service applications 115 to 117 that actually execute processing corresponding to requests, and service execution units 105 to 107, respectively.
  • Service execution monitoring unit 130 that monitors the execution status of service applications 115 to 117 operating in the system, and collects monitoring information from all service execution monitoring units 130 in the system, and provides a service that instructs flow control
  • the access control unit 140 is for each person.
  • the service execution monitoring unit 130 includes a service provider-specific process status management unit 131 that aggregates and manages the process status of each service provider for a plurality of service processes in the service execution units 105 to 107, and each request. And the service provider relationship management unit 122 that holds which service provider the service process is executed by, and the request when the request from the client device 101 arrives, A service provider identifying unit 133 that identifies which service provider is requesting service processing and restricts processing for a specific service provider in accordance with necessity, and a plurality of locations of the service applications 115 to 117 Access to the service applications 115 to 117 corresponding to the request. Monitoring the physical status, and a service provider by the access control unit 140 to suspend and cancel processing in response to the situation.
  • the service provider-specific processing status management unit 121 When receiving the execution status information from the service provider-specific access control unit 140, the service provider-specific processing status management unit 121 records the processing status for each service provider (P1271). It is checked whether or not a certain time has passed since the service provider-specific access control unit 140 performed the load evaluation of the corresponding service provider last time (P1272).
  • the service provider-specific process status management unit 131 provides the service provider-specific access control unit 140 with the identifiers of the service execution units 105 to 107 being monitored, The identifier of the service provider and the load status are notified (P1273).
  • the access control unit 140 for each service provider records the load information that is a set of the service provider identifier and the service execution unit identifier notified from the processing status management unit 131 for each service provider (P1351).
  • the access control unit for each service provider ignores even if load information related to the same service provider is notified from the processing status management unit 131 for each other service provider.
  • the load information of the service provider is acquired from the processing status management unit 131 for each service provider in all the service execution monitoring units 130 other than the service execution monitoring unit 130 that is the notification source (P1352).
  • the load information of the corresponding service provider from all service execution monitoring units is evaluated, and it is determined whether or not the upper limit set in advance is exceeded (P1353). If not exceeded (P1353-N), the processing after P1355 is executed.
  • the service provider-specific process status management unit 131 of all service execution monitoring units 130 is notified to temporarily limit the service processing of the corresponding service provider (P1354).
  • the processing status management unit 131 for each service provider of the service execution monitoring unit 130 notified of the restriction on the service processing for the specific service provider notifies the service provider identification unit 133 to block the processing for the corresponding service provider ( P1401).
  • the service provider identification unit 133 determines that the process is for the corresponding service provider by this notification, the subsequent service process is blocked and a new execution instance is not generated.
  • the service provider-specific access control unit 140 is notified to block the processing of the execution instance for the corresponding service provider (P1402).
  • the access control unit for each service provider temporarily stops the processing of the execution instance for the corresponding service provider.
  • the service provider-specific access control unit 140 after the latter half of the entire process may continue the process of the execution instance as it is, instead of stopping uniformly.
  • the restriction on the processing for the corresponding service provider is continued for a certain time (P1403). After this time has elapsed, the access restriction set in P1401 and P1402 is released (P1404).
  • the service provider identifying unit 133 plugged in from the outside of the service applications 115 to 117 and the service provider-specific access control unit 140 are used to execute the service provider generating a certain load. By blocking the intermediate process, it is possible to temporarily reduce the load accompanying the process for the specific service provider that is currently occurring.
  • a load distribution management unit 404 that receives a request from the client device 101 and appropriately distributes the request to the service execution units 105 to 107, and the client device 101.
  • an access control unit 403 for each service provider which is disposed between the service distribution status unit 404 and the service load distribution management unit 404, and performs service rejection or suspension, service evacuation, etc.
  • Service execution units 105 to 106 that appropriately execute services in response to requests distributed from 104, service applications 115 to 116 that actually execute processing corresponding to requests, and service execution units 105 to 106 Monitor the execution status of service applications 115-116 running on A service execution monitoring unit 120 are comprised of separate dedicated type service providing system 400 and the service providing system 110 sharing type composed of these.
  • the dedicated service providing system 400 includes a service execution unit 107 and a service application 117 operating in the same manner as the shared service providing system.
  • the service provider-specific access control unit 403 records a set of a service provider identifier and a service execution unit identifier that are prominently loaded and notified from the process status management unit 121 for each service provider (P1601).
  • the load distribution management unit is processed so that subsequent requests from the service provider are processed by a dedicated service providing system 400 separately constructed exclusively for the service provider. 404 is set (P1603).
  • a service execution unit identifier to which a request for the service provider can be allocated is set in the load distribution management unit 404 (P1604).
  • processing of a service provider that is subjected to an extremely high load is processed by the dedicated service providing system 400 outside the carpool-type service providing system 110, thereby affecting the processing of other service providers. Can be eliminated.
  • FIG. 15 in the fifth embodiment of the present invention, a load distribution management unit 104 that receives a request from the client device 101 and appropriately distributes the request to the service execution units 105 to 107, and the client device 101. And an access control unit 413 for each service provider that executes service rejection or suspension according to the service execution status, and manages a billing plan for each service provider.
  • Charging management unit 500 service execution units 105 to 107 that appropriately execute services in response to requests distributed from the load distribution management unit 104, and service applications 115 to 117 that actually execute processing corresponding to requests And service applications operating in the respective service execution units 105 to 107
  • a service execution monitoring unit 135 the execution status of Deployment 115-117 monitors, composed.
  • any one of the service execution monitoring units 135 in the service providing system 110 shown in FIG. 19 has substantially the same configuration as the service execution monitoring unit 120 of the first embodiment, but the service provider-specific processing status management unit 129 has the same configuration. Only the operation is different, and this periodically notifies the service provider-specific access control unit 413 of information such as the time required for processing for each service provider, the exchange data amount when accessing the database, and the communication data amount as load information.
  • the access control unit 413 for each service provider records the load information for each service provider notified from the processing status management unit 129 for each service provider (P1701). ⁇ Total loads of all service providers of all service execution units recorded at that time (P1702).
  • the request is passed to the load distribution management unit 404 as it is, and thereafter, processing is performed by the service execution units 105 to 107 (P1802).
  • the charge management unit 500 is inquired and the charge of the service provider to which the request corresponds with respect to the total charge amount for all the service providers.
  • the ratio of the amount is calculated (P1803).
  • the ratio of the total charge amount of the service provider corresponding to the request calculated here is compared with the ratio of the total load of the same service provider calculated and recorded in the above-mentioned P1703. It is confirmed whether it is small (P1804).
  • the request is passed to the load distribution management unit 404 as it is, and thereafter, the service execution units 105 to 107 perform processing (P1802). If the load ratio is greater than the charge ratio (P1804-N), the request is blocked (P1805).
  • the present invention is not limited to the present embodiment, and various modifications are allowed without departing from the scope of the present invention.
  • the present invention can also be applied to cloud platforms such as SaaS / ASP and PaaS (Platform as Service) that execute service applications of many service providers.
  • each part of the service providing system is exemplified as being logically realized as various functions by the computer program.
  • each of these units can be formed as unique hardware, or can be realized as a combination of software and hardware.
  • the above-described embodiment and a plurality of modifications can be combined within a range in which the contents do not conflict with each other.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

Service execution means (105-107) execute services in response to requests from the client devices (101) of a plurality of service providers. A load distribution means (104) receives requests from the plurality of client devices (101) and distributes the requests to the service execution means (105-107). A service execution monitoring unit (120) monitors the service execution status of the service execution means (105-107). An access control means (103) controls services according to the observed service execution status. Thus, the resulting service providing system is less susceptible to interference between services provided by different service providers when providing services such as Saas/ASP services, which are shared by multiple service providers.

Description

サービス提供システム、そのコンピュータプログラムおよびデータ処理方法Service providing system, computer program thereof, and data processing method
 本発明は、複数のサービス提供者ごとのクライアント装置のリクエストに対応してサービスを提供するサービス提供システム、そのコンピュータプログラムおよびデータ処理方法、に関する。 The present invention relates to a service providing system that provides a service in response to a request from a client device for each of a plurality of service providers, a computer program thereof, and a data processing method.
 サービス提供の仕組みを図13に示す。サービス提供の仕組みは、顧客が操作するクライアント装置101と、リクエストに対応してサービスを実行しレスポンスを返すサービス提供システム210と、から構成される。 Fig. 13 shows the service provision mechanism. The service providing mechanism includes a client device 101 operated by a customer, and a service providing system 210 that executes a service in response to a request and returns a response.
 サービス提供システム210は、負荷分散管理部104、様々なサービス提供者のサービスアプリケーション115~117が、それぞれ配備されているサービス実行部105~107から構成されている(非特許文献1)。 The service providing system 210 includes a load distribution management unit 104 and service execution units 105 to 107 in which service applications 115 to 117 of various service providers are deployed (Non-patent Document 1).
 サービス実行部105~107が複数あるのは、サービス提供の負荷に対してスケールアウトされた構成を考慮しているからである。また、負荷分散管理部104、サービス実行部105~107は、それぞれ独立の装置として実装される場合もあり、ソフトウェアとして実装され、一つの装置内で複数の構成部が動作する場合もある。 The reason why there are a plurality of service execution units 105 to 107 is that a configuration scaled out with respect to the load of service provision is considered. Further, the load distribution management unit 104 and the service execution units 105 to 107 may be implemented as independent devices, or may be implemented as software, and a plurality of components may operate within one device.
 このような構成を有する従来のサービス提供システム210は、つぎのように動作する。すなわち、サービス利用者は自らのクライアント装置101からサービスアプリケーションを利用するためにサービス提供システム210へリクエストを送付する。 The conventional service providing system 210 having such a configuration operates as follows. That is, the service user sends a request from the client apparatus 101 to the service providing system 210 in order to use the service application.
 サービス提供システム210内の負荷分散管理部104は、多くのクライアント装置101からのリクエストを受け付け、適切なサービス実行部105~107へ処理を割り振る。 The load distribution management unit 104 in the service providing system 210 receives requests from many client apparatuses 101 and allocates processing to appropriate service execution units 105 to 107.
 上述の技術を、例えば、複数のサービス提供者で共有してSaaS(Software as a Service)/ASP(Application Service Provider)型サービスとして顧客に提供する場合、特定サービス提供者向けのリクエストが増加することによって、他のサービス提供者へのサービスに支障をきたすことが予想される。 For example, when the above-described technology is shared by a plurality of service providers and provided to a customer as a SaaS (Software a Service) / ASP (Application Service Provider) type service, requests for specific service providers increase. Therefore, it is expected that the service to other service providers will be hindered.
 こうした問題への対策としては、あるサービス提供者向けのリクエストを負荷分散管理部104が受け付けているコネクション数が設定された値よりも多くなった場合、そのサービス提供者向けの新規リクエストをサービス実行部105~107へ割り振らず、一時的に拒否・遮断・保留することによって、他のサービス提供者のサービス実行に影響を与えないようにすることができる。 As countermeasures against these problems, if the number of connections that the load balancing management unit 104 accepts requests for a certain service provider exceeds the set value, a new request for that service provider is executed as a service. By temporarily refusing, blocking, and suspending without assigning to the units 105 to 107, it is possible to prevent other service providers from affecting the service execution.
 また、ショッピングサービスシステムなど、情報通信サービスシステムが過負荷状態になったとき、サービスを提供するシステムの負荷軽減のためにサービス利用者側装置からのサービス利用要求を規制する提案もある(特許文献1)。 There is also a proposal to regulate service use requests from service user side devices to reduce the load on systems that provide services when an information communication service system such as a shopping service system becomes overloaded (Patent Document) 1).
 その技術では、情報通信サービスを提供する側に負荷に対応してサービス規制を開始、解除する閾値を格納する負荷閾値テーブルと、サービス利用者側でサービス利用要求を発行するか否かを判断するための基準となるサービス規制情報テーブルを設ける。 In the technology, a load threshold table that stores thresholds for starting and releasing service regulation corresponding to a load on the side that provides the information communication service, and whether or not a service use request is issued on the service user side are determined. A service regulation information table is provided as a reference for this.
 情報通信サービスを提供する側の負荷が高くなり、サービス規制を開始すると判断したときに、サービス要求をしていないサービス利用者側の装置を含めてサービス規制情報を同報配送することによって、サービス利用者側からのサービス利用要求の発行を規制する(図示せず)。 When the load on the information communication service provider increases and it is determined that the service regulation will start, the service regulation information including the device of the service user who has not requested the service is broadcast and delivered. Restrict issuance of service usage requests from users (not shown).
 さらに、データセンタにおいて、ユーザ企業ごとに夫々独立な計算資源を割り当て、負荷に対応してその割当てを自動的にリアルタイムに変更する提案もある(特許文献2)。 Furthermore, there is also a proposal for assigning independent computing resources for each user company in the data center and automatically changing the assignment in real time according to the load (Patent Document 2).
 その技術では、制御プログラムは、ユーザ企業識別子ごとの計算機割当て制御表を作成し、負荷分散管理部に設定する。ユーザ要求パケット中のIPアドレスからユーザ企業識別子を識別する手段を設ける。 In that technology, the control program creates a computer allocation control table for each user company identifier and sets it in the load distribution management unit. Means are provided for identifying the user company identifier from the IP address in the user request packet.
 負荷分散管理部は、ユーザ要求パケットからユーザ企業を識別し、しかるべき計算機群にそれを転送する。さらに、制御プログラムはユーザごとのサービスレベル契約と、計算機の稼動状況モニタ結果を比較、契約条件未達時は割当て計算機を増やす。 The load balancing management unit identifies the user company from the user request packet and transfers it to the appropriate computer group. Furthermore, the control program compares the service level contract for each user with the operating status monitor result of the computer, and increases the allocated computer when the contract condition is not met.
 具体的には、上述のユーザ企業識別子ごとの計算機割当て制御表を変更し、負荷分散管理部に再設定する。さらに制御プログラムは、それに基づく課金情報を変更する(図示せず)。 Specifically, the computer allocation control table for each user company identifier is changed and reset in the load distribution management unit. Further, the control program changes billing information based on it (not shown).
特開2001-067314号公報Japanese Patent Laid-Open No. 2001-067314 特開2002-024192号公報JP 2002-024192 A
 非特許文献1などの技術では、サービス提供者ごとのコネクション数を使ったアクセス制御が一般的だが、負荷分散の方法としては必ずしも適切ではなく、サービス提供者間の処理の干渉が起こりがちである。 In technologies such as Non-Patent Document 1, access control using the number of connections for each service provider is common, but it is not always appropriate as a load balancing method, and processing interference between service providers tends to occur. .
 その理由は、内部処理による負荷の違いにより、同一コネクション数でもシステムにかかる負荷が大きく異なることがあるためである。リクエストを受け付けた後、バックエンドシステムに非同期で処理を依頼し、コネクション自体は即時終了するタイプのサービスの場合、こうした傾向は顕著であるといえる。 The reason is that the load on the system may vary greatly even with the same number of connections due to the difference in load due to internal processing. Such a tendency can be said to be remarkable in the case of a type of service in which a request is received asynchronously after a request is received and the connection itself is immediately terminated.
 また、特許文献1の技術は、サーバ側の規制情報に対応してクライアント側も連携して要求を送信しないようにすることで規制するものでしかない。負荷上昇に伴いサーバ側でサービス規制を実行するようなシステムは一般的な既存技術である。 In addition, the technique of Patent Document 1 only regulates by preventing the client side from transmitting a request in cooperation with the regulation information on the server side. A system that performs service regulation on the server side as the load increases is a common existing technology.
 さらに、特許文献2の技術では、サービス提供者ごとの独自のサービスを実行するシステムに対する計算機資源の割り当てが前提となる。このため、サービス提供者間で共有されるサービス提供システムには適用が困難である。 Furthermore, the technique of Patent Document 2 is premised on the allocation of computer resources to a system that executes a unique service for each service provider. For this reason, it is difficult to apply to a service providing system shared between service providers.
 同じサービスを複数のサービス提供者で共有するSaaS型の技術では、単純に外部観測しただけでは、サービス提供者ごとの処理内部の負荷状況を知ることは困難である。従って、このような課題を解決することは、特許文献1や特許文献2の技術では困難である。 In the SaaS type technology in which the same service is shared by a plurality of service providers, it is difficult to know the internal load status of processing for each service provider simply by external observation. Therefore, it is difficult for the techniques of Patent Document 1 and Patent Document 2 to solve such a problem.
 本発明は上述のような課題に鑑みてなされたものであり、複数のサービス提供者で共有されるSaaS/ASP型のサービスなどにおいて、異なるサービス提供者のサービス間での性能などの干渉が起こりにくいサービス提供システム、そのコンピュータプログラムおよびデータ処理方法、を提供するものである。 The present invention has been made in view of the above-described problems. In a SaaS / ASP type service shared by a plurality of service providers, interference such as performance between services of different service providers occurs. The present invention provides a difficult service providing system, its computer program, and a data processing method.
 本発明の第一のサービス提供システムは、複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行手段と、複数のクライアント装置からのリクエストを受信してサービス実行手段に分配する負荷分散手段と、それぞれのサービス実行手段のサービス実行状況を監視するサービス実行監視部と、監視されるサービス実行状況に対応してサービスを制御するアクセス制御手段と、を有する。 The first service providing system of the present invention includes a service execution unit that executes a service in response to a request from a client device for each of a plurality of service providers, and a service execution unit that receives a request from a plurality of client devices. Load distribution means for distributing to each other, a service execution monitoring unit for monitoring the service execution status of each service execution means, and an access control means for controlling the service in accordance with the monitored service execution status.
 本発明の第二のサービス提供システムは、複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行手段と、特定のサービス提供者のサービスのみを処理可能な専用型サービス実行手段と、複数のクライアント装置からのリクエストを受信してサービス実行手段に分配する負荷分散手段と、それぞれのサービス実行手段のサービス実行状況を監視するサービス実行監視手段と、監視されるサービス実行状況に対応してサービスを制御するアクセス制御手段と、アクセス制御手段は、サービス実行監視手段からの操作で、特定の負荷の高いサービス提供者向けのリクエストのみを、その特定のサービス提供者向け処理専用のサービス提供システムで実行させるよう負荷分散手段を設定する。 The second service providing system of the present invention includes a service execution means for executing a service in response to a request from a client device for each of a plurality of service providers, and a dedicated type capable of processing only a service of a specific service provider. Service execution means, load distribution means for receiving requests from a plurality of client devices and distributing the requests to the service execution means, service execution monitoring means for monitoring the service execution status of each service execution means, and monitored service execution The access control means for controlling the service according to the situation, and the access control means processes only the request for the specific service provider with a high load by the operation from the service execution monitoring means. Load balancing means is set to be executed by a dedicated service providing system.
 本発明の第三のサービス提供システムは、複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行手段と、複数のクライアント装置からのリクエストを受信してサービス実行手段に分配する負荷分散手段と、それぞれのサービス実行手段のサービス実行状況を監視するサービス実行監視手段と、監視されるサービス実行状況に対応してサービスを制御するアクセス制御手段と、サービス提供者ごとの課金情報を管理する課金管理手段と、定期的にサービス提供者ごとの負荷情報をアクセス制御手段に通知するサービス実行監視手段と、を有し、アクセス制御手段は、通知された負荷情報に基づき、高負荷時に課金管理手段から取得した課金情報をもとに課金割合が低いのに負荷が高いサービス提供者のリクエストをブロックする。 A third service providing system of the present invention includes a service execution unit that executes a service in response to a request from a client device for each of a plurality of service providers, and a service execution unit that receives a request from a plurality of client devices. Load distribution means for distributing to each other, service execution monitoring means for monitoring the service execution status of each service execution means, access control means for controlling the service in accordance with the monitored service execution status, and for each service provider Charging management means for managing charging information, and service execution monitoring means for periodically notifying the access control means of load information for each service provider, the access control means based on the notified load information, Although the charging rate is low based on the charging information acquired from the charging management means at high load, the load is high. To block the screw provider of the request.
 本発明の第一のコンピュータプログラムは、複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのコンピュータプログラムであって、クライアント装置からのリクエストに対応してサービスを実行するサービス実行処理と、複数のクライアント装置からのリクエストを受信してサービス実行処理に分配する負荷分散処理と、それぞれのサービス実行処理のサービス実行状況を監視するサービス実行監視処理と、監視されるサービス実行状況に対応してサービスを制御するアクセス制御処理と、をサービス提供システムに実行させる。 A first computer program of the present invention is a computer program of a service providing system that communicates with a client device for each of a plurality of service providers, and a service execution process that executes a service in response to a request from the client device; Corresponding to load distribution processing that receives requests from multiple client devices and distributes them to service execution processing, service execution monitoring processing that monitors the service execution status of each service execution processing, and the monitored service execution status The service providing system executes an access control process for controlling the service.
 本発明の第二のコンピュータプログラムは、複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのコンピュータプログラムであって、複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行処理と、特定のサービス提供者のサービスのみを処理可能な専用型サービス実行処理と、複数のクライアント装置からのリクエストを受信してサービス実行処理に分配する負荷分散処理と、それぞれのサービス実行処理のサービス実行状況を監視するサービス実行監視処理と、監視されるサービス実行状況に対応してサービスを制御し、サービス実行監視処理からの操作で、特定の負荷の高いサービス提供者向けのリクエストのみを、その特定のサービス提供者向け処理専用のサービス提供システムで実行させるよう負荷分散処理を設定するアクセス制御処理と、をサービス提供システムに実行させる。 A second computer program of the present invention is a computer program of a service providing system that communicates with a client device for each of a plurality of service providers, and provides a service in response to a request from the client device for each of a plurality of service providers. A service execution process to be executed, a dedicated service execution process capable of processing only a service of a specific service provider, a load distribution process for receiving requests from a plurality of client devices and distributing the requests to the service execution processes, Service execution monitoring process that monitors the service execution status of the service execution process, and the service is controlled according to the monitored service execution status. Only process the request for that particular service provider An access control process for setting the load balancing process so as to be executed by a dedicated service providing system is allowed to execute the service providing system.
 本発明の第三のコンピュータプログラムは、複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのコンピュータプログラムであって、複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行処理と、複数のクライアント装置からのリクエストを受信してサービス実行処理に分配する負荷分散処理と、それぞれのサービス実行処理のサービス実行状況を監視するサービス実行監視処理と、監視されるサービス実行状況に対応してサービスを制御するアクセス制御処理と、サービス提供者ごとの課金情報を管理する課金管理処理と、定期的にサービス提供者ごとの負荷情報をアクセス制御処理に通知するサービス実行監視処理と、通知された負荷情報に基づき、高負荷時に課金管理処理から取得した課金情報をもとに課金割合が低いのに負荷が高いサービス提供者のリクエストをブロックするアクセス制御処理と、をサービス提供システムに実行させる。 A third computer program of the present invention is a computer program of a service providing system that communicates with a client device for each of a plurality of service providers, and provides a service in response to a request from the client device for each of a plurality of service providers. Service execution processing to be executed, load distribution processing for receiving requests from a plurality of client devices and distributing them to the service execution processing, service execution monitoring processing for monitoring the service execution status of each service execution processing, and monitoring Access control processing that controls services according to service execution status, billing management processing that manages billing information for each service provider, and service execution that periodically notifies load control information for each service provider to access control processing Based on the monitoring process and the notified load information, Executing an access control process load from the billing management processing of the original to the charging rate of the charging information acquired is low to block the high service provider requests under load, the service providing system.
 本発明の第一のデータ処理方法は、複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのデータ処理方法であって、クライアント装置からのリクエストに対応してサービスを実行するサービス実行動作と、複数のクライアント装置からのリクエストを受信してサービス実行処理に分配する負荷分散動作と、それぞれのサービス実行処理のサービス実行状況を監視するサービス実行監視動作と、監視されるサービス実行状況に対応してサービスを制御するアクセス制御動作と、を有する。 A first data processing method of the present invention is a data processing method of a service providing system that communicates with a client device for each of a plurality of service providers, and executes a service in response to a request from the client device. Supports load balancing operation that receives requests from multiple client devices and distributes them to service execution processing, service execution monitoring operation that monitors the service execution status of each service execution processing, and monitored service execution status And an access control operation for controlling the service.
 本発明の第二のデータ処理方法は、複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのデータ処理方法であって、複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行動作と、特定のサービス提供者のサービスのみを処理可能な専用型サービス実行動作と、複数のクライアント装置からのリクエストを受信してサービス実行処理に分配する負荷分散動作と、それぞれのサービス実行処理のサービス実行状況を監視するサービス実行監視動作と、監視されるサービス実行状況に対応してサービスを制御し、サービス実行監視処理からの操作で、特定の負荷の高いサービス提供者向けのリクエストのみを、その特定のサービス提供者向け処理専用のサービス提供システムで実行させるよう負荷分散処理を設定するアクセス制御動作と、を有する。 A second data processing method of the present invention is a data processing method of a service providing system that communicates with a client device for each of a plurality of service providers, and corresponds to a request from a client device for each of a plurality of service providers. A service execution operation for executing a service, a dedicated service execution operation capable of processing only a service of a specific service provider, a load distribution operation for receiving requests from a plurality of client devices and distributing them to the service execution processing, Service execution monitoring operation that monitors the service execution status of each service execution process, and the service is controlled according to the monitored service execution status. A service dedicated to processing only requests for that specific service provider Having an access control operation for setting the load balancing process so as to be executed by the test system.
 本発明の第三のデータ処理方法は、複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのデータ処理方法であって、複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行動作と、複数のクライアント装置からのリクエストを受信してサービス実行処理に分配する負荷分散動作と、それぞれのサービス実行処理のサービス実行状況を監視するサービス実行監視動作と、監視されるサービス実行状況に対応してサービスを制御するアクセス制御動作と、サービス提供者ごとの課金情報を管理する課金管理動作と、定期的にサービス提供者ごとの負荷情報をアクセス制御処理に通知するサービス実行監視動作と、通知された負荷情報に基づき、高負荷時に課金管理処理から取得した課金情報をもとに課金割合が低いのに負荷が高いサービス提供者のリクエストをブロックするアクセス制御動作と、を有する。 A third data processing method of the present invention is a data processing method of a service providing system that communicates with a client device for each of a plurality of service providers, and corresponds to a request from a client device for each of a plurality of service providers. Service execution operation for executing a service, load distribution operation for receiving requests from a plurality of client devices and distributing the requests to service execution processing, service execution monitoring operation for monitoring the service execution status of each service execution processing, and monitoring Access control operation for controlling the service in accordance with the service execution status, billing management operation for managing billing information for each service provider, and periodically reporting load information for each service provider to the access control processing Based on the service execution monitoring operation and the notified load information, charging Having an access control operation to block high load service provider requests billing information to the low billing rate based on acquired from the processing.
 なお、本発明の各種の構成要素は、その機能を実現するように形成されていればよく、例えば、所定の機能を発揮する専用のハードウェア、所定の機能がコンピュータプログラムにより付与されたサービス提供システム、コンピュータプログラムによりサービス提供システムに実現された所定の機能、これらの任意の組み合わせ、等として実現することができる。 Note that the various components of the present invention need only be formed so as to realize their functions. For example, dedicated hardware that exhibits a predetermined function, service provision provided with a predetermined function by a computer program It can be realized as a system, a predetermined function realized in the service providing system by a computer program, an arbitrary combination thereof, or the like.
 また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。 The various components of the present invention do not necessarily have to be independent of each other. A plurality of components are formed as a single member, and a single component is formed of a plurality of members. It may be that a certain component is a part of another component, a part of a certain component overlaps with a part of another component, or the like.
 また、本発明のコンピュータプログラムおよびデータ処理方法は、複数の処理および動作を順番に記載してあるが、その記載の順番は複数の処理および複数の動作を実行する順番を限定するものではない。 In the computer program and data processing method of the present invention, a plurality of processes and operations are described in order. However, the order of description does not limit the order of executing the plurality of processes and the plurality of operations.
 このため、本発明のコンピュータプログラムおよびデータ処理方法を実施するときには、その複数の処理および複数の動作の順番は内容的に支障しない範囲で変更することができる。 For this reason, when implementing the computer program and data processing method of the present invention, the order of the plurality of processes and the plurality of operations can be changed within a range that does not hinder the contents.
 さらに、本発明のコンピュータプログラムおよびデータ処理方法は、複数の処理および複数の動作が個々に相違するタイミングで実行されることに限定されない。このため、ある処理および動作の実行中に他の処理および動作が発生すること、ある処理および動作の実行タイミングと他の処理および動作の実行タイミングとの一部ないし全部が重複していること、等でもよい。 Furthermore, the computer program and the data processing method of the present invention are not limited to being executed at a timing when a plurality of processes and a plurality of operations are individually different. For this reason, other processes and operations occur during execution of certain processes and operations, and the execution timing of certain processes and operations overlaps with the execution timing of other processes and operations. Etc.
 また、本発明で云うサービス提供システムは、コンピュータプログラムを読み取って対応する処理動作を実行できるように、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、I/F(Interface)ユニット、等の汎用デバイスで構築されたハードウェア、所定の処理動作を実行するように構築された専用の論理回路、これらの組み合わせ、等として実施することができる。 In addition, the service providing system according to the present invention can read a computer program and execute a corresponding processing operation, such as a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), an I / F. It can be implemented as hardware constructed by general-purpose devices such as (Interface) units, dedicated logic circuits constructed to execute predetermined processing operations, combinations thereof, and the like.
 なお、本発明でコンピュータプログラムに対応した各種動作をサービス提供システムに実行させることは、各種デバイスをサービス提供システムに動作制御させることなども意味している。 In the present invention, causing the service providing system to execute various operations corresponding to the computer program also means causing the service providing system to control the operation of various devices.
 例えば、サービス提供システムに各種データを記憶させることは、サービス提供システムに固定されているHDD(Hard Disc Drive)等の情報記憶媒体にCPUが各種データを格納すること、サービス提供システムに交換自在に装填されているCD-R(Compact Disc-Recordable)等の情報記憶媒体にCPUがCDドライブで各種データを格納すること、等を許容する。 For example, storing various data in the service providing system means that the CPU stores various data in an information storage medium such as an HDD (Hard Disk Drive) fixed to the service providing system, and can be exchanged for the service providing system. The CPU allows various data to be stored by the CD drive in an information storage medium such as a CD-R (Compact Disc-Recordable) loaded.
 本発明のサービス提供システムでは、複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスをサービス実行手段が実行する。複数のクライアント装置からのリクエストを受信してサービス実行手段に負荷分散手段が分配する。それぞれのサービス実行手段のサービス実行状況をサービス実行監視部が監視する。監視されるサービス実行状況に対応してサービスをアクセス制御手段が制御する。同じサービスを共有するSaaS型などの提供形態では、単純に外部観測しただけではサービス提供者ごとの処理内部の負荷状況を知ることは困難である。しかし、上述のようにサービス実行状況を監視してサービスを制御するので、異なるサービス提供者のサービス間での性能などを干渉しにくくすることができる。 In the service providing system of the present invention, service execution means executes a service in response to a request from a client device for each of a plurality of service providers. The requests from the plurality of client devices are received and the load distribution means distributes them to the service execution means. The service execution monitoring unit monitors the service execution status of each service execution means. The access control means controls the service corresponding to the monitored service execution status. In the provision form such as the SaaS type sharing the same service, it is difficult to know the load situation inside the processing for each service provider simply by external observation. However, since the service execution status is monitored and the service is controlled as described above, it is possible to make it difficult to interfere with performance between services of different service providers.
 上述した目的、および、その他の目的、特徴および利点は、以下に述べる好適な実施の形態、および、それに付随する以下の図面によって、さらに明らかになる。 The above-described object and other objects, features, and advantages will be further clarified by a preferred embodiment described below and the following accompanying drawings.
本発明の実施の第一の形態のサービス提供システムの論理構造を示す模式的なブロック図である。It is a typical block diagram which shows the logical structure of the service provision system of 1st Embodiment of this invention. サービス実行監視部の詳細な構成を示すブロック図である。It is a block diagram which shows the detailed structure of a service execution monitoring part. サービスアプリケーションにリクエストが到着する際の動作を示すフローチャートである。It is a flowchart which shows the operation | movement when a request arrives at a service application. サービスアプリケーション動作中の処理状況の監視動作を示すフローチャートである。It is a flowchart which shows the monitoring operation | movement of the process condition during service application operation | movement. サービス提供者別アクセス制御部からの監視情報を受信した際のサービス提供者別処理状況管理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the process condition management part classified by service provider at the time of receiving the monitoring information from the access control part classified by service provider. サービス提供者別アクセス制御部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the access control part according to service provider. 本発明の実施の第二の形態の監視情報を受信した際のサービス提供者別処理状況管理部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the process condition management part classified by service provider at the time of receiving the monitoring information of 2nd Embodiment of this invention. 本発明の実施の第三の形態のサービス提供システムの論理構造を示す模式的なブロック図である。It is a typical block diagram which shows the logical structure of the service provision system of the 3rd embodiment of this invention. サービス実行監視部の詳細な構成を示すブロック図である。It is a block diagram which shows the detailed structure of a service execution monitoring part. サービス提供者別処理状況管理部が監視情報を受信した際の動作を示すフローチャートである。It is a flowchart which shows operation | movement when the process condition management part according to service provider receives monitoring information. 特定サービス提供者の負荷状況を通知されたサービス提供者別アクセス制御部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the access control part according to service provider notified of the load condition of a specific service provider. 特定サービス提供者向けの処理を一時的に制限する通知を受信したサービス実行監視部の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the service execution monitoring part which received the notification which restrict | limits the process for specific service providers temporarily. 一従来例のサービス提供システムの論理構造を示す模式的なブロック図である。It is a typical block diagram which shows the logical structure of the service provision system of one prior art example. 本発明の実施の第四の形態のサービス提供システムの論理構造を示す模式的なブロック図である。It is a typical block diagram which shows the logical structure of the service provision system of the 4th Embodiment of this invention. 本発明の実施の第五の形態のサービス提供システムの論理構造を示す模式的なブロック図である。It is a typical block diagram which shows the logical structure of the service provision system of the 5th Embodiment of this invention. 実施の第四の形態のサービス提供者別アクセス制御部の処理動作を示すフローチャートである。It is a flowchart which shows the processing operation of the access control part according to service provider of 4th Embodiment. 実施の第五の形態のサービス提供者別アクセス制御部の処理動作を示すフローチャートである。It is a flowchart which shows the processing operation of the access control part classified by service provider of 5th Embodiment. 実施の第五の形態でサービス提供者別アクセス制御部がリクエストを受信した場合の処理動作を示すフローチャートである。It is a flowchart which shows a processing operation when the access control part according to service provider receives a request in the fifth embodiment. 本発明の実施の第五の形態のサービス提供システムの要部の論理構造を示す模式的なブロック図である。It is a typical block diagram which shows the logical structure of the principal part of the service provision system of the 5th Embodiment of this invention.
 本発明の実施の第一の形態を図1ないし図7を参照して以下に説明する。ただし、本実施の形態に関して前述した一従来例と同一の部分は、同一の名称を使用して詳細な説明は省略する。 A first embodiment of the present invention will be described below with reference to FIGS. However, the same portions as those of the conventional example described above with respect to the present embodiment are denoted by the same names, and detailed description thereof is omitted.
 図1を参照すると、本発明の第一の実施の形態は、クライアント装置101からのリクエストを受信してサービス実行部105~107に適切にリクエストを分配する負荷分散管理部104と、クライアント装置101と負荷分散管理部104の間に配置され、サービス実行状況に対応してサービスの拒否や一時停止などを実行するサービス提供者別アクセス制御部103と、負荷分散管理部104から分配されたリクエストに対応して適切にサービスを実行するサービス実行部105~107と、実際にリクエストに対応した処理を実行するサービスアプリケーション115~117と、それぞれのサービス実行部105~107内で動作しているサービスアプリケーション115~117の実行状況を監視しているサービス実行監視部120と、から構成される。 Referring to FIG. 1, in the first embodiment of the present invention, a load distribution management unit 104 that receives a request from a client device 101 and appropriately distributes the request to service execution units 105 to 107, and a client device 101. Service provider-specific access control unit 103 that executes service rejection or suspension according to the service execution status, and requests distributed from the load distribution management unit 104. Service execution units 105 to 107 that appropriately execute services correspondingly, service applications 115 to 117 that actually execute processing corresponding to requests, and service applications that operate in the respective service execution units 105 to 107 Service execution monitoring unit that monitors the execution statuses 115 to 117 20, it consists of.
 サービス実行部105~107の動作を以下に説明する。サービス実行部105~107は、リクエストに対応してサービスアプリケーション115~117の実行インスタンスを生成する。 The operation of the service execution units 105 to 107 will be described below. The service execution units 105 to 107 generate execution instances of the service applications 115 to 117 corresponding to the requests.
 本発明の前提であるSaaS/ASP型のビジネスモデルでは、同一のサービスアプリケーション115~117を複数のサービス提供者で共有するので、処理内容は同じで内部データがサービス提供者ごとに異なる実行インスタンスが生成される。 In the SaaS / ASP business model, which is the premise of the present invention, the same service applications 115 to 117 are shared by a plurality of service providers, so that there are execution instances in which the processing contents are the same and internal data is different for each service provider. Generated.
 サービス実行監視部120は、上記のように生成されて実行されているサービスアプリケーション115~117の実行インスタンスの実行状況を対応するサービス提供者ごとに整理して、サービスアプリケーション115~117の実行を制御する。 The service execution monitoring unit 120 organizes the execution status of the execution instances of the service applications 115 to 117 generated and executed as described above for each corresponding service provider, and controls the execution of the service applications 115 to 117. To do.
 また、サービス提供者別アクセス制御部103は、サービス実行監視部120からの操作で特定のサービス提供者が要求するサービスへのリクエストを拒否したり一時保留したりする。 Also, the service provider-specific access control unit 103 rejects or temporarily holds a request for a service requested by a specific service provider by an operation from the service execution monitoring unit 120.
 つぎに、図2を参照して図1のサービス実行監視部120の内部構成を以下に詳細に説明する。サービス実行監視部120は、複数のサービス実行部105~107内での複数のサービス処理について、サービス提供者別の処理状況を集計して管理するサービス提供者別処理状況管理部121と、リクエストごとに実行されるサービス処理と、そのサービス処理が、どのサービス提供者のものであるかを保持しておく処理・サービス提供者関係管理部122と、クライアント装置101からのリクエスト到着時にそのリクエストが、どのサービス提供者のサービス処理を要求しているかを識別するサービス提供者識別部123と、サービスアプリケーション115~117の複数の箇所に対してアクセスすることでリクエストに対するサービスアプリケーション115~117の処理状況を監視し、状況に対応して処理を一時停止および中止させる処理監視制御手段であるサービス提供者別アクセス制御部103から構成される。 Next, the internal configuration of the service execution monitoring unit 120 in FIG. 1 will be described in detail below with reference to FIG. The service execution monitoring unit 120 includes a service provider-specific process status management unit 121 that aggregates and manages the process status of each service provider for a plurality of service processes in the service execution units 105 to 107, and each request. And the service provider relationship management unit 122 that holds which service provider the service process is executed by, and the request when the request from the client device 101 arrives, The service provider identification unit 123 for identifying which service provider is requesting the service processing and the processing status of the service applications 115 to 117 with respect to the request by accessing a plurality of locations of the service applications 115 to 117. Monitor and pause processing in response to the situation and Composed of the service provider by the access control unit 103 is a processing monitoring control means for locked.
 サービス提供者識別部123は、サービスアプリケーション115~117に対するリクエストを解析し、どのサービス提供者向けのサービスとして動作したのかを識別する。 The service provider identification unit 123 analyzes requests for the service applications 115 to 117 and identifies which service provider the service was operated for.
 このとき、サービス提供者識別部123は、サービスアプリケーション115~117の処理とは独立に定義され、サービスアプリケーション115~117に対してプラグインされる形で目的の処理を実行する。 At this time, the service provider identification unit 123 is defined independently of the processing of the service applications 115 to 117, and executes the target processing in a form plugged into the service applications 115 to 117.
 さらに、サービス提供者識別部123は、外部からの操作によって、特定サービス提供者のサービス実行に割り込んでサービス実行そのものを拒否したり、一時保留したりする機能も持つ。 Further, the service provider identification unit 123 has a function of interrupting the service execution of the specific service provider and rejecting the service execution itself or temporarily holding it by an external operation.
 こうしたアプリケーションに別処理をプラグインする仕組みを実現する技術の一例としては、アスペクト指向プログラミングであるAOP(Aspect Oriented Programming)などを使用することができる。 As an example of a technology for realizing a mechanism for plugging in another process into such an application, AOP (Aspect Oriented Programming) that is aspect-oriented programming can be used.
 同様に、サービス提供者別アクセス制御部103は、サービスアプリケーション115~117のいくつかの箇所にAOPもしくは、それと同等の技術でプラグインされる形で挿入され、プラグインされた箇所の処理時間やDBアクセスした際のデータ量、送受信メッセージサイズなどを監視する。また、サービス提供者別アクセス制御部103はプラグインされた箇所で処理を中断したり、一時保留したりすることができる。 Similarly, the access control unit 103 for each service provider is inserted into some places of the service applications 115 to 117 in a form that is plugged in by AOP or equivalent technology, and processing time of the plugged-in part Monitor the amount of data, the size of sent and received messages, etc. when accessing the database. Further, the access control unit 103 for each service provider can suspend processing or temporarily suspend processing at the plugged-in location.
 上述のようなサービス提供システム110は、コンピュータプログラムに対応して動作するコンピュータ装置などにより論理的に実現される。このようなコンピュータプログラムは、例えば、クライアント装置からのリクエストに対応してサービスを実行するサービス実行処理と、複数のクライアント装置からのリクエストを受信してサービス実行処理に分配する負荷分散処理と、それぞれのサービス実行処理のサービス実行状況を監視するサービス実行監視処理と、監視されるサービス実行状況に対応してサービスを制御するアクセス制御処理と、をサービス提供システム110に実行させるように記述される。 The service providing system 110 as described above is logically realized by a computer device or the like that operates in accordance with a computer program. Such a computer program includes, for example, a service execution process that executes a service in response to a request from a client apparatus, a load distribution process that receives requests from a plurality of client apparatuses and distributes the requests to the service execution process, and The service providing system 110 executes service execution monitoring processing for monitoring the service execution status of the service execution processing and access control processing for controlling the service in accordance with the monitored service execution status.
 つぎに、本実施のサービス提供システム110のデータ処理方法を説明する。まず、サービス実行監視部120はサービス実行部105~107でのサービスアプリケーション115~117の動作に対してイベント駆動型で動作する。 Next, a data processing method of the service providing system 110 according to the present embodiment will be described. First, the service execution monitoring unit 120 operates in an event-driven manner with respect to the operation of the service applications 115 to 117 in the service execution units 105 to 107.
 そのため、サービスアプリケーション115~117で発生するイベントごとの動作手順を図3~図6のフローチャートを参照しながら動作について説明する。まず、サービスアプリケーション115~117にリクエストが到着する際の処理動作P1000を、図3を参照して以下に説明する。 Therefore, the operation procedure for each event occurring in the service applications 115 to 117 will be described with reference to the flowcharts of FIGS. First, the processing operation P1000 when a request arrives at the service applications 115 to 117 will be described below with reference to FIG.
 サービス実行部105~107がクライアント装置101からのサービスアプリケーション115~117に対するリクエストを受信すると、そのサービスアプリケーション115~117にプラグインされたサービス提供者識別部123がリクエストを見てどのサービス提供者向けのリクエストかを識別する(P1001)。 When the service execution units 105 to 107 receive the requests for the service applications 115 to 117 from the client device 101, the service provider identification unit 123 plugged into the service applications 115 to 117 looks at the request and for which service provider (P1001).
 サービス提供者識別部123はサービス提供者の識別子とサービスアプリケーション115~117の実行インスタンスの識別子を組にして処理・サービス提供者関係管理部122に送付する(P1002)。 The service provider identifying unit 123 sends the identifier of the service provider and the identifier of the execution instance of the service application 115 to 117 to the processing / service provider relationship management unit 122 (P1002).
 処理・サービス提供者関係管理部122は受信したサービス提供者識別子とサービスアプリケーション115~117の実行インスタンス識別子の組を記録する(P1003)。 The processing / service provider relationship management unit 122 records the combination of the received service provider identifier and the execution instance identifiers of the service applications 115 to 117 (P1003).
 つぎに、サービスアプリケーション115~117動作中の処理状況の監視動作P1100について、図4を参照して以下に説明する。処理監視制御部124はサービスアプリケーション115~117の実行インスタンスにプラグインされており、実行インスタンスの処理がプラグインされている箇所に到達する際にその実行インスタンスが対応するサービス提供者情報を処理・サービス提供者関係管理部122へ問い合わせる(P1101)。 Next, the processing status monitoring operation P1100 during operation of the service applications 115 to 117 will be described below with reference to FIG. The process monitoring control unit 124 is plugged into the execution instances of the service applications 115 to 117, and processes the service provider information corresponding to the execution instance when the execution instance process reaches the plugged-in location. An inquiry is made to the service provider relationship management unit 122 (P1101).
 処理監視制御部124がプラグインされている周辺での処理にかかる時間、データベースアクセス時の交換データ量、通信データ量などの情報を収集する(P1102)。P1101で取得したサービス提供者情報とP1102で収集した実行状況の情報を監視情報としてサービス提供者別処理状況管理部121へ送付する(P1103)。 Information such as the time required for processing in the vicinity where the process monitoring control unit 124 is plugged in, the amount of exchange data when accessing the database, and the amount of communication data is collected (P1102). The service provider information acquired in P1101 and the execution status information collected in P1102 are sent as monitoring information to the processing status management unit 121 for each service provider (P1103).
 なお、処理監視制御部124はサービスアプリケーション115~117の一つ以上の箇所にプラグインされており、実行インスタンスの処理がその箇所に到達する都度、対応する処理監視制御部124の上記処理が呼び出される。 The process monitoring control unit 124 is plugged into one or more locations of the service applications 115 to 117, and each time the execution instance process reaches that location, the above processing of the corresponding process monitoring control unit 124 is called. It is.
 つぎに、処理監視制御部124からの監視情報を受信した際のサービス提供者別処理状況管理部121の動作P1200について、図5を参照して説明する。サービス提供者別処理状況管理部121は処理監視制御部124からの実行状況の情報を受信すると、サービス提供者ごとの処理状況を記録する(P1201)。 Next, the operation P1200 of the service provider-specific process status management unit 121 when monitoring information is received from the process monitoring control unit 124 will be described with reference to FIG. When receiving the execution status information from the process monitoring control unit 124, the service provider-specific processing status management unit 121 records the processing status for each service provider (P1201).
 他のサービス提供者の処理と比較して突出して負荷の要因となっているサービス提供者がいないか調べる(P1202)。P1202の条件のサービス提供者がいない場合(P1202-N)、処理を終了し、つぎの処理監視制御部124からの監視情報を待つ。 Investigate whether there is a service provider that is prominently causing a load compared to the processing of other service providers (P1202). If there is no service provider with the condition of P1202 (P1202-N), the process ends, and monitoring information from the next process monitoring control unit 124 is awaited.
 P1202の条件のサービス提供者がいる場合(P1202-Y)、サービス提供者別処理状況管理部121はサービス提供者別アクセス制御部103に対して、監視しているサービス実行部105~107の識別子と、そのサービス提供者の識別子を通知する(P1203)。 When there is a service provider with the condition of P1202 (P1202-Y), the service provider-specific processing status management unit 121 identifies the identifiers of the service execution units 105 to 107 that are being monitored with respect to the service provider-specific access control unit 103. Then, the identifier of the service provider is notified (P1203).
 つぎに、サービス提供システム110内の何れかのサービス実行監視部120のサービス提供者別処理状況管理部121からサービス実行部105~107の識別子とサービス提供者の識別子を受け取ったサービス提供者別アクセス制御部103の動作P1300について、図6を参照して以下に説明する。 Next, access by service provider that has received the identifiers of the service execution units 105 to 107 and the identifiers of the service providers from the processing status management unit 121 by service provider of any service execution monitoring unit 120 in the service providing system 110. The operation P1300 of the control unit 103 will be described below with reference to FIG.
 まず、サービス提供者別アクセス制御部103はサービス提供者別処理状況管理部121から通知されたサービス提供者識別子とサービス実行部識別子の組を記録する(P1301)。 First, the access control unit 103 for each service provider records a set of the service provider identifier and the service execution unit identifier notified from the processing status management unit 121 for each service provider (P1301).
 記録した情報から該当のサービス提供者のリクエストを割り振ることのできるサービス実行部105~107が存在するかを調べる(P1302)。割り振るサービス実行部105~107がなければ(P1302-N)、以降のそのサービス提供者のリクエストに対して処理できない旨のエラーを返す(P1303)。 It is checked from the recorded information whether there is a service execution unit 105-107 that can allocate the request of the corresponding service provider (P1302). If there is no service execution unit 105 to 107 to be allocated (P1302-N), an error indicating that the service provider cannot process the subsequent request from the service provider is returned (P1303).
 割り振るサービス実行部105~107がある場合(P1302-Y)、負荷分散管理部104にそのサービス提供者に対するリクエストを割り振ってよいサービス実行部識別子を設定する(P1304)。 When there are service execution units 105 to 107 to be allocated (P1302-Y), a service execution unit identifier to which a request for the service provider may be allocated is set in the load distribution management unit 104 (P1304).
 つぎに、本実施の形態の効果について説明する。本実施の形態では、サービスアプリケーション115~117の外部から処理監視制御部124をプラグインし、一つ一つの実行インスタンスの内部処理の監視情報をもとにリクエストの受信を制御する。 Next, the effect of this embodiment will be described. In this embodiment, the process monitoring control unit 124 is plugged in from the outside of the service applications 115 to 117, and reception of requests is controlled based on monitoring information of internal processes of each execution instance.
 同じサービスを共有するSaaS型などの提供形態では、単純に外部観測しただけではサービス提供者ごとの処理内部の負荷状況を知ることは困難である。しかし、上述のようにサービス実行状況を監視してサービスを制御するので、SaaS/ASP型のサービスアプリケーション115~117を共有するような形態のサービス提供システムでもサービス提供者ごとの処理負荷をもとに流量制御ができる。 In the provision form such as the SaaS type sharing the same service, it is difficult to know the load situation inside the processing for each service provider simply by external observation. However, since the service execution status is monitored and the service is controlled as described above, even in the service providing system in which the SaaS / ASP type service applications 115 to 117 are shared, the processing load for each service provider is used. The flow rate can be controlled.
 また、リクエスト受信部のコネクション数だけでなく、内部負荷を考慮した流量制御が可能である。このため、異なるサービス提供者のサービス間での性能などを干渉しにくくすることができる。 Also, it is possible to control the flow rate considering the internal load as well as the number of connections in the request receiver. For this reason, it is possible to make it difficult to interfere with performance between services of different service providers.
 つぎに、本発明の実施の第二の形態を図7を参照して以下に詳細に説明する。処理監視制御部124からの監視情報を受信した際のサービス提供者別処理状況管理部121の動作P1250について図7を参照して以下に説明する。 Next, a second embodiment of the present invention will be described in detail below with reference to FIG. The operation P1250 of the service provider-specific process status management unit 121 when receiving monitoring information from the process monitoring control unit 124 will be described below with reference to FIG.
 サービス提供者別処理状況管理部121はサービス提供者別アクセス制御部103からの実行状況の情報を受信すると、サービス提供者ごとの処理状況を記録する(P1251)。そのサービス提供者向けの実行インスタンスが一定数以上異常状態でないかどうかを調べる(P1252)。 When the service provider-specific process status management unit 121 receives the execution status information from the service provider-specific access control unit 103, it records the process status for each service provider (P1251). It is checked whether or not the execution instances for the service provider are in an abnormal state over a certain number (P1252).
 一定数以上である場合(P1252-Y)、サービス提供者別アクセス制御部103に対して該当サービス提供者の実行インスタンスを強制終了させ、P1255へジャンプする(P1253)。一定数以上でない場合(P1252-N)、他のサービス提供者の処理と比較して突出して負荷の要因となっているサービス提供者がいないか調べる(P1254)。 If the number is equal to or greater than a certain number (P1252-Y), the service provider-specific access control unit 103 is forced to terminate the execution instance of the service provider and jump to P1255 (P1253). If the number is not more than a certain number (P1252-N), it is checked whether there is a service provider that is prominently causing a load compared to the processing of other service providers (P1254).
 P1254の条件のサービス提供者がいない場合(P1254-N)、処理を終了し、つぎのサービス提供者別アクセス制御部103からの監視情報を待つ。P1254の条件のサービス提供者がいる場合(P1254-Y)、サービス提供者別処理状況管理部121はサービス提供者別アクセス制御部103に対して、監視しているサービス実行部105~107の識別子と、そのサービス提供者の識別子を通知する(P1255)。 If there is no service provider with the condition of P1254 (P1254-N), the process ends, and the next monitoring information from the service provider-specific access control unit 103 is waited for. When there is a service provider with the condition of P1254 (P1254-Y), the service provider specific processing status management unit 121 identifies the identifiers of the service execution units 105 to 107 that are being monitored with respect to the service provider specific access control unit 103. Then, the identifier of the service provider is notified (P1255).
 本発明の実施の第二の形態の効果について説明する。本実施の形態では、SaaS/ASP型のサービスアプリケーション115~117を共有するような形態のサービス提供システムでもサービス提供者ごとの処理負荷をもとに流量制御をするとともに、特定のサービス提供者向け実行インスタンスに異常が発生した場合にサービスアプリケーション115~117全体を停止するのではなく、そのサービス提供者向けの実行インスタンスのみを停止し、以降のそのサービス提供者向けのリクエストのみを拒否することができる。 The effect of the second embodiment of the present invention will be described. In the present embodiment, even in a service providing system in which SaaS / ASP type service applications 115 to 117 are shared, flow control is performed based on the processing load of each service provider, and for a specific service provider. When an abnormality occurs in the execution instance, the entire service application 115 to 117 is not stopped, but only the execution instance for the service provider is stopped, and only subsequent requests for the service provider are rejected. it can.
 つぎに、本発明の実施の第三の形態を図8ないし図12を参照して以下に詳細に説明する。図8を参照すると、本発明の第三の実施の形態は、クライアント装置101からのリクエストを受信してサービス実行部105~107に適切にリクエストを分配する負荷分散管理部104と、負荷分散管理部104から分配されたリクエストに対応して適切にサービスを実行するサービス実行部105~107と、実際にリクエストに対応した処理を実行するサービスアプリケーション115~117と、それぞれのサービス実行部105~107内で動作しているサービスアプリケーション115~117の実行状況を監視しているサービス実行監視部130、システム内の全てのサービス実行監視部130からの監視情報を収集し、流量制御を指示するサービス提供者別アクセス制御部140から構成される。 Next, a third embodiment of the present invention will be described in detail below with reference to FIGS. Referring to FIG. 8, the third embodiment of the present invention receives a request from the client apparatus 101 and appropriately distributes the request to the service execution units 105 to 107, and a load distribution management. Service execution units 105 to 107 that appropriately execute services in response to requests distributed from the unit 104, service applications 115 to 117 that actually execute processing corresponding to requests, and service execution units 105 to 107, respectively. Service execution monitoring unit 130 that monitors the execution status of service applications 115 to 117 operating in the system, and collects monitoring information from all service execution monitoring units 130 in the system, and provides a service that instructs flow control The access control unit 140 is for each person.
 図9で図8のサービス実行監視部130の内部構成を詳細に説明する。サービス実行監視部130は、複数のサービス実行部105~107内での複数のサービス処理について、サービス提供者別の処理状況を集計して管理するサービス提供者別処理状況管理部131と、リクエストごとに実行されるサービス処理と、そのサービス処理が、どのサービス提供者のものであるかを保持しておく処理・サービス提供者関係管理部122と、クライアント装置101からのリクエスト到着時にそのリクエストが、どのサービス提供者のサービス処理を要求しているかを識別し、必要に対応して特定のサービス提供者向け処理を制限するサービス提供者識別部133と、サービスアプリケーション115~117の複数の箇所に対してアクセスすることでリクエストに対するサービスアプリケーション115~117の処理状況を監視し、状況に対応して処理を一時停止および中止させるサービス提供者別アクセス制御部140から構成される。 9, the internal configuration of the service execution monitoring unit 130 in FIG. 8 will be described in detail. The service execution monitoring unit 130 includes a service provider-specific process status management unit 131 that aggregates and manages the process status of each service provider for a plurality of service processes in the service execution units 105 to 107, and each request. And the service provider relationship management unit 122 that holds which service provider the service process is executed by, and the request when the request from the client device 101 arrives, A service provider identifying unit 133 that identifies which service provider is requesting service processing and restricts processing for a specific service provider in accordance with necessity, and a plurality of locations of the service applications 115 to 117 Access to the service applications 115 to 117 corresponding to the request. Monitoring the physical status, and a service provider by the access control unit 140 to suspend and cancel processing in response to the situation.
 本実施の形態のサービス提供者別処理状況管理部131がサービス提供者別アクセス制御部140からの監視情報を受信した際の動作P1270について、図10を参照して以下に説明する。 The operation P1270 when the processing status management unit 131 for each service provider according to the present embodiment receives the monitoring information from the access control unit 140 for each service provider will be described below with reference to FIG.
 サービス提供者別処理状況管理部121はサービス提供者別アクセス制御部140からの実行状況の情報を受信すると、サービス提供者ごとの処理状況を記録する(P1271)。前回該当サービス提供者の負荷評価をサービス提供者別アクセス制御部140で行ってから一定の時間が経過しているかどうかを調べる(P1272)。 When receiving the execution status information from the service provider-specific access control unit 140, the service provider-specific processing status management unit 121 records the processing status for each service provider (P1271). It is checked whether or not a certain time has passed since the service provider-specific access control unit 140 performed the load evaluation of the corresponding service provider last time (P1272).
 一定時間が経過していない場合(P1272-N)、一連の処理を終了し、つぎのサービス提供者別アクセス制御部140からの監視情報を待つ。一定時間が経過している場合(P1272-Y)、サービス提供者別処理状況管理部131はサービス提供者別アクセス制御部140に対して、監視しているサービス実行部105~107の識別子と、そのサービス提供者の識別子および負荷状況を通知する(P1273)。 If the predetermined time has not elapsed (P1272-N), the series of processing is terminated, and monitoring information from the next access control unit by service provider 140 is awaited. When the predetermined time has passed (P1272-Y), the service provider-specific process status management unit 131 provides the service provider-specific access control unit 140 with the identifiers of the service execution units 105 to 107 being monitored, The identifier of the service provider and the load status are notified (P1273).
 P1270の処理で特定サービス提供者の負荷状況を通知されたサービス提供者別アクセス制御部140の動作P1350を、図11を参照して以下に説明する。 The operation P1350 of the service provider-specific access control unit 140 notified of the load status of the specific service provider in the process of P1270 will be described below with reference to FIG.
 サービス提供者別アクセス制御部140はサービス提供者別処理状況管理部131から通知されたサービス提供者識別子とサービス実行部識別子の組である負荷情報を記録する(P1351)。 The access control unit 140 for each service provider records the load information that is a set of the service provider identifier and the service execution unit identifier notified from the processing status management unit 131 for each service provider (P1351).
 この時点以降、サービス提供者別アクセス制御部は他のサービス提供者別処理状況管理部131から同一のサービス提供者に関する負荷情報が通知されても無視する。通知の通知元のサービス実行監視部130以外の全てのサービス実行監視部130内のサービス提供者別処理状況管理部131から該当サービス提供者の負荷情報を取得する(P1352)。 From this point onward, the access control unit for each service provider ignores even if load information related to the same service provider is notified from the processing status management unit 131 for each other service provider. The load information of the service provider is acquired from the processing status management unit 131 for each service provider in all the service execution monitoring units 130 other than the service execution monitoring unit 130 that is the notification source (P1352).
 全サービス実行監視部からの該当サービス提供者の負荷情報を評価し、事前に設定されている上限を超えているかを判定する(P1353)。超えていなければ(P1353-N)、P1355以降の処理を実行する。 The load information of the corresponding service provider from all service execution monitoring units is evaluated, and it is determined whether or not the upper limit set in advance is exceeded (P1353). If not exceeded (P1353-N), the processing after P1355 is executed.
 超えていれば(P1353-Y)、全サービス実行監視部130のサービス提供者別処理状況管理部131へ該当サービス提供者のサービス処理を一時的に制限するよう通知する(P1354)。 If exceeded (P1353-Y), the service provider-specific process status management unit 131 of all service execution monitoring units 130 is notified to temporarily limit the service processing of the corresponding service provider (P1354).
 全サービス実行監視部130のサービス提供者別処理状況管理部131の該当サービス提供者向け負荷評価時刻を更新して終了する(P1355)。終了次第、P1351以後無視されていた該当サービス提供者に関する負荷情報の通知を再度受信できるようになる。 Update the load evaluation time for the corresponding service provider in the processing status management unit 131 for each service provider of the all service execution monitoring unit 130 and finish (P1355). Upon completion, it becomes possible to receive again notification of load information related to the service provider that has been ignored after P1351.
 つぎに、P1350の処理の結果、特定サービス提供者向けの処理を一時的に制限する通知を受信したサービス実行監視部130の動作P1400について、図12を参照して以下に説明する。 Next, the operation P1400 of the service execution monitoring unit 130 that has received a notification that temporarily restricts the process for the specific service provider as a result of the process of P1350 will be described below with reference to FIG.
 特定サービス提供者向けのサービス処理の制限を通知されたサービス実行監視部130のサービス提供者別処理状況管理部131は該当サービス提供者向け処理をブロックするようサービス提供者識別部133へ通知する(P1401)。 The processing status management unit 131 for each service provider of the service execution monitoring unit 130 notified of the restriction on the service processing for the specific service provider notifies the service provider identification unit 133 to block the processing for the corresponding service provider ( P1401).
 この通知により、サービス提供者識別部133で該当サービス提供者向け処理と判断されたものは、以降のサービス処理をブロックされ新規実行インスタンスが生成されない。 If the service provider identification unit 133 determines that the process is for the corresponding service provider by this notification, the subsequent service process is blocked and a new execution instance is not generated.
 同様に、サービス提供者別アクセス制御部140に対しても該当サービス提供者向け実行インスタンスの処理をブロックするよう通知する(P1402)。この通知により、サービス提供者別アクセス制御部は該当サービス提供者向け実行インスタンスの処理を一時停止する。 Similarly, the service provider-specific access control unit 140 is notified to block the processing of the execution instance for the corresponding service provider (P1402). By this notification, the access control unit for each service provider temporarily stops the processing of the execution instance for the corresponding service provider.
 ただし、一律に止めるのではなく全体処理の後半以降のサービス提供者別アクセス制御部140はそのまま実行インスタンスの処理を継続させてもよい。この状態で一定時間該当サービス提供者向け処理の制限を継続する(P1403)。この時間経過後、P1401,P1402で設定したアクセス制限を解除する(P1404)。 However, the service provider-specific access control unit 140 after the latter half of the entire process may continue the process of the execution instance as it is, instead of stopping uniformly. In this state, the restriction on the processing for the corresponding service provider is continued for a certain time (P1403). After this time has elapsed, the access restriction set in P1401 and P1402 is released (P1404).
 本発明の実施の第三の形態の効果について説明する。本実施の形態では、サービスアプリケーション115~117の外部からプラグインしたサービス提供者識別部133とサービス提供者別アクセス制御部140を利用して一定以上の負荷を発生しているサービス提供者の実行中処理をブロックすることによって現在発生しつつある特定サービス提供者向け処理に伴う負荷を一時的に下げることができる。 The effect of the third embodiment of the present invention will be described. In the present embodiment, the service provider identifying unit 133 plugged in from the outside of the service applications 115 to 117 and the service provider-specific access control unit 140 are used to execute the service provider generating a certain load. By blocking the intermediate process, it is possible to temporarily reduce the load accompanying the process for the specific service provider that is currently occurring.
 つぎに、本発明の実施の第四の形態を、図2および図14および図16を参照して以下に詳細に説明する。図14を参照すると、本発明の第四の実施の形態は、クライアント装置101からのリクエストを受信してサービス実行部105~107に適切にリクエストを分配する負荷分散管理部404と、クライアント装置101と負荷分散管理部404の間に配置され、サービス実行状況に対応してサービスの拒否や一時停止、サービスの外部への退避などを実行するサービス提供者別アクセス制御部403と、負荷分散管理部104から分配されたリクエストに対応して適切にサービスを実行するサービス実行部105~106と、実際にリクエストに対応した処理を実行するサービスアプリケーション115~116と、それぞれのサービス実行部105~106内で動作しているサービスアプリケーション115~116の実行状況を監視しているサービス実行監視部120と、これらから構成される共用型のサービス提供システム110とは別の専用型のサービス提供システム400から構成される。 Next, a fourth embodiment of the present invention will be described in detail below with reference to FIG. 2, FIG. 14, and FIG. Referring to FIG. 14, in the fourth embodiment of the present invention, a load distribution management unit 404 that receives a request from the client device 101 and appropriately distributes the request to the service execution units 105 to 107, and the client device 101. And an access control unit 403 for each service provider, which is disposed between the service distribution status unit 404 and the service load distribution management unit 404, and performs service rejection or suspension, service evacuation, etc. Service execution units 105 to 106 that appropriately execute services in response to requests distributed from 104, service applications 115 to 116 that actually execute processing corresponding to requests, and service execution units 105 to 106 Monitor the execution status of service applications 115-116 running on A service execution monitoring unit 120 are comprised of separate dedicated type service providing system 400 and the service providing system 110 sharing type composed of these.
 専用型のサービス提供システム400は共用型のサービス提供システムと同様にサービス実行部107とその中で動作しているサービスアプリケーション117から構成される。 The dedicated service providing system 400 includes a service execution unit 107 and a service application 117 operating in the same manner as the shared service providing system.
 つぎに、図2に示すサービス提供システム110内の何れかのサービス実行監視部120のサービス提供者別処理状況管理部121からサービス実行部105~106の識別子とサービス提供者の識別子を受け取ったサービス提供者別アクセス制御部403の動作P1600について、図16を参照して以下に説明する。 Next, the service that has received the identifiers of the service execution units 105 to 106 and the identifiers of the service providers from the processing status management unit 121 by service provider of any service execution monitoring unit 120 in the service providing system 110 shown in FIG. The operation P1600 of the provider-specific access control unit 403 will be described below with reference to FIG.
 まず、サービス提供者別アクセス制御部403はサービス提供者別処理状況管理部121から通知された突出して負荷の高いサービス提供者識別子とサービス実行部識別子の組を記録する(P1601)。 First, the service provider-specific access control unit 403 records a set of a service provider identifier and a service execution unit identifier that are prominently loaded and notified from the process status management unit 121 for each service provider (P1601).
 記録した情報から該当のサービス提供者のリクエストを割り振ることのできる共用型のサービス提供システム110内のサービス実行部105~106が存在するかを調べる(P1602)。 From the recorded information, it is checked whether there are service execution units 105 to 106 in the shared service providing system 110 that can allocate the request of the corresponding service provider (P1602).
 割り振るサービス実行部105~106がなければ(P1602-N)、以降のそのサービス提供者のリクエストはそのサービス提供者専用に別途構築された専用型のサービス提供システム400で処理するよう負荷分散管理部404を設定する(P1603)。 If there is no service execution unit 105 to 106 to be allocated (P1602-N), the load distribution management unit is processed so that subsequent requests from the service provider are processed by a dedicated service providing system 400 separately constructed exclusively for the service provider. 404 is set (P1603).
 割り振るサービス実行部105~106がある場合(P1602-Y)、負荷分散管理部404にそのサービス提供者に対するリクエストを割り振ってよいサービス実行部識別子を設定する(P1604)。 When there are service execution units 105 to 106 to be allocated (P1602-Y), a service execution unit identifier to which a request for the service provider can be allocated is set in the load distribution management unit 404 (P1604).
 本発明の実施の第四の形態の効果について説明する。本実施の形態では、極めて高い負荷がかかるサービス提供者の処理を相乗り型のサービス提供システム110の外部の専用型のサービス提供システム400で処理することにより、他のサービス提供者の処理への影響を排除できる。 The effect of the fourth embodiment of the present invention will be described. In the present embodiment, processing of a service provider that is subjected to an extremely high load is processed by the dedicated service providing system 400 outside the carpool-type service providing system 110, thereby affecting the processing of other service providers. Can be eliminated.
 つぎに、本発明の実施の第五の形態を図15と図17、図18、図19を参照して以下に詳細に説明する。図15を参照すると、本発明の第五の実施の形態は、クライアント装置101からのリクエストを受信してサービス実行部105~107に適切にリクエストを分配する負荷分散管理部104と、クライアント装置101と負荷分散管理部104の間に配置され、サービス実行状況に対応してサービスの拒否や一時停止などを実行するサービス提供者別アクセス制御部413と、サービス提供者ごとの課金プランを管理している課金管理部500と、負荷分散管理部104から分配されたリクエストに対応して適切にサービスを実行するサービス実行部105~107と、実際にリクエストに対応した処理を実行するサービスアプリケーション115~117と、それぞれのサービス実行部105~107内で動作しているサービスアプリケーション115~117の実行状況を監視しているサービス実行監視部135と、から構成される。 Next, a fifth embodiment of the present invention will be described in detail below with reference to FIGS. 15, 17, 18, and 19. FIG. Referring to FIG. 15, in the fifth embodiment of the present invention, a load distribution management unit 104 that receives a request from the client device 101 and appropriately distributes the request to the service execution units 105 to 107, and the client device 101. And an access control unit 413 for each service provider that executes service rejection or suspension according to the service execution status, and manages a billing plan for each service provider. Charging management unit 500, service execution units 105 to 107 that appropriately execute services in response to requests distributed from the load distribution management unit 104, and service applications 115 to 117 that actually execute processing corresponding to requests And service applications operating in the respective service execution units 105 to 107 A service execution monitoring unit 135 the execution status of Deployment 115-117 monitors, composed.
 つぎに、図19に示すサービス提供システム110内の何れかのサービス実行監視部135は、第1の実施例のサービス実行監視部120とほぼ同じ構成だが、サービス提供者別処理状況管理部129の動作だけが異なり、これは定期的にサービス提供者ごとの処理にかかる時間、データベースアクセス時の交換データ量、通信データ量などの情報を負荷情報としてサービス提供者別アクセス制御部413へ通知する。 Next, any one of the service execution monitoring units 135 in the service providing system 110 shown in FIG. 19 has substantially the same configuration as the service execution monitoring unit 120 of the first embodiment, but the service provider-specific processing status management unit 129 has the same configuration. Only the operation is different, and this periodically notifies the service provider-specific access control unit 413 of information such as the time required for processing for each service provider, the exchange data amount when accessing the database, and the communication data amount as load information.
 サービス提供者別処理状況管理部129からサービス実行部105~107の何れかのサービス提供者ごとの負荷情報を受け取ったサービス提供者別アクセス制御部413の動作P1700について、図17を参照して以下に説明する。 The operation P1700 of the access control unit 413 for each service provider that has received the load information for each service provider of the service execution units 105 to 107 from the processing status management unit 129 for each service provider will be described below with reference to FIG. Explained.
 まず、サービス提供者別アクセス制御部413は、サービス提供者別処理状況管理部129から通知されたサービス提供者ごとの負荷情報を記録する(P1701)。 その時点で記録されている全てのサービス実行部の全てのサービス提供者の負荷を合計する(P1702)。 First, the access control unit 413 for each service provider records the load information for each service provider notified from the processing status management unit 129 for each service provider (P1701).負荷 Total loads of all service providers of all service execution units recorded at that time (P1702).
 このとき、負荷情報に含まれる処理時間などの特定の値のみを合計してもよいし、それぞれあらかじめ決められた重みづけをしたデータベースアクセス量その他の値も含めて合計してもよい。つづいて、全てのサービス実行部における個々のサービス提供者ごとの負荷を合計し、P1702で計算した全体の負荷に占める割合を計算して記録する(P1703)。 At this time, only a specific value such as a processing time included in the load information may be summed, or may be summed including a database access amount and other values each having a predetermined weight. Subsequently, the loads for the individual service providers in all the service execution units are totaled, and the ratio to the total load calculated in P1702 is calculated and recorded (P1703).
 つぎに本実施例において、クライアント装置101からのリクエストをサービス提供者別アクセス制御部413が受信した場合の動作P1800について図18を参照して以下に説明する。 Next, in this embodiment, the operation P1800 when the access control unit 413 for each service provider receives a request from the client apparatus 101 will be described below with reference to FIG.
 リクエストがサービス提供者別アクセス制御部413に到着すると、定期的に前述のP1702の処理で計算される全てのサービス実行部の全てのサービス提供者の負荷の合計値があらかじめ決められた閾値を超えているか判定する(P1801)。 When the request arrives at the access control unit 413 for each service provider, the total load of all the service providers of all the service execution units that are periodically calculated in the process of P1702 exceeds a predetermined threshold value. (P1801).
 負荷が閾値に満たない場合(P1801-N)は、そのリクエストはそのまま負荷分散管理部404に渡されて、以後、サービス実行部105~107で処理が行われる(P1802)。 When the load is less than the threshold value (P1801-N), the request is passed to the load distribution management unit 404 as it is, and thereafter, processing is performed by the service execution units 105 to 107 (P1802).
 一方、負荷が閾値を超える場合(P1801-Y)は、課金管理部500に問い合わせて、全てのサービス提供者に対する課金金額の合計に対してそのリクエストが該当するサービス提供者の契約している課金金額の割合を計算する(P1803)。 On the other hand, if the load exceeds the threshold (P1801-Y), the charge management unit 500 is inquired and the charge of the service provider to which the request corresponds with respect to the total charge amount for all the service providers. The ratio of the amount is calculated (P1803).
 ここで計算したそのリクエストに該当するサービス提供者の課金金額の全体に対する割合と、前述のP1703で計算、記録された同じサービス提供者の全体の負荷に占める割合を比較し、負荷割合の方が小さいか確認する(P1804)。 The ratio of the total charge amount of the service provider corresponding to the request calculated here is compared with the ratio of the total load of the same service provider calculated and recorded in the above-mentioned P1703. It is confirmed whether it is small (P1804).
 課金割合と比較して負荷割合の方が小さい場合(P1804-Y)、そのリクエストはそのまま負荷分散管理部404に渡されて、以後、サービス実行部105~107で処理が行われる(P1802)。負荷割合の方が課金割合より大きい場合(P1804-N)、そのリクエストはブロックされる(P1805)。 If the load ratio is smaller than the charge ratio (P1804-Y), the request is passed to the load distribution management unit 404 as it is, and thereafter, the service execution units 105 to 107 perform processing (P1802). If the load ratio is greater than the charge ratio (P1804-N), the request is blocked (P1805).
 本発明の実施の第五の形態の効果について説明する。本実施の形態では、システム全体の負荷があらかじめ指定した閾値を超え、負荷を下げる必要が生じた場合に、サービス提供者ごとの課金の度合いに応じて処理をブロックすることが可能となる。 The effect of the fifth embodiment of the present invention will be described. In the present embodiment, when the load on the entire system exceeds a predetermined threshold value and it is necessary to reduce the load, it is possible to block the processing according to the charge level for each service provider.
 なお、本発明は本実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で各種の変形を許容する。例えば、本発明は多数のサービス提供者のサービスアプリケーションを実行させるSaaS/ASP、PaaS(Platform as a Service)のようなクラウドプラットフォームにも適用できる。 The present invention is not limited to the present embodiment, and various modifications are allowed without departing from the scope of the present invention. For example, the present invention can also be applied to cloud platforms such as SaaS / ASP and PaaS (Platform as Service) that execute service applications of many service providers.
 また、上記の各種形態ではサービス提供システムの各部がコンピュータプログラムにより各種機能として論理的に実現されることを例示した。しかし、このような各部の各々を固有のハードウェアとして形成することもでき、ソフトウェアとハードウェアとの組み合わせとして実現することもできる。当然ながら、上述した実施の形態および複数の変形例は、その内容が相反しない範囲で組み合わせることができる。 Further, in the above-described various forms, each part of the service providing system is exemplified as being logically realized as various functions by the computer program. However, each of these units can be formed as unique hardware, or can be realized as a combination of software and hardware. Naturally, the above-described embodiment and a plurality of modifications can be combined within a range in which the contents do not conflict with each other.
 この出願は、2010年02月23日に出願された日本出願特願2010-036873号および2010年08月09日に出願された日本出願特願2010-178447号を基礎とする優先権を主張し、その開示の全てを、ここに取り込む。 This application claims priority based on Japanese Patent Application No. 2010-036873 filed on Feb. 23, 2010 and Japanese Application No. 2010-178447 filed on Aug. 09, 2010. , The entire disclosure of which is incorporated herein.

Claims (16)

  1.  複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行手段と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行手段に分配する負荷分散手段と、
     それぞれの前記サービス実行手段のサービス実行状況を監視するサービス実行監視手段と、
     監視される前記サービス実行状況に対応して前記サービスを制御するアクセス制御手段と、
    を有するサービス提供システム。
    Service execution means for executing a service in response to a request from a client device for each of a plurality of service providers;
    Load distribution means for receiving the requests from a plurality of the client devices and distributing the requests to the service execution means;
    Service execution monitoring means for monitoring the service execution status of each of the service execution means;
    Access control means for controlling the service in response to the monitored service execution status;
    A service providing system.
  2.  前記サービス実行手段は、前記リクエストに対応して処理内容は同じで内部データが前記サービス提供者ごとに異なるサービスアプリケーションの実行インスタンスを生成し、
     前記サービス実行監視手段は、生成されて実行されている前記サービスアプリケーションの実行インスタンスの実行状況を対応する前記サービス提供者ごとに整理して前記サービスアプリケーションの実行を制御し、
     前記アクセス制御手段は、前記サービス実行監視手段からの操作で特定の前記サービス提供者が要求する前記サービスへの前記リクエストを制御する請求項1に記載のサービス提供システム。
    The service execution means generates an execution instance of a service application corresponding to the request and having the same processing content and different internal data for each service provider,
    The service execution monitoring means controls the execution of the service application by organizing the execution status of the execution instances of the service application generated and executed for each corresponding service provider,
    The service providing system according to claim 1, wherein the access control unit controls the request to the service requested by the specific service provider by an operation from the service execution monitoring unit.
  3.  前記サービス実行監視手段は、
     複数の前記サービス実行手段での複数の前記サービス処理について前記サービス提供者ごとの処理状況を集計して管理する処理状況管理手段と、
     前記リクエストごとに実行されるサービス処理を、どの前記サービス提供者のものであるかとともに保持する関係管理手段と、
     前記クライアント装置からの前記リクエストの到着時に、どの前記サービス提供者の前記サービス処理を要求しているかを識別する提供者識別手段と、
     前記サービスアプリケーションの複数の箇所に対してアクセスすることで前記リクエストに対する前記サービスアプリケーションの処理状況を監視して状況に対応して処理を制御する処理監視制御手段と、
    を有する請求項1または2に記載のサービス提供システム。
    The service execution monitoring means includes
    Processing status management means for counting and managing the processing status of each service provider for a plurality of the service processing in a plurality of service execution means;
    Relationship management means for holding the service processing executed for each request together with which service provider belongs,
    Provider identification means for identifying which service provider is requesting the service processing upon arrival of the request from the client device;
    Processing monitoring control means for monitoring the processing status of the service application for the request by accessing a plurality of locations of the service application and controlling processing in response to the status;
    The service providing system according to claim 1, comprising:
  4.  前記処理状況管理手段は、前記処理監視制御手段から受信する前記サービス提供者ごとの処理状況を記録して前記サービス提供者ごとに実行インスタンスが一定数以上異常状態であると、前記処理監視制御手段に該当する前記サービス提供者の実行インスタンスを強制終了させる請求項3に記載のサービス提供システム。 The processing status management means records the processing status for each service provider received from the processing monitoring control means, and the processing monitoring control means when the execution instance is in an abnormal state for a certain number or more for each service provider The service providing system according to claim 3, wherein the execution instance of the service provider corresponding to the above is forcibly terminated.
  5.  前記提供者識別手段は、前記サービスアプリケーションに対する前記リクエストを解析し、どの前記サービス提供者向けの前記サービスとして動作したのかを識別し、
     前記サービスアプリケーションの処理とは独立に定義され、前記サービスアプリケーションに対してプラグインされる形で目的の処理を実行する請求項3または4に記載のサービス提供システム。
    The provider identifying means analyzes the request for the service application, identifies which service provider is operating as the service,
    The service providing system according to claim 3, wherein the service providing system is defined independently of the process of the service application and executes the target process in a form plugged into the service application.
  6.  前記提供者識別手段は、外部からの操作によって特定の前記サービス提供者の前記サービスの実行に割り込んで制御する請求項3ないし5の何れか一項に記載のサービス提供システム。 The service providing system according to any one of claims 3 to 5, wherein the provider identifying means interrupts and controls execution of the service of a specific service provider by an external operation.
  7.  前記処理監視制御手段は、前記サービスアプリケーションの任意の箇所にプラグインされ、プラグインされた箇所の各種状況を監視する請求項3ないし6の何れか一項に記載のサービス提供システム。 The service providing system according to any one of claims 3 to 6, wherein the process monitoring control unit is plugged into an arbitrary part of the service application and monitors various situations of the plugged-in part.
  8.  前記処理監視制御手段は、前記プラグインされた箇所で処理を制御する請求項7に記載のサービス提供システム。 The service providing system according to claim 7, wherein the process monitoring control means controls a process at the plugged-in portion.
  9.  複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行手段と、
     特定のサービス提供者のサービスのみを処理可能な専用型サービス実行手段と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行手段に分配する負荷分散手段と、
     それぞれの前記サービス実行手段のサービス実行状況を監視するサービス実行監視手段と、
     監視される前記サービス実行状況に対応して前記サービスを制御するアクセス制御手段と、
     前記アクセス制御手段は、前記サービス実行監視手段からの操作で、特定の負荷の高い前記サービス提供者向けの前記リクエストのみを、その特定の前記サービス提供者向け処理専用のサービス提供システムで実行させるよう前記負荷分散手段を設定するサービス提供システム。
    Service execution means for executing a service in response to a request from a client device for each of a plurality of service providers;
    Dedicated service execution means capable of processing only services of a specific service provider;
    Load distribution means for receiving the requests from a plurality of the client devices and distributing the requests to the service execution means;
    Service execution monitoring means for monitoring the service execution status of each of the service execution means;
    Access control means for controlling the service in response to the monitored service execution status;
    The access control means causes only the request for the service provider having a high specific load to be executed by the service providing system dedicated to the processing for the specific service provider by an operation from the service execution monitoring means. A service providing system for setting the load distribution means.
  10.  複数のサービス提供者ごとのクライアント装置からのリクエストに対応してサービスを実行するサービス実行手段と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行手段に分配する負荷分散手段と、
     それぞれの前記サービス実行手段のサービス実行状況を監視するサービス実行監視手段と、
     監視される前記サービス実行状況に対応して前記サービスを制御するアクセス制御手段と、
     サービス提供者ごとの課金情報を管理する課金管理手段と、
     定期的に前記サービス提供者ごとの負荷情報を前記アクセス制御手段に通知する前記サービス実行監視手段と、を有し、
     前記アクセス制御手段は、通知された負荷情報に基づき、高負荷時に前記課金管理手段から取得した課金情報をもとに課金割合が低いのに負荷が高い前記サービス提供者の前記リクエストをブロックするサービス提供システム。
    Service execution means for executing a service in response to a request from a client device for each of a plurality of service providers;
    Load distribution means for receiving the requests from a plurality of the client devices and distributing the requests to the service execution means;
    Service execution monitoring means for monitoring the service execution status of each of the service execution means;
    Access control means for controlling the service in response to the monitored service execution status;
    Charging management means for managing charging information for each service provider;
    The service execution monitoring means for periodically notifying the access control means of load information for each service provider,
    The access control means is a service for blocking the request of the service provider having a high load although the charge ratio is low based on the charge information acquired from the charge management means at the time of high load based on the notified load information Offer system.
  11.  複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのコンピュータプログラムであって、
     前記クライアント装置からのリクエストに対応してサービスを実行するサービス実行処理と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行処理に分配する負荷分散処理と、
     それぞれの前記サービス実行処理のサービス実行状況を監視するサービス実行監視処理と、
     監視される前記サービス実行状況に対応して前記サービスを制御するアクセス制御処理と、
    をサービス提供システムに実行させるコンピュータプログラム。
    A computer program of a service providing system that communicates with a client device for each of a plurality of service providers,
    A service execution process for executing a service in response to a request from the client device;
    Load distribution processing for receiving the requests from a plurality of the client devices and distributing the requests to the service execution processing;
    A service execution monitoring process for monitoring a service execution status of each of the service execution processes;
    An access control process for controlling the service in response to the monitored service execution status;
    A computer program that causes a service providing system to execute.
  12.  複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのコンピュータプログラムであって、
     複数の前記サービス提供者ごとの前記クライアント装置からのリクエストに対応してサービスを実行するサービス実行処理と、
     特定のサービス提供者のサービスのみを処理可能な専用型サービス実行処理と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行処理に分配する負荷分散処理と、
     それぞれの前記サービス実行処理のサービス実行状況を監視するサービス実行監視処理と、
     監視される前記サービス実行状況に対応して前記サービスを制御し、前記サービス実行監視処理からの操作で、特定の負荷の高い前記サービス提供者向けの前記リクエストのみを、その特定の前記サービス提供者向け処理専用のサービス提供システムで実行させるよう前記負荷分散処理を設定する前記アクセス制御処理と、
    をサービス提供システムに実行させるコンピュータプログラム。
    A computer program of a service providing system that communicates with a client device for each of a plurality of service providers,
    A service execution process for executing a service in response to a request from the client device for each of a plurality of the service providers;
    Dedicated service execution process that can process only the service of a specific service provider,
    Load distribution processing for receiving the requests from a plurality of the client devices and distributing the requests to the service execution processing;
    A service execution monitoring process for monitoring a service execution status of each of the service execution processes;
    The service is controlled according to the service execution status to be monitored, and only the request for the service provider having a specific high load is operated by the operation from the service execution monitoring process. The access control processing for setting the load distribution processing to be executed by a service providing system dedicated to processing for
    A computer program that causes a service providing system to execute.
  13.  複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのコンピュータプログラムであって、
     複数の前記サービス提供者ごとの前記クライアント装置からのリクエストに対応してサービスを実行するサービス実行処理と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行処理に分配する負荷分散処理と、
     それぞれの前記サービス実行処理のサービス実行状況を監視するサービス実行監視処理と、
     監視される前記サービス実行状況に対応して前記サービスを制御するアクセス制御処理と、
     前記サービス提供者ごとの課金情報を管理する課金管理処理と、
     定期的に前記サービス提供者ごとの負荷情報を前記アクセス制御処理に通知する前記サービス実行監視処理と、
     通知された負荷情報に基づき、高負荷時に前記課金管理処理から取得した課金情報をもとに課金割合が低いのに負荷が高い前記サービス提供者の前記リクエストをブロックする前記アクセス制御処理と、
    をサービス提供システムに実行させるコンピュータプログラム。
    A computer program of a service providing system that communicates with a client device for each of a plurality of service providers,
    A service execution process for executing a service in response to a request from the client device for each of a plurality of the service providers;
    Load distribution processing for receiving the requests from a plurality of the client devices and distributing the requests to the service execution processing;
    A service execution monitoring process for monitoring a service execution status of each of the service execution processes;
    An access control process for controlling the service in response to the monitored service execution status;
    Billing management processing for managing billing information for each service provider;
    The service execution monitoring process for periodically notifying the access control process of load information for each service provider;
    Based on the notified load information, the access control process for blocking the request of the service provider having a high load although the charge rate is low based on the charge information acquired from the charge management process at the time of high load;
    A computer program that causes a service providing system to execute.
  14.  複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのデータ処理方法であって、
     前記クライアント装置からのリクエストに対応してサービスを実行するサービス実行動作と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行処理に分配する負荷分散動作と、
     それぞれの前記サービス実行処理のサービス実行状況を監視するサービス実行監視動作と、
     監視される前記サービス実行状況に対応して前記サービスを制御するアクセス制御動作と、
    を有するデータ処理方法。
    A data processing method of a service providing system for communicating with a client device for each of a plurality of service providers,
    A service execution operation for executing a service in response to a request from the client device;
    A load distribution operation for receiving the requests from a plurality of the client devices and distributing the requests to the service execution process;
    A service execution monitoring operation for monitoring the service execution status of each of the service execution processes;
    An access control operation for controlling the service in response to the monitored service execution status;
    A data processing method.
  15.  複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのデータ処理方法であって、
     複数の前記サービス提供者ごとの前記クライアント装置からのリクエストに対応してサービスを実行するサービス実行動作と、
     特定のサービス提供者のサービスのみを処理可能な専用型サービス実行動作と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行処理に分配する負荷分散動作と、
     それぞれの前記サービス実行処理のサービス実行状況を監視するサービス実行監視動作と、
     監視される前記サービス実行状況に対応して前記サービスを制御し、前記サービス実行監視処理からの操作で、特定の負荷の高い前記サービス提供者向けの前記リクエストのみを、その特定の前記サービス提供者向け処理専用のサービス提供システムで実行させるよう前記負荷分散処理を設定する前記アクセス制御動作と、
    を有するデータ処理方法。
    A data processing method of a service providing system for communicating with a client device for each of a plurality of service providers,
    A service execution operation for executing a service in response to a request from the client device for each of a plurality of service providers;
    Dedicated service execution operation that can process only the service of a specific service provider,
    A load distribution operation for receiving the requests from a plurality of the client devices and distributing the requests to the service execution process;
    A service execution monitoring operation for monitoring the service execution status of each of the service execution processes;
    The service is controlled according to the service execution status to be monitored, and only the request for the service provider having a specific high load is operated by the operation from the service execution monitoring process. The access control operation for setting the load distribution processing to be executed by a service providing system dedicated to the processing for
    A data processing method.
  16.  複数のサービス提供者ごとのクライアント装置と通信するサービス提供システムのデータ処理方法であって、
     複数の前記サービス提供者ごとの前記クライアント装置からのリクエストに対応してサービスを実行するサービス実行動作と、
     複数の前記クライアント装置からの前記リクエストを受信して前記サービス実行処理に分配する負荷分散動作と、
     それぞれの前記サービス実行処理のサービス実行状況を監視するサービス実行監視動作と、
     監視される前記サービス実行状況に対応して前記サービスを制御するアクセス制御動作と、
     サービス提供者ごとの課金情報を管理する課金管理動作と、
     定期的に前記サービス提供者ごとの負荷情報を前記アクセス制御処理に通知する前記サービス実行監視動作と、
     通知された負荷情報に基づき、高負荷時に前記課金管理処理から取得した課金情報をもとに課金割合が低いのに負荷が高い前記サービス提供者の前記リクエストをブロックする前記アクセス制御動作と、
    を有するデータ処理方法。
    A data processing method of a service providing system for communicating with a client device for each of a plurality of service providers,
    A service execution operation for executing a service in response to a request from the client device for each of a plurality of service providers;
    A load distribution operation for receiving the requests from a plurality of the client devices and distributing the requests to the service execution process;
    A service execution monitoring operation for monitoring the service execution status of each of the service execution processes;
    An access control operation for controlling the service in response to the monitored service execution status;
    Billing management operation for managing billing information for each service provider;
    The service execution monitoring operation for periodically notifying the access control process of load information for each service provider;
    Based on the notified load information, the access control operation for blocking the request of the service provider having a high load although the charge rate is low based on the charge information acquired from the charge management process at the time of high load,
    A data processing method.
PCT/JP2011/000214 2010-02-23 2011-01-18 Service providing system, and computer program and data processing method for same WO2011104999A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012501660A JPWO2011104999A1 (en) 2010-02-23 2011-01-18 Service providing system, computer program thereof, and data processing method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2010-036873 2010-02-23
JP2010036873 2010-02-23
JP2010178447 2010-08-09
JP2010-178447 2010-08-09

Publications (1)

Publication Number Publication Date
WO2011104999A1 true WO2011104999A1 (en) 2011-09-01

Family

ID=44506434

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/000214 WO2011104999A1 (en) 2010-02-23 2011-01-18 Service providing system, and computer program and data processing method for same

Country Status (2)

Country Link
JP (1) JPWO2011104999A1 (en)
WO (1) WO2011104999A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107154626A (en) * 2017-06-02 2017-09-12 张飞飞 Distributed photovoltaic intelligent energy manages SaaS systems with energy storage

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003067493A (en) * 2001-08-27 2003-03-07 Matsushita Electric Works Ltd Nursing care related franchise supporting method, system therefor, server and program
JP2004246833A (en) * 2003-02-17 2004-09-02 Nippon Telegr & Teleph Corp <Ntt> Session filtering method and load distributor
JP2007524144A (en) * 2003-06-18 2007-08-23 フジツー シーメンス コンピュータース ゲゼルシャフト ミット ベシュレンクテル ハフツング Cluster device
JP2008026993A (en) * 2006-07-18 2008-02-07 Fujitsu Ltd Information processing method, information processor and program
JP2009524135A (en) * 2006-01-23 2009-06-25 インターナショナル・ビジネス・マシーンズ・コーポレーション A method for modeling a free pool of resources

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003067493A (en) * 2001-08-27 2003-03-07 Matsushita Electric Works Ltd Nursing care related franchise supporting method, system therefor, server and program
JP2004246833A (en) * 2003-02-17 2004-09-02 Nippon Telegr & Teleph Corp <Ntt> Session filtering method and load distributor
JP2007524144A (en) * 2003-06-18 2007-08-23 フジツー シーメンス コンピュータース ゲゼルシャフト ミット ベシュレンクテル ハフツング Cluster device
JP2009524135A (en) * 2006-01-23 2009-06-25 インターナショナル・ビジネス・マシーンズ・コーポレーション A method for modeling a free pool of resources
JP2008026993A (en) * 2006-07-18 2008-02-07 Fujitsu Ltd Information processing method, information processor and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JUNPEI WATASE ET AL.: "A Study on A Advanced Load Balancing Method : Sharing of A Load Balancing Device with Multiple Customers, and Balancing of Requests for Streaming Contents based on User experienced QoS", IEICE TECHNICAL REPORT, vol. 101, no. 717, 8 March 2002 (2002-03-08), pages 159 - 164 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107154626A (en) * 2017-06-02 2017-09-12 张飞飞 Distributed photovoltaic intelligent energy manages SaaS systems with energy storage

Also Published As

Publication number Publication date
JPWO2011104999A1 (en) 2013-06-17

Similar Documents

Publication Publication Date Title
US10659318B2 (en) Methods and apparatus related to management of unit-based virtual resources within a data center environment
US8387058B2 (en) Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment
JP5463437B2 (en) Method and apparatus for managing reallocation of system resources
US8832286B2 (en) Method and system for controlling client access to a server application
US7644161B1 (en) Topology for a hierarchy of control plug-ins used in a control system
US9112809B2 (en) Method and apparatus for controlling utilization in a horizontally scaled software application
JP6297980B2 (en) Method, computer program, and device for allocating computer resources of said cluster to perform tasks requested of the cluster
US20070028068A1 (en) System and method for managing resources in a distributed storage system
US11762699B2 (en) Assignment of resources to database connection processes based on application information
CN108667748A (en) A kind of method, apparatus and equipment of control bandwidth
US20110173319A1 (en) Apparatus and method for operating server using virtualization technique
US7711822B1 (en) Resource management in application servers
CN102611735A (en) Load balancing method and system of application services
JPH0293836A (en) Distributed data base controller
JP2013522765A (en) Method and apparatus for hierarchical management of system resources
US9535749B2 (en) Methods for managing work load bursts and devices thereof
KR102047088B1 (en) Method for allocating resource in network system, and network system implementing the same
JP2008108261A (en) System and method for selectively controlling addition of reserve computing capacity
JP5961402B2 (en) Computer system
Li et al. A dynamic I/O sensing scheduling scheme in Kubernetes
CN114003377A (en) Memory fusing method, device, equipment and readable medium based on ES service
WO2011104999A1 (en) Service providing system, and computer program and data processing method for same
US9021499B2 (en) Moving a logical device between processor modules in response to identifying a varying load pattern
Yang et al. AutoAdmin: automatic and dynamic resource reservation admission control in Hadoop YARN clusters
JP5526748B2 (en) Packet processing device, packet distribution device, control program, and packet distribution method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11746972

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2012501660

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11746972

Country of ref document: EP

Kind code of ref document: A1