Redis v5 gem feasibility notes
As redis-rb v5 separately packages Redis Cluster functionalities in redis-clustering
gem that uses redis-cluster-client
, we would need to examine and verify that there will be no regression when upgrading from v4.8.0
to v5.0.8
.
This issue tracks any new findings that require a patch or upstreamed fix.
Important recent fixes
Performance changes
- start-up tuning which allows users to configure slow-command-specific timeouts
- add an environment variable to be able to configure a data type of slots and nodes mapping
On concurrency
Since redis-cluster-client
provides an option to run all pipelines on the main thread, we will transit into that for a start. This ensures that there are minimal behavioural changes when upgrading the gem.
The option to use concurrent workers can be a way to reduce the high latency of tail events in #2503. It can be explored separately from this epic.
Note: v5.0.8
released in https://github.com/redis/redis-rb/commit/2b183addb9175641a48e1d8616772282a31c0532 which contains several key changes
- transaction support -- https://github.com/redis/redis-rb/pull/1226
- compatibility with
redis-cluster-client
>= v6.0.0
-- https://github.com/redis/redis-rb/pull/1222