Routing for large server deployments
First Claim
1. A method comprising:
- receiving, by a node manager, a first request from a client device;
generating, by the node manager, a plurality of uniform resource locators (URLs), each of the plurality of URLs comprising an encoded representation of a network address associated with a respective node from a plurality of nodes in a computer cluster;
sending a first response to a client device, the first response comprising the plurality of URLs;
receiving, by a load balancer, a second request from the client device, the second request comprising a first URL from the plurality of URLs;
determining, by the load balancer, the second request should be routed to a first network address based on decoding the first URL, the first network address associated with a first node from the plurality of nodes; and
forwarding, by the load balancer, the second request to the first node in response to the determining.
1 Assignment
0 Petitions
Accused Products
Abstract
In one aspect, the present disclosure relates to a method comprising: receiving a first request from a client device; generating a plurality of uniform resource locators (URLs), each of the plurality of URLs comprising an encoded representation of a network address associated with a respective node from a plurality of nodes in a computer cluster; sending a first response to a client device, the first response comprising the plurality of URLs; receiving a second request from the client device, the second request comprising a first URL from the plurality of URLs; determining the second request should be routed to a first network address based on decoding the first URL, the first network address associated with a first node from the plurality of nodes; and forwarding the second request to the first node in response to the determining.
31 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a node manager, a first request from a client device; generating, by the node manager, a plurality of uniform resource locators (URLs), each of the plurality of URLs comprising an encoded representation of a network address associated with a respective node from a plurality of nodes in a computer cluster; sending a first response to a client device, the first response comprising the plurality of URLs; receiving, by a load balancer, a second request from the client device, the second request comprising a first URL from the plurality of URLs; determining, by the load balancer, the second request should be routed to a first network address based on decoding the first URL, the first network address associated with a first node from the plurality of nodes; and forwarding, by the load balancer, the second request to the first node in response to the determining.
-
-
2. The method of claim 1 wherein each of the plurality of URLs comprises a hash of an Internet Protocol (IP) address associated with a respective node from the plurality of nodes.
-
3. The method of claim 1 wherein generating the plurality of URLs comprises generating a web page comprising the plurality of URLs in response to receiving the request from the client device.
-
4. The method of claim 1 comprising:
-
receiving a second response from the first node; and forwarding the second response to the client device.
-
-
5. The method of claim 1 wherein the node manager is a cluster node manager.
-
6. The method of claim 1 wherein the load balancer is a cluster load balancer.
-
7. The method of claim 1 where each of the plurality of URLs comprises an encoded representation of a network address within the subdomain portion of the URL.
-
8. The method of claim 1 where each of the plurality of URLs comprises an encoded representation of a network address within the path portion of the URL.
-
9. A method comprising:
-
sending a first request to a cluster load manager; receiving a first response comprising from the cluster node manager, the first response comprising a plurality of uniform resource locators (URLs), each of the plurality of URLs comprising an encoded representation of a network address associated with a respective node from a plurality of nodes in a computer cluster; sending a second request to a cluster load balancer, the second request comprising a first URL from the plurality of URLs, wherein the cluster load balancer is configured to; determine the second request should be routed to a first network address based on decoding the first URL, the first network address associated with a first node from the plurality of nodes; and forward f the second request to the first node in response to the determining.
-
-
10. The method of claim 9 comprising:
receiving a second response from the cluster load balancer, the second response generated by the first node in response to receiving the second request forwarded by the cluster load balancer.
-
11. The method of claim 9 wherein each of the plurality of URLs comprises a hash of an Internet Protocol (IP) address associated with a respective node from the plurality of nodes.
-
12. The method of claim 9 wherein sending the first request to the cluster load manager comprises sending a request to an Hypertext Transfer Protocol (HTTP) server.
-
13. The method of claim 9 where each of the plurality of URLs comprises an encoded representation of a network address within the subdomain portion of the URL.
-
14. The method of claim 9 where each of the plurality of URLs comprises an encoded representation of a network address within the path portion of the URL.
-
15. A system comprising:
-
a node manager comprising; a first processor; and a first non-volatile memory storing computer program code that when executed on the first processor causes the first processor to execute a first process operable to; receive a first request from a client device; generate a plurality of uniform resource locators (URLs), each of the plurality of URLs comprising an encoded representation of a network address associated with a respective node from a plurality of nodes in a computer cluster; and send a first response to the client device, the first response comprising the plurality of URLs to a client device; and a load balancer comprising; a second processor; and a second non-volatile memory storing computer program code that when executed on the second processor causes the second processor to execute a second process operable to; receive a second request from the client device, the second request comprising a first URL from the plurality of URLs; determine the second request should be routed to a first network address based on decoding the first URL, the first network address associated with a first node from the plurality of nodes; and forward the second request to the first node in response to the determining.
-
-
16. The system of claim 15 wherein each of the plurality of URLs comprises a hash of an Internet Protocol (IP) address associated with a respective node from the plurality of nodes.
-
17. The system of claim 15 wherein generating the plurality of URLs comprises generating a web page comprising the plurality of URLs in response to receiving the request from the client device.
-
18. The system of claim 15 wherein the second process is operable to:
-
receive a second response from the first node; and forward the second response to the client device.
-
-
19. The system of claim 15 wherein the node manager is a cluster node manager.
-
20. The system of claim 15 the load balancer is a cluster load balancer.
Specification