A method of balanced consistent hashing for distributed resource management comprising: determining locations of a plurality of resource identifiers in a resource identification space; dividing the resource identification space into a first plurality of disjoint areas of responsibility, wherein each area of responsibility is associated with a distinct network node of a plurality of nodes, each network node of the plurality of nodes is a member of a cluster, and a sum of all the areas of responsibility encompasses the entire resource identification space; assigning management responsibility for a shared resource associated with a resource identifier located in a first area of responsibility to an associated network node, wherein the associated network node is associated with the first area of responsibility, the assigning comprises distributing lock mastering responsibilities associated with the resource identifier to the associated network node, and the distributing lock mastering responsibilities prevents concurrent access to the shared resource; and detecting a cluster membership change, wherein the cluster membership change involves a first network node being added to or removed from the cluster, in response to the detecting, dividing the resource identification space into a second plurality of disjoint areas of responsibility and redistributing lock mastering responsibilities, and the redistributing comprises transferring responsibilities associated with a first resource identifier to a second network node and transferring responsibilities associated with a second resource identifier to a third network node. determining locations of a plurality of resource identifiers in a resource identification space; dividing the resource identification space into a first plurality of disjoint areas of responsibility, wherein each area of responsibility is associated with a distinct network node of a plurality of nodes, each network node of the plurality of nodes is a member of a cluster, and a sum of all the areas of responsibility encompasses the entire resource identification space; each area of responsibility is associated with a distinct network node of a plurality of nodes, each network node of the plurality of nodes is a member of a cluster, and a sum of all the areas of responsibility encompasses the entire resource identification space; assigning management responsibility for a shared resource associated with a resource identifier located in a first area of responsibility to an associated network node, wherein the associated network node is associated with the first area of responsibility, the assigning comprises distributing lock mastering responsibilities associated with the resource identifier to the associated network node, and the distributing lock mastering responsibilities prevents concurrent access to the shared resource; and the associated network node is associated with the first area of responsibility, the assigning comprises distributing lock mastering responsibilities associated with the resource identifier to the associated network node, and the distributing lock mastering responsibilities prevents concurrent access to the shared resource; and detecting a cluster membership change, wherein the cluster membership change involves a first network node being added to or removed from the cluster, in response to the detecting, dividing the resource identification space into a second plurality of disjoint areas of responsibility and redistributing lock mastering responsibilities, and the redistributing comprises transferring responsibilities associated with a first resource identifier to a second network node and transferring responsibilities associated with a second resource identifier to a third network node. the cluster membership change involves a first network node being added to or removed from the cluster, in response to the detecting, dividing the resource identification space into a second plurality of disjoint areas of responsibility and redistributing lock mastering responsibilities, and the redistributing comprises transferring responsibilities associated with a first resource identifier to a second network node and transferring responsibilities associated with a second resource identifier to a third network node.