Patent · US2006010236A1 · A1 · US
Usage-based methodology for providing web services
- (11) Publication number
- US2006010236A1
- (21) Application number
- 10/865,019
- (22) Filing date
- 2004-06-10
- (30) Priority date
- 2004-06-10
- (43) Publication date
- 2006-01-12
- (51) IPC
- G06F 15/16
- (52) CPC
- H04L Transmission of digital information, e.g. telegraphic communication: 67/53, 67/02, 67/306, 67/61
- (73) Assignee
- International Business Machines Corp
- (72) Inventors
- Colin Meiser; Jason Salcido; Keeley Weisbard
- (54) Title
- Usage-based methodology for providing web services
- (57) Abstract
A method for providing usage-based Web services can include the step of identifying a desired usage level at which a Web service is to be provided to a requestor before providing the Web service. A request for the Web service can be received from the requestor. Resources necessary to achieve the usage level can be determined. The Web service can be responsively provided in a dynamic fashion based upon the usage level.
- Full text
- View on Google Patents
Claims (1)
- A method for providing usage-based Web services comprising the steps of: before providing a Web service, identifying a desired usage level at which the Web service is to be provided to a requestor; receiving a request for the Web service from the requestor; determining resources necessary to achieve the usage level; and responsively providing the Web service in a dynamic fashion based upon the usage level. 2. The method of claim 1, further comprising the step of: charging the requestor for the Web service based at least in part upon the usage level. 3. The method of claim 1, further comprising the step of: allocating resources for handling the request at the usage level, wherein the Web service is provided using the allocated resources. 4. The method of claim 3, further comprising the steps of: analyzing resource consumption for handling the request; determining that more resources are being consumed than were allocated; and responsively restricting resource consumption. 5. The method of claim 4, further comprising the step of: preventing a denial of service attack with said restricting step. 6. The method of claim 1, further comprising the steps of: ascertaining resources that are available for handling requests; and adjusting at least one of the usage level at which the Web service is provided and a quantity of available resources based upon the determining and ascertaining steps. 7. The method of claim 6, further comprising the step of: when the usage level is adjusted, responsively adjusting a cost associated with providing the Web service. 8. The method of claim 6, wherein insufficient resources are available for handling the request at the usage level, said method further comprising the step of: dynamically downgrading the usage level at which the Web service is provided. 9. The method of claim 6, wherein insufficient resources are available for handling the request at the usage level, said method further comprising the step of: dynamically downgrading the usage levels at which other Web services are provided to free up resources so that the request can be provided at the usage level. 10. The method of claim 6, wherein insufficient resources are available for handling the request at the usage level, said method further comprising the step of: dynamically acquiring additional resources so that the request can be provided at the usage level. 11. The method of claim 6, wherein a surplus of resources are available for handling the request, said method further comprising the step of: dynamically upgrading the usage level at which the Web service is provided. 12. The method of claim 6, wherein the identifying step is part of a registration process, and wherein a determination is made that insufficient resources exist to handle Web services for the requestor a significant period before services are to be provided, and wherein said adjusting step expands an infrastructure so that resources will be available for the requestor when needed. 13. The method of claim 1, further comprising the step of: comparing resource usage patterns of the requestor against the usage level; and charging the requestor based upon the comparing step. 14. A machine-readable storage having stored thereon, a computer program having a plurality of code sections, said code sections executable by a machine for causing the machine to perform the steps of: before providing a Web service, identifying a desired usage level at which the Web service is to be provided to a requestor; receiving a request for the Web service from the requestor; determining resources necessary to achieve the usage level; responsively providing the Web service in a dynamic fashion based upon the usage level; and charging the requestor for the Web service based at least in part upon the usage level. 15. The machine-readable storage of claim 14, further causing the machine to perform the steps of: allocating resources for handling the request at the usage level, wherein the Web service is provided using the allocated resources; analyzing resource consumption for handling the request; comparing the resource consumption to the resource allocation; and adjusting at least one of usage level and resource availability responsive to the comparing step. 16. The machine-readable storage of claim 14, further causing the machine to perform the steps of: ascertaining resources that are available for handling requests; and adjusting at least one of the usage level at which the Web service is provided and a quantity of available resources based upon the determining and ascertaining steps. 17. The machine-readable storage of claim 14, further causing the machine to perform the steps of: when the usage level is adjusted, responsively adjusting a cost associated with providing the Web service. 18. A system for providing usage-based Web services comprising: a plurality of resources used to provide Web services; a registrar configured to register users before providing Web services to the users, wherein each user is required to specify a usage level during registration; and a usage tracker configured to compare resources consumed by users against corresponding usage levels, wherein a cost for using the Web services depends upon the usage level of the user. 19. The system of claim 18, further comprising: a usage allocation engine configured to allocate resources to users based at least in part upon user usage levels. 20. The system of claim 18, further comprising: means for dynamically adjusting user usage levels based upon resource availability.
Description
1. Field of the Invention
The present invention relates to the field of Web services and, more particularly, to a usage-based methodology for providing Web services.
2. Description of the Related Art
As the Internet becomes increasingly pervasive in our daily lives, the use of software services, called Web services, within Internet-connected computing devices has increased in corresponding fashion. Web services, which are sometimes called application services, are services that are made available from a business's Web server for Web users or other Web-connected programs. Users can access Web services directly from a central server or through a peer-to-peer arrangement. Some Web services can communicate with other services, thereby exchanging procedures and data with one another. Often these data exchanges are aided by a class of software known as middleware.
One challenge that Web service providers currently face involves predicting and subsequently constructing an appropriate hardware infrastructure to satisfy the needs of its customer base. Because the infrastructure can be a predominant cost incurred by the Web service provider, a provider that surmounts this challenge in a cost-effective manner can have a significant market advantage over competing service providers.
To determine an appropriate infrastructure a service provider must assess the computing resources necessary to handle its customer's requirements. The service provider can then construct an infrastructure capable of handling these requirements considering present and future needs of its customer base as well as expected growth patterns.
Citations (7)
- US6775519B1
- US6466980B1
- US20020166117A1
- US20020133364A1
- US6934530B2
- US7305431B2
- US20040236852A1
Record as JSON
{
"publication_number": "US2006010236A1",
"country": "US",
"kind": "A1",
"title": "Usage-based methodology for providing web services",
"abstract": "A method for providing usage-based Web services can include the step of identifying a desired usage level at which a Web service is to be provided to a requestor before providing the Web service. A request for the Web service can be received from the requestor. Resources necessary to achieve the usage level can be determined. The Web service can be responsively provided in a dynamic fashion based upon the usage level.",
"claims": [
"1. A method for providing usage-based Web services comprising the steps of: before providing a Web service, identifying a desired usage level at which the Web service is to be provided to a requestor; receiving a request for the Web service from the requestor; determining resources necessary to achieve the usage level; and responsively providing the Web service in a dynamic fashion based upon the usage level. 2. The method of claim 1, further comprising the step of: charging the requestor for the Web service based at least in part upon the usage level. 3. The method of claim 1, further comprising the step of: allocating resources for handling the request at the usage level, wherein the Web service is provided using the allocated resources. 4. The method of claim 3, further comprising the steps of: analyzing resource consumption for handling the request; determining that more resources are being consumed than were allocated; and responsively restricting resource consumption. 5. The method of claim 4, further comprising the step of: preventing a denial of service attack with said restricting step. 6. The method of claim 1, further comprising the steps of: ascertaining resources that are available for handling requests; and adjusting at least one of the usage level at which the Web service is provided and a quantity of available resources based upon the determining and ascertaining steps. 7. The method of claim 6, further comprising the step of: when the usage level is adjusted, responsively adjusting a cost associated with providing the Web service. 8. The method of claim 6, wherein insufficient resources are available for handling the request at the usage level, said method further comprising the step of: dynamically downgrading the usage level at which the Web service is provided. 9. The method of claim 6, wherein insufficient resources are available for handling the request at the usage level, said method further comprising the step of: dynamically downgrading the usage levels at which other Web services are provided to free up resources so that the request can be provided at the usage level. 10. The method of claim 6, wherein insufficient resources are available for handling the request at the usage level, said method further comprising the step of: dynamically acquiring additional resources so that the request can be provided at the usage level. 11. The method of claim 6, wherein a surplus of resources are available for handling the request, said method further comprising the step of: dynamically upgrading the usage level at which the Web service is provided. 12. The method of claim 6, wherein the identifying step is part of a registration process, and wherein a determination is made that insufficient resources exist to handle Web services for the requestor a significant period before services are to be provided, and wherein said adjusting step expands an infrastructure so that resources will be available for the requestor when needed. 13. The method of claim 1, further comprising the step of: comparing resource usage patterns of the requestor against the usage level; and charging the requestor based upon the comparing step. 14. A machine-readable storage having stored thereon, a computer program having a plurality of code sections, said code sections executable by a machine for causing the machine to perform the steps of: before providing a Web service, identifying a desired usage level at which the Web service is to be provided to a requestor; receiving a request for the Web service from the requestor; determining resources necessary to achieve the usage level; responsively providing the Web service in a dynamic fashion based upon the usage level; and charging the requestor for the Web service based at least in part upon the usage level. 15. The machine-readable storage of claim 14, further causing the machine to perform the steps of: allocating resources for handling the request at the usage level, wherein the Web service is provided using the allocated resources; analyzing resource consumption for handling the request; comparing the resource consumption to the resource allocation; and adjusting at least one of usage level and resource availability responsive to the comparing step. 16. The machine-readable storage of claim 14, further causing the machine to perform the steps of: ascertaining resources that are available for handling requests; and adjusting at least one of the usage level at which the Web service is provided and a quantity of available resources based upon the determining and ascertaining steps. 17. The machine-readable storage of claim 14, further causing the machine to perform the steps of: when the usage level is adjusted, responsively adjusting a cost associated with providing the Web service. 18. A system for providing usage-based Web services comprising: a plurality of resources used to provide Web services; a registrar configured to register users before providing Web services to the users, wherein each user is required to specify a usage level during registration; and a usage tracker configured to compare resources consumed by users against corresponding usage levels, wherein a cost for using the Web services depends upon the usage level of the user. 19. The system of claim 18, further comprising: a usage allocation engine configured to allocate resources to users based at least in part upon user usage levels. 20. The system of claim 18, further comprising: means for dynamically adjusting user usage levels based upon resource availability."
],
"description_excerpt": "1. Field of the Invention\n\nThe present invention relates to the field of Web services and, more particularly, to a usage-based methodology for providing Web services.\n\n2. Description of the Related Art\n\nAs the Internet becomes increasingly pervasive in our daily lives, the use of software services, called Web services, within Internet-connected computing devices has increased in corresponding fashion. Web services, which are sometimes called application services, are services that are made available from a business's Web server for Web users or other Web-connected programs. Users can access Web services directly from a central server or through a peer-to-peer arrangement. Some Web services can communicate with other services, thereby exchanging procedures and data with one another. Often these data exchanges are aided by a class of software known as middleware.\n\nOne challenge that Web service providers currently face involves predicting and subsequently constructing an appropriate hardware infrastructure to satisfy the needs of its customer base. Because the infrastructure can be a predominant cost incurred by the Web service provider, a provider that surmounts this challenge in a cost-effective manner can have a significant market advantage over competing service providers.\n\nTo determine an appropriate infrastructure a service provider must assess the computing resources necessary to handle its customer's requirements. The service provider can then construct an infrastructure capable of handling these requirements considering present and future needs of its customer base as well as expected growth patterns.",
"cpc": [
"H04L 67/53",
"H04L 67/02",
"H04L 67/306",
"H04L 67/61"
],
"ipc": [
"G06F 15/16"
],
"assignees": [
"International Business Machines Corp"
],
"inventors": [
"Colin Meiser",
"Jason Salcido",
"Keeley Weisbard"
],
"filing_date": "2004-06-10",
"publication_date": "2006-01-12",
"priority_date": "2004-06-10",
"application_number": "US-86501904-A",
"family_id": "35542650",
"cited_by_count": 25,
"citations": [
"US6775519B1",
"US6466980B1",
"US20020166117A1",
"US20020133364A1",
"US6934530B2",
"US7305431B2",
"US20040236852A1"
]
}
Record 5,719 of 8,000 in Patents full text (MLC-0201). Request the full dataset.