A Distributed Lock Manager Using Paxos: Design and Implementation of Warlock, a Consensus Based Lock Manager
Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
Locking primitives are one of the mechanisms used by distributed systems to synchronize access to shared data or to serialize their actions. Depending on the design, the locking service may constitute a single point of failure. This requires the manager itself to be distributed. Distributed solutions that address this using weak consistency models might lead to diverging states which in some cases are not possible to merge within acceptable effort. Solutions that are based on strong consistency models dictate the requirement of a static cluster.
We propose a design that combines Multi-Paxos algorithm with a reconfigurable state machine for a locking service. The primary goal of the service is strong consistency with availability and performance as secondary requirements.
We demonstrate the feasibility of such a design by implementing it in Erlang and testing it to check if it conforms to specified requirements. We demonstrate that it can provide the throughput required for a large web application while guaranteeing strong consistency.
Place, publisher, year, edition, pages
IT, 13 027
Engineering and Technology
IdentifiersURN: urn:nbn:se:uu:diva-198324OAI: oai:DiVA.org:uu-198324DiVA: diva2:615805
Master Programme in Computer Science
Pearson, JustinChristoff, Ivan