WO2006029656A1 - Computer arrangement for providing services for clients through a network - Google Patents

Computer arrangement for providing services for clients through a network Download PDF

Info

Publication number
WO2006029656A1
WO2006029656A1 PCT/EP2005/003067 EP2005003067W WO2006029656A1 WO 2006029656 A1 WO2006029656 A1 WO 2006029656A1 EP 2005003067 W EP2005003067 W EP 2005003067W WO 2006029656 A1 WO2006029656 A1 WO 2006029656A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
load data
nld
server
ald
Prior art date
Application number
PCT/EP2005/003067
Other languages
French (fr)
Inventor
Joseph W. Armstrong
Mark Johnston
Ronald Duane Sheen
Pushkar Singh
Kevin Smith
Kevin Stoner
Original Assignee
Fujitsu Siemens Computers, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Siemens Computers, Inc. filed Critical Fujitsu Siemens Computers, Inc.
Publication of WO2006029656A1 publication Critical patent/WO2006029656A1/en

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/87Monitoring of transactions

Definitions

  • Computer networks typically include at least one computer called a server and one or more computers called clients. Clients can request certain services through the network which are provided by the servers.
  • a file service where clients can request the transmission of a file which is stored on the server or on a storage device associated with the server.
  • a web service where web pages are transmitted upon request.
  • database services where, in a similar fashion, data sets of a database are transmitted or processed upon request.
  • each individual service is provided by an application program running on a server.
  • a server can host a single or also several instances of one or a number of different application programs .
  • a network service provider runs a plurality of servers (called a server farm) in order to be able to handle all incoming requests.
  • a server farm a plurality of servers (called a server farm) in order to be able to handle all incoming requests.
  • a central element in an AC-environment is a control means to perform administrative tasks which is sometimes referred to as a decision engine (DE) .
  • DE decision engine
  • the decision engine is capable of dynamically allocating or freeing servers and of starting new or stopping running instances of different applications on these servers.
  • control means is hosted on a computer within the network that is neither server nor client but specifically designated for administrative tasks.
  • the decision whether to start or stop instances of applications and whether it is necessary to allocate new servers or give away control over servers depends on a number of criteria and basic conditions . An important factor is how much load running instances of an application carry. If, for example, all running instances of a certain application are too busy to handle further requests within sufficient time it would be advisable to start another instance of that particular application.
  • the quantity that is best suited to determine the load depends on the application. For web servers, for example, the number of incoming calls per time unit could be a good measure, whereas for a file server the amount of data transferred per time unit is more significant. Similarly, the value of the quantity that corresponds to a state where the application can be considered as being too busy is application-specific and might also depend on the capacity of the server.
  • control means for example a decision engine in an autonomous computing environment
  • the service provider who is in charge of the control means might not be familiar with customized applications, development and maintenance of a control means with application-specific knowledge would be very expensive or even not feasible.
  • normalized load data is data that describes the load that running instances of the application impose on the at least one server on a scale which is independent of the type of server and independent of the particular application.
  • the control means ' is capable of comparing loads independent of application-specific information. It is enabled to make provisioning decisions without any application-specific knowledge. Application-specific information is still needed, but attending to application-specific information is shifted to the reporting means.
  • the reporting means could either be part of the application itself or be implemented as a module which is plugged into the control means. However, in any case it is independent from the core functionality of the control means. Therefore, the reporting means can be made available by the application provider, who has the knowledge that is required to assess the load that an application imposes on a server.
  • Fig. 1 is a conceptual diagram of an embodiment of the present invention
  • Fig. 2 is a flowchart representation of an embodiment of a method to determine normalized load data.
  • Fig. 1 shows several servers 1 which are set up to communicate to clients 2 via a network 3. Each server 1 hosts an application 4. Application-specific load data ALD is transferred to reporting means 5. Reporting means 5 reports normalized load data NLD to a control means 6, which is set up to start or stop instances of applications 4 on the servers 1 using a control connection 7.
  • FIG. 1 The configuration shown in Fig. 1 is typical for a server farm where a provider runs a plurality of servers 1 and each server 1 hosts just one application 4. Often, blade servers, named after their geometric outline, are used in server farms. However, the invention is not restricted to a situation where each server 1 hosts one application 4 only.
  • application 4a is meant to be a database service application and application 4b is meant to be a web service application.
  • the control means 6 may be software-implemented and hosted on a separate computer. For reasons of high availability and redundancy there may also be second control means that could take over in case of a failure of the first control means 6.
  • control connection 7 between the control means 6 and the servers 1 which is used to provision servers 1 and/or to start or stop instances of applications 4, could be established through the same network 3 that connects the servers 1 and the clients 2.
  • a separate network could be used for security and/or performance reasons.
  • Fig. 1 three of the servers 1 host the database service application 4a and two of the servers 1 actually host the web service application 4b.
  • One of the servers 1 (the top one in Fig. 1) is in the process of being provisioned by the control means 6 to run a third instance of the web service application 4b as indicated by the dashed outline of the application.
  • Application-specific load data ALD is data that describes the load of an application 4 using an appropriate measure.
  • an appropriate measure for the database service application 4a could be the number of transactions per second (TPS) where one request to the database might result in several transactions .
  • An appropriate measure for the web service application 4b could simply be the number of hits per seconds or be the mount of data requested from the server per second in, for example, megabytes per second.
  • Fig. 2 shows a flowchart representation of an embodiment of a method according to the present invention by which a reporting means 5 determines normalized load data NLD.
  • specific load data (ALD) i of one type of application 4 is received by a reporting means 5.
  • averaged application specific load data AALD is calculated by averaging all (ALD) i.
  • Normalized load data NLD is characterized in that it represents the load that an application 4 imposes on a server 1 on a scale which is independent of the type of the server and independent of the particular application.
  • a potential scale for the normalized load data NLD just consisting of three possible values, namely "low”, “okay” and "high”, is assumed in the embodiment shown in Fig. 2.
  • “Low” indicates that the average load on the servers dedicated to this application is too low and that one of the servers may be re-provisioned for other applications.
  • "Okay” indicates that the average load is in an acceptable range.
  • “High” indicates that the average load is too high and that additional servers should be provisioned for this application. More sophisticated normalized scales with more than three possible values or even a continuous range of values are possible and will be within the scope of a person skilled in the art.
  • reporting means 5 For a reporting means 5 to be able to convert application- specific load data ALD into normalized load data NLD, knowledge on the application and on the server has to be incorporated into the reporting means 5. It is therefore apparent that the reporting means 5 will be application- specific itself. Referring to Fig. 2 normalization is achieved by comparing the application-specific load data ALD with given thresholds.
  • thresholds denote values of application specific load data ALD that correspond to the transition between different values of normalized load data NLD.
  • averaged application specific load data AALD is compared to an upper threshold TH which indicates the transition from "okay" to "high” regarding normalized load. If the condition in step 12 is met, the normalized load data is set to the value "high” in step 13. Otherwise, a comparison of the averaged application specific load data AALD with a lower threshold TH is performed in step 14. If the condition in step 14 is fulfilled, the normalized load data is set to the value "low” in step 15, if not, it is set to the value "okay” in step 16. The value of normalized load data NLD determined this way is reported to the control means 6 in step 17 before the method starts again with step 10 in a continuous manner.
  • the reporting means 5a would first determine an averaged application specific load data AALD of 38 TPS for this application. Assuming given thresholds of 30 TPS and 40 TPS for the lower transition threshold TL and the upper transition threshold TH, respectively, this averaged application-specific load AALDa of 38 TPS would lead to a normalized load data NLDa having the value "okay" .
  • the reporting means 5b would determine an average load of 75 hits per second. Assuming given thresholds TL and TH of 40 and 60 hits per second, this average application-specific load data AALDb would lead to a normalized load data NLDb showing the value "high" .
  • Application-specific load data ALD may also comprise information about the server 1 an application 4 is hosted on, for example performance data. This data could also be taken into account when determining normalized load data NLD.
  • control means 6 is set up to start new instances of an application 4 or stop running instances of an application 4 dependent on normalized load data NLP. In the above example, it could be set up not to act if the value "ok” is reported (as for the database service application 4a) and to start a new instance of an application 4 if the value "high” is reported (as in case of the web service application 4b) .
  • the control means 6 could also take the ratio of normalized load data NLDa/NLDb reported by different reporting means 5a, 5b into account. This could preferably be done in a situation, where the number of servers 1 needed outlines the number of available servers 1.
  • the control means 6 e.g. in an autonomous computing environment, is able to make provisioning decisions based ultimately on application-specific performance metrics without having an application-specific knowledge itself.
  • the application-specific knowledge is encapsulated in the reporting means 5 and only normalized load data NLD is sent to the control means 6.
  • the normalized load data NLD allows the control means 6 to easily compare application performance data from different applications 4 and to allocate resources to the applications that are busiest. This can be particularly useful in predictive provisioning, where trends are analyzed and resources are allocated in advance to meet anticipated future needs. If, for example, the control means 6 is set up to store historical data on the normalized load data NLD, it could perform a trend analysis and predict how busy an application would be in the future.
  • reporting means 5 itself is set up to incorporate historical data into the process of transferring application-specific load data ALD into normalized load data NLD. This could, for example, be achieved by normalized load data NLD that is in part proportional to the first and/or the second derivative with respect to time of actual load data ALD and/or proportional in parts to integrated application-specific load data ALD.
  • the reporting means 5 could be hosted on the same computer that hosts the control means 6. In that case, the reporting means 5 could be regarded as a plug-in for the control means 6. The reporting means 5 could also be implemented as an independent unit hosted on another computer within the network. In another embodiment, the reporting means could be hosted on the server 1 that also hosts application 4. Such a configuration could preferably be used if a few powerful servers, for example mainframe servers, which run several applications 4 simultaneously, are operated by the service provider rather than a plurality of less powerful servers like blade servers .
  • reporting means 5 and control means 6 different methods of communicating the application-specific load data ALD and the normalized load data NLD could be chosen. Transmission of the data could, for example, take place via network connections or APIs (Application Programming Interfaces) . If a network connection is used, in one embodiment network 3 could be used. In an other embodiment, a separate network could be used for security and/or performance reasons .
  • application-specific load data ALD and/or normalized load data NLD could be encapsulated in a mark-up language, for example XML (extensible mark-up language) or (X)HTML ((extensible) hypertext mark-up language) .

Abstract

The invention relates to a computer arrangement for providing services for clients over a network. The computer arrangement comprises at least one server (1) hosting one or more applications (4) which provide services to clients over the network and control means (6) to start or stop instances of said applications (4) on the at least one server (1). It also comprises reporting means (5) for reporting normalized load data (NLD) of the application (4) to the control means (6), where normalized load data (NLD) is data that describes the load that running instances of the application (4) impose on the at least one server (1) on a scale which is independent of the type of server (1) and independent of the particular application (4).

Description

Description
Computer Arrangement for providing Services for Clients through a Network
Computer networks typically include at least one computer called a server and one or more computers called clients. Clients can request certain services through the network which are provided by the servers.
There is a huge variety of different types of services that can be offered by servers. One example is a file service, where clients can request the transmission of a file which is stored on the server or on a storage device associated with the server. Another example is a web service, where web pages are transmitted upon request. Also known are database services, where, in a similar fashion, data sets of a database are transmitted or processed upon request.
Usually each individual service is provided by an application program running on a server. Depending on requirements or capacity a server can host a single or also several instances of one or a number of different application programs . Often a network service provider runs a plurality of servers (called a server farm) in order to be able to handle all incoming requests. Considering the growing size of modern server farms which can consist of hundreds of servers there is an increasing demand to automate administrative tasks, for example allocating the available resources to different types of services. The approach to automate administrative tasks is known as autonomous computing (AC) . A central element in an AC-environment is a control means to perform administrative tasks which is sometimes referred to as a decision engine (DE) . The decision engine is capable of dynamically allocating or freeing servers and of starting new or stopping running instances of different applications on these servers. Usually the control means is hosted on a computer within the network that is neither server nor client but specifically designated for administrative tasks. The decision whether to start or stop instances of applications and whether it is necessary to allocate new servers or give away control over servers depends on a number of criteria and basic conditions . An important factor is how much load running instances of an application carry. If, for example, all running instances of a certain application are too busy to handle further requests within sufficient time it would be advisable to start another instance of that particular application.
The quantity that is best suited to determine the load depends on the application. For web servers, for example, the number of incoming calls per time unit could be a good measure, whereas for a file server the amount of data transferred per time unit is more significant. Similarly, the value of the quantity that corresponds to a state where the application can be considered as being too busy is application-specific and might also depend on the capacity of the server.
This leads to the problem that the control means, for example a decision engine in an autonomous computing environment, needs to take application-specific details into account. This would require to provide the control means with information about how to judge the load of a specific application running on a specific server. Bearing in mind the variety of possible applications and the fact that the service provider who is in charge of the control means might not be familiar with customized applications, development and maintenance of a control means with application-specific knowledge would be very expensive or even not feasible.
It is therefore an object of the invention to present a computer arrangement for providing services for clients over a network which utilizes application-specific information to optimize its services in a flexible and feasible manner,
In order to accomplish the above object a computer arrangement for providing services for clients over a network is provided which comprises
- at least one server hosting one or more applications which provide services to clients over the network;
- control means to start or stop instances of said application programs on the at least one server and
- reporting means for reporting normalized load data of the application to the control means, where normalized load data is data that describes the load that running instances of the application impose on the at least one server on a scale which is independent of the type of server and independent of the particular application.
Due to the normalization performed by the reporting means, the control means' is capable of comparing loads independent of application-specific information. It is enabled to make provisioning decisions without any application-specific knowledge. Application-specific information is still needed, but attending to application-specific information is shifted to the reporting means. The reporting means could either be part of the application itself or be implemented as a module which is plugged into the control means. However, in any case it is independent from the core functionality of the control means. Therefore, the reporting means can be made available by the application provider, who has the knowledge that is required to assess the load that an application imposes on a server.
Other features which are considered as characteristic for the invention or which describe advantageous embodiments of the present invention are set forth in the appendend claims .
The above and other objects, features and advantages of the present invention will become apparent from the following description in conjunction with the accompanying drawings.
In the drawings:
Fig. 1 is a conceptual diagram of an embodiment of the present invention;
Fig. 2 is a flowchart representation of an embodiment of a method to determine normalized load data.
Fig. 1 shows several servers 1 which are set up to communicate to clients 2 via a network 3. Each server 1 hosts an application 4. Application-specific load data ALD is transferred to reporting means 5. Reporting means 5 reports normalized load data NLD to a control means 6, which is set up to start or stop instances of applications 4 on the servers 1 using a control connection 7.
In the figure and for the description, reference signs with the additional letter a or b denote distinct subsets, e.g. applications 4a and 4b are meant to be two different applications belonging to the common group of applications 4. The configuration shown in Fig. 1 is typical for a server farm where a provider runs a plurality of servers 1 and each server 1 hosts just one application 4. Often, blade servers, named after their geometric outline, are used in server farms. However, the invention is not restricted to a situation where each server 1 hosts one application 4 only.
By way of example, for the following description application 4a is meant to be a database service application and application 4b is meant to be a web service application. Providing services that have a fast response time on the one hand, and that do not waste any server capacity on the other hand, requires that an appropriate number of instances of an application 4 is running and, therefore, that an appropriate number of servers 1 is dedicated to host these instances. Provisioning of servers 1 and/or starting instances of a certain application 4 is performed by the control means 6. The control means 6 may be software-implemented and hosted on a separate computer. For reasons of high availability and redundancy there may also be second control means that could take over in case of a failure of the first control means 6.
The control connection 7 between the control means 6 and the servers 1 which is used to provision servers 1 and/or to start or stop instances of applications 4, could be established through the same network 3 that connects the servers 1 and the clients 2. In an other embodiment, a separate network could be used for security and/or performance reasons.
In the example shown in Fig. 1 three of the servers 1 host the database service application 4a and two of the servers 1 actually host the web service application 4b. One of the servers 1 (the top one in Fig. 1) is in the process of being provisioned by the control means 6 to run a third instance of the web service application 4b as indicated by the dashed outline of the application.
Each instance of an application 4a, 4b transmits application- specific load data ALDa, ALDb to the reporting means 5a and 5b respectively. Application-specific load data ALD is data that describes the load of an application 4 using an appropriate measure. In the example, an appropriate measure for the database service application 4a could be the number of transactions per second (TPS) where one request to the database might result in several transactions . An appropriate measure for the web service application 4b could simply be the number of hits per seconds or be the mount of data requested from the server per second in, for example, megabytes per second.
Fig. 2 shows a flowchart representation of an embodiment of a method according to the present invention by which a reporting means 5 determines normalized load data NLD. In step 10 specific load data (ALD) i of one type of application 4 is received by a reporting means 5. The index i is used to distinguish between different instances of the application 4 that are executed ("running instances") , i.e. l<=i<=n where n denotes the number of running instances. In step 20 averaged application specific load data AALD is calculated by averaging all (ALD) i.
Normalized load data NLD is characterized in that it represents the load that an application 4 imposes on a server 1 on a scale which is independent of the type of the server and independent of the particular application. As an example, a potential scale for the normalized load data NLD just consisting of three possible values, namely "low", "okay" and "high", is assumed in the embodiment shown in Fig. 2. "Low" indicates that the average load on the servers dedicated to this application is too low and that one of the servers may be re-provisioned for other applications. "Okay" indicates that the average load is in an acceptable range. "High" indicates that the average load is too high and that additional servers should be provisioned for this application. More sophisticated normalized scales with more than three possible values or even a continuous range of values are possible and will be within the scope of a person skilled in the art.
For a reporting means 5 to be able to convert application- specific load data ALD into normalized load data NLD, knowledge on the application and on the server has to be incorporated into the reporting means 5. It is therefore apparent that the reporting means 5 will be application- specific itself. Referring to Fig. 2 normalization is achieved by comparing the application-specific load data ALD with given thresholds.
These thresholds denote values of application specific load data ALD that correspond to the transition between different values of normalized load data NLD. In step 12, averaged application specific load data AALD is compared to an upper threshold TH which indicates the transition from "okay" to "high" regarding normalized load. If the condition in step 12 is met, the normalized load data is set to the value "high" in step 13. Otherwise, a comparison of the averaged application specific load data AALD with a lower threshold TH is performed in step 14. If the condition in step 14 is fulfilled, the normalized load data is set to the value "low" in step 15, if not, it is set to the value "okay" in step 16. The value of normalized load data NLD determined this way is reported to the control means 6 in step 17 before the method starts again with step 10 in a continuous manner.
If, for example, the three instances of the database service application 4a would report 40, 36 and 38 TPS the reporting means 5a would first determine an averaged application specific load data AALD of 38 TPS for this application. Assuming given thresholds of 30 TPS and 40 TPS for the lower transition threshold TL and the upper transition threshold TH, respectively, this averaged application-specific load AALDa of 38 TPS would lead to a normalized load data NLDa having the value "okay" .
If the two web service applications 4b would report 70 and 80 hits per second, respectively, the reporting means 5b would determine an average load of 75 hits per second. Assuming given thresholds TL and TH of 40 and 60 hits per second, this average application-specific load data AALDb would lead to a normalized load data NLDb showing the value "high" .
Application-specific load data ALD may also comprise information about the server 1 an application 4 is hosted on, for example performance data. This data could also be taken into account when determining normalized load data NLD.
Referring again to Fig. 1, the control means 6 is set up to start new instances of an application 4 or stop running instances of an application 4 dependent on normalized load data NLP. In the above example, it could be set up not to act if the value "ok" is reported (as for the database service application 4a) and to start a new instance of an application 4 if the value "high" is reported (as in case of the web service application 4b) . The control means 6 could also take the ratio of normalized load data NLDa/NLDb reported by different reporting means 5a, 5b into account. This could preferably be done in a situation, where the number of servers 1 needed outlines the number of available servers 1.
Using this scheme, the control means 6, e.g. in an autonomous computing environment, is able to make provisioning decisions based ultimately on application-specific performance metrics without having an application-specific knowledge itself. However, the application-specific knowledge is encapsulated in the reporting means 5 and only normalized load data NLD is sent to the control means 6. A powerful aspect of this approach is that the normalized load data NLD allows the control means 6 to easily compare application performance data from different applications 4 and to allocate resources to the applications that are busiest. This can be particularly useful in predictive provisioning, where trends are analyzed and resources are allocated in advance to meet anticipated future needs. If, for example, the control means 6 is set up to store historical data on the normalized load data NLD, it could perform a trend analysis and predict how busy an application would be in the future. It is also within the scope of the present invention, that the reporting means 5 itself is set up to incorporate historical data into the process of transferring application-specific load data ALD into normalized load data NLD. This could, for example, be achieved by normalized load data NLD that is in part proportional to the first and/or the second derivative with respect to time of actual load data ALD and/or proportional in parts to integrated application-specific load data ALD.
The reporting means 5 could be hosted on the same computer that hosts the control means 6. In that case, the reporting means 5 could be regarded as a plug-in for the control means 6. The reporting means 5 could also be implemented as an independent unit hosted on another computer within the network. In another embodiment, the reporting means could be hosted on the server 1 that also hosts application 4. Such a configuration could preferably be used if a few powerful servers, for example mainframe servers, which run several applications 4 simultaneously, are operated by the service provider rather than a plurality of less powerful servers like blade servers .
Depending on the location of application 4, reporting means 5 and control means 6, different methods of communicating the application-specific load data ALD and the normalized load data NLD could be chosen. Transmission of the data could, for example, take place via network connections or APIs (Application Programming Interfaces) . If a network connection is used, in one embodiment network 3 could be used. In an other embodiment, a separate network could be used for security and/or performance reasons . In a preferred embodiment, application-specific load data ALD and/or normalized load data NLD could be encapsulated in a mark-up language, for example XML (extensible mark-up language) or (X)HTML ((extensible) hypertext mark-up language) .
Although the invention herein has been described with reference to particular embodiments, it is to be understood that these embodiments are merely illustrative of the principles and applications of the present invention. It is therefore to be understood that numerous modifications may be made to the illustrative embodiments and that other arrangements may be devised without departing from the spirit and scope of the present invention as defined by the appended claims.
Reference List
1 Server
2 Client
3 Artwork
4 Application
5 Reporting means
6 Control means
7 Control connection
ALD Application-specific load data
ALD Averaged application-specific load data
NLD Normalized load data
TH Upper threshold
LH Lower threshold

Claims

Claims:
1. A computer arrangement for providing services for clients (2) over a network (3), comprising
- at least one server (1) hosting at least one application (4) designated to provide services to clients (2) over the network (3) ,
- control means (6) set up to start or stop instances of said applications (4) on the at least one server (1) , and
- reporting means (5) for reporting normalized load data (NLD) of the application (4) to the control means (6) , where normalized load data (NLD) is data that describes the load that running instances of the application (4) impose on the at least one server (1) on a scale which is independent of the type of server (1) and independent of the particular application (4) .
2. The computer arrangement of claim 1, where one reporting means (5) is provided for each type of application (4) for which one or more instances are executed by the at least one server (1) .
3. The computer arrangement of claim 2, where each reporting means (5) is assigned to all instances of one type of application (4) and is specific to this application.
4. The computer arrangement of claim 1, where one reporting means (5) is provided for every instance of an application (4) which is running on the at least one server (1) . 5. The computer arrangement of claim 4, where each reporting means (5) is assigned to one instance of an application (4) and is specific to this application (4) .
6. The computer arrangement of one of the claims 1 to 5, where the reporting means (5) receives application-specific load data (ALD) and converts it into normalized load data (NLD) using pre-defined rules, and reports this normalized load data (NLD) to the control means (6) , where application- specific load data (ALD) is data which is based on an application-specific quantity.
7. The computer arrangement of claim 6, where the calculated normalized load data (NLD) is proportional to application-specific load data (ALD) .
8. The computer arrangement of claim 6, where the reporting means (5) comprises of means for storing the application-specific load data (ALD) for a given period of time, and where the normalized load data (NLD) is composed of a first part, which is proportional to the actual value of the application-specific load data (ALD) and of a second part, which is an extrapolation of the stored values of the application-specific load data (ALD) .
9. The computer arrangement of claim 8, where the extrapolation of the stored values of the application- specific load data (ALD) is proportional to the first and/or second derivative with respect to time of the application-specific load data (ALD) .
10. The computer arrangement of claim 8, where the extrapolation of the stored values of the application- specific load data (ALD) is proportional to integrated application-specific load data (ALD) .
11. The computer arrangement of one of the claims 1 to 10, where the computer system comprises a computer that hosts the control means (6) .
12. The computer arrangement of claim 11, where the one or more reporting means (5) are hosted on the computer that hosts the control means (6) .
13. The computer arrangement of claim 12, where the application-specific load data (ALD) is transmitted via the network (ALD) .
14. The computer arrangement of one of the claims 1 to 10, where each reporting means (5) is hosted on the server (1) that hosts the instance of an application (4) , the reporting means (5) is assigned to.
15. The computer arrangement of claim 14, where normalized load data (NLD) is transmitted via the network
(ALD) .
16. The computer arrangement of one of the claims 1 to 15, where normalized load data (NLD) is encapsulated in a mark-up language, e.g. XML, HTML or XHTML, for transmission. 7. The computer arrangement of one of the claims 6 to 16, where application-specific load data (ALD) is encapsulated in a mark-up language, e.g. XML, HTML or XHTML, for transmission.
18. The computer arrangement of one of the claims 1 to 17, where the control means (6) starts new instances of the application (4) or stops running instances of the application (4) taking into account normalized load data (NLD) reported by the reporting means (5) .
19. The computer arrangement of one of the claims 1 to 17, where the control means (6) starts new instances of the application (4) or stops running instances of an the application (4) taking into account normalized load data (NLD) and taking into account further given conditions.
20. The computer arrangement of one of the claims 18 or 19, where normalized load data (NLD) regarding one type of the application (4a) is received by the control means (6) and
- a running instance of the application (4a) is stopped if the value of the normalized load data (NLD) is below a given first threshold and if another instance of that application (4) is running, and
- a new instance of the respective application (4) is started if the value of the normalized load data (NLD) is above a given second threshold. 1. A method for reporting the load that an application (4) imposes on at least one server (1) to a control means (6) , where the application (4) provides services for clients (2) over a network (3) and the at least one server (1) executes at least one instance of the application (4) , said method comprising
- providing a reporting means (5) ,
- receiving application-specific load data (ALD) of each running instance of the application (4) by the reporting means (5) ,
- averaging all received application-specific load data (ALD) obtaining averaged application-specific load data (AALD) ,
- normalizing the averaged application-specific load data
(AALD) obtaining normalized load data (NLD) , where normalized load data (NLD) is data that describes the load that the at least one running instance of the application (4) imposes on the at least one server (1) on a scale which is independent of the type of server (1) and independent of the particular application (4) ,
- reporting the normalized load data (NLD) to the control means (6) .
22. A method for administrating a plurality of severs (1) , hosting at least one application (4) and executing at least one instance of said application (4) , where the application (4) provides services for clients (2) over a network (3) , said method comprising
- providing a reporting means (5) and providing a control means (6) , said reporting means (5) reporting normalized load data (NLD) to the control means (6) , where normalized load data (NLD) is data that describes the load that the at least one running instance of the application (4) imposes on the at least one server (1) on a scale which is independent of the type of server (1) and independent of the particular application (4) ,
- said control means (6) starting additional instances of the application (4) or stopping running instances of the application (4) based on the normalized load data (NLD) .
23. The method of claim 22, where
- at least two different types of an application (4a, 4b) are running on the at least one server (1) ,
- for each type of application (4) providing a reporting means (5) , each reporting means (5) reporting normalized load data (NLD) to the control means (6) ,
- the control means (6) starting additional instances of the applications (4) or stopping running instances of the application (4) taking into account normalized load data (NLD) of every reporting means (5) and/or taking into account the ratio of normalized load data (NLD) of the reporting means (5) .
24. The method of claim 22, where
- a running instance of the application (4) is stopped if the value of the normalized load data (NLD) for this application (4) is below a given first threshold and if another instance of that application (4) is running, and
- a new instance of the application (4) is started if the value of the normalized load data (NLD) for this application (4) is above a given second threshold.
PCT/EP2005/003067 2004-09-13 2005-03-22 Computer arrangement for providing services for clients through a network WO2006029656A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60954504P 2004-09-13 2004-09-13
US60/609,545 2004-09-13

Publications (1)

Publication Number Publication Date
WO2006029656A1 true WO2006029656A1 (en) 2006-03-23

Family

ID=35276434

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2005/003067 WO2006029656A1 (en) 2004-09-13 2005-03-22 Computer arrangement for providing services for clients through a network

Country Status (1)

Country Link
WO (1) WO2006029656A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2053508A1 (en) * 2006-11-14 2009-04-29 Sony Computer Entertainment Inc. Information processing system, information processing device and information processing method
GB2475087A (en) * 2009-11-05 2011-05-11 Fujitsu Ltd Misrepresenting resource availability in reports to a central resource manger allocating tasks to managed entities.

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5553239A (en) * 1994-11-10 1996-09-03 At&T Corporation Management facility for server entry and application utilization in a multi-node server configuration
GB2366891A (en) * 2001-12-06 2002-03-20 Appsense Ltd Performance management with threshold of CPU usage
US20030084156A1 (en) * 2001-10-26 2003-05-01 Hewlett-Packard Company Method and framework for generating an optimized deployment of software applications in a distributed computing environment using layered model descriptions of services and servers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5553239A (en) * 1994-11-10 1996-09-03 At&T Corporation Management facility for server entry and application utilization in a multi-node server configuration
US20030084156A1 (en) * 2001-10-26 2003-05-01 Hewlett-Packard Company Method and framework for generating an optimized deployment of software applications in a distributed computing environment using layered model descriptions of services and servers
GB2366891A (en) * 2001-12-06 2002-03-20 Appsense Ltd Performance management with threshold of CPU usage

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GONNE M ET AL: "Monitoring of mobile agents in large cluster systems", NETWORK COMPUTING AND APPLICATIONS, 2001. NCA 2001. IEEE INTERNATIONAL SYMPOSIUM ON 8-10 OCTOBER 2001, PISCATAWAY, NJ, USA,IEEE, 8 October 2001 (2001-10-08), pages 340 - 343, XP010565735, ISBN: 0-7695-1432-4 *
O. OTTMAN ET AL: "The design of an adaptive middleware load balancing and monitoring service", IWSAS 2003, 9 June 2003 (2003-06-09), pages 1 - 20, XP002354414, Retrieved from the Internet <URL:http://www.cs.wustl.edu/~schmidt/PDF/IWSAS_2003.pdf> [retrieved on 20051115] *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2053508A1 (en) * 2006-11-14 2009-04-29 Sony Computer Entertainment Inc. Information processing system, information processing device and information processing method
EP2053508A4 (en) * 2006-11-14 2010-08-25 Sony Computer Entertainment Inc Information processing system, information processing device and information processing method
GB2475087A (en) * 2009-11-05 2011-05-11 Fujitsu Ltd Misrepresenting resource availability in reports to a central resource manger allocating tasks to managed entities.
GB2475087B (en) * 2009-11-05 2015-12-23 Fujitsu Ltd Method, program and apparatus for influencing task allocation in a computer network

Similar Documents

Publication Publication Date Title
US11252220B2 (en) Distributed code execution involving a serverless computing infrastructure
US7287179B2 (en) Autonomic failover of grid-based services
CN106302565B (en) Scheduling method and system of service server
US7441046B2 (en) System enabling server progressive workload reduction to support server maintenance
US8250215B2 (en) Method and system for intelligently leveraging cloud computing resources
US7035919B1 (en) Method for calculating user weights for thin client sizing tool
EP3335120B1 (en) Method and system for resource scheduling
US8930521B2 (en) Method, apparatus, and computer program product for enabling monitoring of a resource
CN108205541B (en) Method and device for scheduling distributed web crawler tasks
CN112882813B (en) Task scheduling method, device and system and electronic equipment
JP4984169B2 (en) Load distribution program, load distribution method, load distribution apparatus, and system including the same
CN110149409B (en) Cloud host metadata service management method, system, equipment and storage medium
US8305911B2 (en) System and method for identifying and managing service disruptions using network and systems data
CN101535978A (en) Message forwarding backup manager in a distributed server system
JP2006309439A (en) Flexible cluster system
US10992744B1 (en) Allocation of server resources in remote-access computing environments
US20070208844A1 (en) Computer Arrangement and Method for Providing Services for Clients Over a Network
US20110173319A1 (en) Apparatus and method for operating server using virtualization technique
US9851988B1 (en) Recommending computer sizes for automatically scalable computer groups
US7721295B2 (en) Execution multiplicity control system, and method and program for controlling the same
CN106649856A (en) Database access device, system and method
JP5203919B2 (en) Server system
CN113672345A (en) IO prediction-based cloud virtualization engine distributed resource scheduling method
WO2022222579A1 (en) Database middleware cluster-based high-availability client load balancing method
US20070067369A1 (en) Method and system for quantifying and comparing workload on an application server

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase