Distributed Locking Algorithms

The purpose of a lock is to ensure that among several nodes that might try to do the same piece of work, only one actually does it (at least only one at a time). That work might be to write some data to a shared storage system, to perform some computation, to call some external API, or suchlike. At a high level, there are two reasons why you might want a lock in a distributed application: for efficiency or for correctness.

Parameters

  • nn: number of clients
  • ff: number of files

Filters

Computational Model

Randomization

Approximation

Algorithms Table

Displaying 2 of 2 algorithms

See more
Chubby (Mike Burrows)2006O(n)O(n)O(f)O(f)
Leases (Cary G Gray and David R Cheriton)1989O(n)O(n)O(f)O(f)

Reductions Table

Insuffient Data to display table

Other relevant algorithms

Insuffient Data to display table