主权项 |
1. A distributed computing system comprising:
one or more computer-readable storage media storing computer-executable instructions of a controller module executed by one or more processors to:
maintain a data structure including a plurality of server update domains, each server update domain including a set of machines of a plurality of machines which may be concurrently updated, the plurality of machines hosting a plurality of instances of each of a plurality of services, each service having a plurality of respective update domains, each instance being assigned to one of the plurality of update domains of the respective service and wherein an allocation of instances to the plurality of machines is constrained such that each machine of the plurality of machines may not host instances from different update domains of the same service and an updating of the distributed computing system is constrained such that different machines hosting instances of different update domains of the same service may not be concurrently updated; andallocate the plurality of instances to the plurality of machines, the controller module allocating the instances to the plurality of machine such that a number of server update domains is minimized by, for at least one instance, determining at least one machine of the plurality machines that, if allocated the at least one instance, may be assigned to a lowest server update domain based on an ordered identification system of the server update domains.
|