System and method for routing service requests
First Claim
Patent Images
1. A computer-implemented method of routing requests to hosts, the method comprising:
- storing a model of a service framework organized in a hierarchy comprising;
a first level including a plurality of leaf nodes, individual leaf nodes corresponding to one of a plurality of hosts, anda second level corresponding to a first plurality of zones, wherein individual zones of the first plurality of zones comprise a subset of the plurality of leaf nodes; and
for individual service requests to be processed by a host of the plurality of hosts;
receiving a service request;
discovering a plurality of candidate hosts from the plurality of the leaf nodes for processing the request;
assigning a selection probability to individual candidate hosts of the plurality of candidate hosts based, at least in part, on a probabilistic distribution of measured latency data for the plurality of candidate hosts;
selecting a candidate host for servicing the service request based, at least in part, on the assigned selection probability; and
routing the service request to the selected candidate host.
0 Assignments
0 Petitions
Accused Products
Abstract
A computer-implemented method routes service requests to services in a service framework provided by a plurality of hosts. The method comprises receiving a service request for a service in the service framework and discovering a plurality of candidate hosts that host the service. The plurality of candidate hosts are a subset of the plurality of hosts. The method further comprises selecting a candidate host from the plurality of candidate hosts based on measured latencies for the plurality of candidate hosts and routing the service request to the selected candidate host.
-
Citations
20 Claims
-
1. A computer-implemented method of routing requests to hosts, the method comprising:
-
storing a model of a service framework organized in a hierarchy comprising; a first level including a plurality of leaf nodes, individual leaf nodes corresponding to one of a plurality of hosts, and a second level corresponding to a first plurality of zones, wherein individual zones of the first plurality of zones comprise a subset of the plurality of leaf nodes; and for individual service requests to be processed by a host of the plurality of hosts; receiving a service request; discovering a plurality of candidate hosts from the plurality of the leaf nodes for processing the request; assigning a selection probability to individual candidate hosts of the plurality of candidate hosts based, at least in part, on a probabilistic distribution of measured latency data for the plurality of candidate hosts; selecting a candidate host for servicing the service request based, at least in part, on the assigned selection probability; and routing the service request to the selected candidate host. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a plurality of host computing devices for responding to requests, wherein the plurality of host computing devices are organized in a hierarchy comprising; a first level including a plurality of leaf nodes, wherein individual leaf nodes correspond to one of the plurality of host computing devices; and a second level defining a first plurality of zones, wherein individual zones comprise a subset of the plurality of leaf nodes; wherein the system is configured to; for individual service requests to be processed by a host computing device of the plurality of host computing devices, discover a plurality of candidate host computing devices from the leaf nodes for processing the request; select a candidate host computing device based, at least in part, on a probabilistic distribution of measured latency data for the plurality of candidate hosts; and route the service request to the selected candidate host computing device. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable medium bearing computer-executable instructions which, when executed on a computing device, direct the computing device to:
-
responsive to a service request, discover a set of candidate host computing devices, the set of candidate host computing devices being a subset of a plurality of host computing devices, the plurality of host computing devices organized in a hierarchy comprising; a first level including a plurality of leaf nodes, individual leaf nodes corresponding to one of the plurality of host computing devices; and a second level including a first plurality of zones, wherein individual zones of the first plurality of zones comprise a subset of the plurality of leaf nodes; select a candidate host computing device of the plurality of host computing devices based, at least in part, on a probabilistic distribution of measured latency data for the set of candidate host computing devices; and route the service request to the selected candidate host computing device. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification