Patent attributes
In an approach, load balancing is performed in a distributed system of nodes representing computational resources such as clients, servers, server clusters, virtual machines, and so forth. Each node within the distributed system is responsible for processing requests associated with one or more districts in a geographical area. In order to perform load balancing each node is programmed or configured to autonomously perform a set of actions on a periodic basis which includes checking neighbors for updates, determining whether to spawning a new node, determining whether to terminate, and balancing load with neighbors. As a result, the number of nodes and the districts for which each node is responsible dynamically changes over time to minimize the load placed on each node and to constrain the number of nodes that need to be active within the distributed system to reduce resource costs.