Distributed lock — механизм блокировки ресурса, который работает между несколькими инстансами сервиса. Обычный sync.Mutex работает только внутри одного процесса, а если у тебя три реплики — нужна внешняя блокировка. Redis с SETNX + TTL — самый популярный вариант. Redlock — алгоритм от автора Redis для надёжных распределённых блокировок. В нашем проекте мы используем FOR UPDATE SKIP LOCKED в PostgreSQL — это по сути распределённая блокировка на уровне строк, где база выступает координатором. Ключевой момент — TTL, чтобы блокировка не зависла навечно при падении держателя.
Что такое distributed lock?
Middle+
457 просмотровAFK Offer AI
Что такое circular dependency?