Dynamic rerouting of service requests between service endpoints for web services in a composite service
First Claim
1. A computer-implemented method for rerouting a service request between service endpoints, the method comprising computer-implemented operations for:
- receiving, at a second web service, the service request from a first web service separate from the second web service, the first web service providing a first service and the second web service consumed by the first service in a composite service;
routing the service request to an initial service endpoint of the second web service configured to respond to the service request according to a service level agreement between the first web service and the second web service;
monitoring service criteria associated with the initial service endpoint;
determining, at the second web service, whether the service criteria associated with the initial service endpoint meet a performance threshold specified by the service level agreement; and
in response to determining that the service criteria do not meet the performance threshold specified by the service level agreement, rerouting the service request from the initial service endpoint of the second web service to a second service endpoint of the second web service or to an alternate service endpoint of a third web service, separate from the first web service and the second web service, for servicing the service request at the second web service or the third web service.
2 Assignments
0 Petitions
Accused Products
Abstract
Technologies are described herein for rerouting a service request between service endpoints. The service request is received, at a first web service, from a second web service. The first web service and the second web service may be components of a composite service. The service request is routed to an initial service endpoint configured to respond to the service request according to a service level agreement between the first web service and the second web service. Service criteria associated with the initial service endpoint are monitored. A determination is made as to whether the service criteria meet a performance threshold specified by the service level agreement. If the service criteria do not meet the performance threshold specified by the service level agreement, then the service request is rerouted from the initial service endpoint to an alternate service endpoint.
-
Citations
31 Claims
-
1. A computer-implemented method for rerouting a service request between service endpoints, the method comprising computer-implemented operations for:
-
receiving, at a second web service, the service request from a first web service separate from the second web service, the first web service providing a first service and the second web service consumed by the first service in a composite service; routing the service request to an initial service endpoint of the second web service configured to respond to the service request according to a service level agreement between the first web service and the second web service; monitoring service criteria associated with the initial service endpoint; determining, at the second web service, whether the service criteria associated with the initial service endpoint meet a performance threshold specified by the service level agreement; and in response to determining that the service criteria do not meet the performance threshold specified by the service level agreement, rerouting the service request from the initial service endpoint of the second web service to a second service endpoint of the second web service or to an alternate service endpoint of a third web service, separate from the first web service and the second web service, for servicing the service request at the second web service or the third web service. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer system, comprising:
-
a processor; a memory communicatively coupled to the processor; and a program module that, when executed by the processor, causes the computer system to reroute a service request between service endpoints by; receiving, at a second web service, the service request from a first web service separate from the second web service, the first web service providing a first service and the second web service consumed by the first service in a composite service; routing the service request to an initial service endpoint of the second web service configured to respond to the service request according to a service level agreement between the first web service and the second web service; monitoring service criteria associated with the initial service endpoint; determining, at the second web service, whether the service criteria meet a performance threshold specified by the service level agreement; and in response to determining that the service criteria do not meet the performance threshold specified by the service level agreement, identifying, at the second web service, a plurality of alternate service endpoints configured to respond to the service request according to the service level agreement and a monetary cost of utilizing each of the plurality of alternative service endpoints. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer storage device having computer-executable instructions stored thereon which, when executed by a computer, cause the computer to:
-
receive, at a second web service, a service request from a first web service, the first web service separate from the second web service, the first web service providing a first service and the second web service consumed by the first service-in a composite service; route the service request to an initial server computer of the second web service configured to respond to the service request according to a service level agreement between the first web service and the second web service; monitor server load of the initial server computer, service outages of the initial server computer, or response times of the initial server computer; determine whether the server load, the service outages, or the response times meet a performance threshold specified by the service level agreement; in response to determining that the server load, the service outages, or the response times do not meet the performance threshold specified by the service level agreement, identify a plurality of alternate server computers of the second web service or a third web service configured to respond to the service request according to the service level agreement; select an alternate server computer from the plurality of alternate server computers based on efficiency of the alternate server computer and monetary cost; and reroute the service request from the initial server computer to the selected alternate server computer.
-
-
21. A computer-implemented method for rerouting a service request between service endpoints, the method comprising computer-implemented operations for:
-
receiving, at a computer associated with a second web service, the service request from another computer separate from the second web service, the other computer providing a first service and the computer associated with the second web service providing a second service consumed by the first service in a composite service; routing the service request to an initial service endpoint of the second web service configured to respond to the service request according to a service level agreement between the other computer and the second web service; monitoring service criteria associated with the initial service endpoint; determining, at the second web service, whether the service criteria associated with the initial service endpoint meet a performance threshold specified by the service level agreement; and in response to determining that the service criteria do not meet the performance threshold specified by the service level agreement, rerouting the service request from the initial service endpoint of the second web service to a second service endpoint of the second web service or to an alternate service endpoint of a third web service, separate from the first web service and the second web service, for servicing the service request at the second web service or the third web service. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
Specification