Distributed Systems: Distributed Lock Strategies and The locker problem