US 11,057,314 B1
Method for automatic management of capacity and placement for global services
Kamil Skalski, Bydgoszcz (PL); Elzbieta Czajka, Warsaw (PL); Filip Grzadkowski, Warsaw (PL); and Krzysztof Grygiel, Warsaw (PL)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Oct. 30, 2017, as Appl. No. 15/797,550.
Application 15/797,550 is a continuation of application No. 14/688,689, filed on Apr. 16, 2015, granted, now 9,832,138.
Claims priority of provisional application 61/980,486, filed on Apr. 16, 2014.
Int. Cl. G06F 15/16 (2006.01); H04L 12/911 (2013.01); H04L 12/803 (2013.01); G06F 9/50 (2006.01); H04L 29/08 (2006.01)
CPC H04L 47/783 (2013.01) [H04L 47/125 (2013.01); G06F 9/5083 (2013.01); H04L 67/1002 (2013.01)] 21 Claims
OG exemplary drawing
 
1. A computer-implemented method for creating new web service instances for a particular web service in a large-scale distributed system, the method comprising:
analyzing historical service load data to determine a total service load for the web service, wherein the web service is provided from assigned web service instances hosted by a plurality of datacenters included in the large-scale distributed system, each assigned web service instance having an existing service load capacity, and wherein the historical service load data is based at least in part on a model of data traffic assignments according to one or more load balancing rules;
determining whether a capacity needed to support the total service load is greater than the existing service load capacities of the assigned web service instances; and
when the capacity needed to support the total service load is greater than the existing service load capacities of the assigned web service instances, creating one or more new web service instances;
assigning a location score to each of a plurality of potential web service instance locations within the large-scale distributed system calculated, and
wherein assigning the location score for a given one of the plurality of potential web service instance locations includes multiplying a service load to be handled at the given one by a function of network distances associated with physical origins of service load traffic for the given one.