You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As the usage has grown we've started seeing some impact form `KEYS` being
blocking and holding up the Redis instance. This is made worse by the
fact than on startup many workers will be attempting this at the same
time.
This change moves to using the non blocking `SCAN` instead. The main
concern here is that the collection of keys can change during iteration
however for this use case I think this is fine as the 2 changes we can
expect are:
- A key goes away: this would be another startup routine removing a
worker key after re-enqueuing its job so should be safe.
- A key appearing: this would be a new worker coming online and should
not be impacting the recovery mechanism as it should also be part of
`expected_processing_queue_keys`.
0 commit comments