Integration of service scaling and service discovery systems
First Claim
1. A system for managing automatic scaling of a pool of servers based on domain name system (DNS) records associated with the pool of servers, the system comprising:
- a hosting system configured with computer executable instructions to manage the pool of servers, wherein the pool of servers includes a plurality of servers collectively configured to implement a network-accessible service, and wherein the hosting system is configured to modify a number of servers within the pool of servers based at least in part on a demand for the network-accessible service; and
a resolver system comprising a processor configured with computer executable instructions that when executed cause the system to;
receive client requests to resolve an identifier of the network-accessible service into a set of network addresses; and
respond to the client requests by providing the DNS records, wherein the DNS records identify network addresses for at least some of the plurality of servers within the pool;
wherein the computer executable instructions, when executed, further cause the resolver system to;
receive a notification that the hosting system intends to remove a first server from the pool of servers;
request that the hosting system delay removal of the first server;
determine a point in time at which no valid DNS records are determined to exist that identify the first server as an endpoint for the network-accessible service, wherein the point in time is determined based at least partly on a time-to-live (TTL) value of the DNS records;
determine that the point in time has occurred and that no valid DNS records exist that identify the first server as an endpoint for the network-accessible service; and
after determining that no valid DNS records to exist that identify the first server as an endpoint for the network-accessible service, transmit instructions to the hosting system to proceed with removal of the first server from the pool of servers.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are described to enable integrating operation of a service record system with operation of an automatically scaled service hosting system. The service hosting system can maintain a set of servers to provide a network-accessible service, and the service record system can maintain records identifying the set of servers as endpoints for the service. The service hosting system can further modify the number of servers within the set based, for example, on demand. When the service hosting system intends to remove a server from the set, it may notify the service record system. The service record system, in turn, can determine whether any valid records are predicted to exist that identify the to-be-removed server as an endpoint for the service. If such records are predicted to exist, removal of the server can be delayed until those records expire, to prevent errors resulting from client reliance on those records.
43 Citations
21 Claims
-
1. A system for managing automatic scaling of a pool of servers based on domain name system (DNS) records associated with the pool of servers, the system comprising:
-
a hosting system configured with computer executable instructions to manage the pool of servers, wherein the pool of servers includes a plurality of servers collectively configured to implement a network-accessible service, and wherein the hosting system is configured to modify a number of servers within the pool of servers based at least in part on a demand for the network-accessible service; and a resolver system comprising a processor configured with computer executable instructions that when executed cause the system to; receive client requests to resolve an identifier of the network-accessible service into a set of network addresses; and respond to the client requests by providing the DNS records, wherein the DNS records identify network addresses for at least some of the plurality of servers within the pool; wherein the computer executable instructions, when executed, further cause the resolver system to; receive a notification that the hosting system intends to remove a first server from the pool of servers; request that the hosting system delay removal of the first server; determine a point in time at which no valid DNS records are determined to exist that identify the first server as an endpoint for the network-accessible service, wherein the point in time is determined based at least partly on a time-to-live (TTL) value of the DNS records; determine that the point in time has occurred and that no valid DNS records exist that identify the first server as an endpoint for the network-accessible service; and after determining that no valid DNS records to exist that identify the first server as an endpoint for the network-accessible service, transmit instructions to the hosting system to proceed with removal of the first server from the pool of servers. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented method comprising:
-
obtaining information associating a pool, comprising a plurality of servers configured to implement a network-accessible service, with DNS records identifying endpoints of the network-accessible service; receiving a notification from a hosting system that a first server, of the plurality of servers, is intended for removal from the pool; requesting that the hosting system delay removal of the first server; determining a point in time at which no valid DNS records are forecasted to exist that identify the first server as an endpoint for the network-accessible service; determining that the point in time has occurred and that no valid DNS records are forecasted to exist that identify the first server as the endpoint for the network-accessible service; and after determining that no valid DNS records are forecasted to exist that identify the first server as the endpoint for the network-accessible service, transmitting instructions to the hosting system to proceed with removal of the first server from the pool of servers. - View Dependent Claims (7, 8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
a data store including information associating a pool, comprising a plurality of servers configured to implement a network-accessible service, with service records identifying endpoints of the network-accessible service; and a processor configured with computer-executable instructions that when executed cause the system to; receive a notification that a first server, of the plurality of servers, will become unavailable to provide the network-accessible service; determine a point in time at which valid service records are not forecasted to exist that identify the first server as an endpoint for the network-accessible service, wherein the point in time is determined based at least partly on a time-to-live (TTL) values of the service records; determine that the point in time has occurred and that no valid DNS records are forecasted to exist that identify the first server as the endpoint for the network-accessible service; and after determining that no valid DNS records are forecasted to exist that identify the first server as the endpoint for the network-accessible service, transmit instructions to the hosting system to proceed with rendering the first server unavailable to provide the network-accessible service. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
Specification