发明名称 Identity-based casting of network addresses
摘要 Systems, methods, and computer-readable media identify a server to a client device. In one implementation, server identification data is stored for a plurality of servers associated with a service. An identifier of a client device is received. One of the plurality of servers is selected to provide the service to the client device, and the server is selected based on the identifier of the client device. The server identification data for the selected server is provided to the client device. The selected server may receive a request to access the service from the client device, and may process the request consistent with state data stored at the selected server.
申请公布号 US8996607(B1) 申请公布日期 2015.03.31
申请号 US201012801344 申请日期 2010.06.04
申请人 Amazon Technologies, Inc. 发明人 Bajaj Girish Bansilal;An Zhi
分类号 G06F15/16;G06F15/173;H04L29/08 主分类号 G06F15/16
代理机构 Knobbe, Martens, Olson & Bear, LLP 代理人 Knobbe, Martens, Olson & Bear, LLP
主权项 1. A computer-implemented method for identifying a server to a client, comprising: storing, at an allocation server, a first set of server identification data for a plurality of content servers associated with a domain name, the plurality of content servers including at least a first content server and a second content server, wherein the allocation server is configured to store server identification data for multiple pluralities of content servers, each plurality of content servers associated with a different domain name; receiving, at the allocation server, a first request to access one of the plurality of content servers associated with the domain name from a first client device, the first request including an identifier of the first client device; receiving, at the allocation server, a second request to access one of the plurality of content servers associated with the domain name from a second client device, the second request including an identifier of the second client device; selecting the first content server to process the first request, wherein the first content server is selected based on at least the identifier of the first client device and the domain name, and the proximity of a location of a hash value for the first client device on a circle to a location of a hash value for the first content server on the circle, and wherein the location of the hash value for the first client device and the location of the hash value for the first content server on the circle are determined by normalizing the hash value of the first client device and the hash value of the first content server to between 0 and 1; selecting the second content server to process the second request, wherein the second content server is selected based on at least the identifier of the second client device and the domain name, and the proximity of a location of a hash value for the second client device on the circle to a location of a hash value for the second content server on the circle, and wherein the location of the hash value for the second client device and the location of the hash value for the second content server on the circle are determined by normalizing the hash value of the second client device and the hash value of the second content server to between 0 and 1; providing the server identification data for the first content server to the first client device, wherein the first client device stores the server identification data for the first content server enabling the first client device to communicate with the first content server on subsequent requests to the plurality of content servers associated with the domain name while bypassing the allocation server; and providing the server identification data for the second content server to the second client device, wherein the second client device stores the server identification data for the second content server enabling the second client device to communicate with the second content server on subsequent requests to the plurality of content servers associated with the domain name while bypassing the allocation server, wherein the first content server processes the subsequent requests of the first client device consistent with first state data stored at the first content server, the first state data corresponding to the first client device, wherein the second content server processes the subsequent requests of the second client device consistent with second state data stored at the second content server, the second state data corresponding to the second client device, and wherein the first state data includes information related to an interaction between the first client device and the first content server that occurred while processing the first request.
地址 Seattle WA US