Спроектируй распределённый сервис блокировок, который обеспечивает взаимное исключение между несколькими узлами в распределённой системе. Рассмотри механизмы получения и освобождения блокировок, политики timeout и expiry для предотвращения deadlock'ов от упавших процессов, гарантии справедливости на основе FIFO, реализацию fencing token'ов для предотвращения доступа устаревших владельцев блокировок к ресурсам, стратегии репликации для высокой доступности и техники оптимизации производительности при высокой конкуренции. — ДейлиПреп