|> Distributed locks with "prioritized lock acquisition queue" capabilities based on the Redis Database. |> Each lock request is put into the request queue (each lock is hosted by its own queue separately from other queues) and processed in order of their priority (FIFO). |> Each lock request lives some period of time (RTTL) (with requeue capabilities) which guarantees the request queue will never be stacked. |> In addition to the classic `queued` (FIFO) strategy RQL supports `random` (RANDOM) lock obtaining strategy when any acquirer from the lock queue can obtain the lock regardless the position in the queue. |> Provides flexible invocation flow, parametrized limits (lock request ttl, lock ttl, queue ttl, lock attempts limit, fast failing, etc), logging and instrumentation.
Required Ruby Version
>= 4.0
Authors
Rustam Ibragimov
Versions
-
1.21.0
-
source
- 1.21.0 source October 13, 2026 (207 KB)
-
-
1.20.0
-
source
- 1.20.0 source October 11, 2026 (193 KB)
-
-
1.19.0
-
source
- 1.19.0 source October 11, 2026 (145 KB)
-
-
1.18.0
-
source
- 1.18.0 source October 11, 2026 (144 KB)
-
-
1.17.0
-
source
- 1.17.0 source October 04, 2026 (116 KB)
-