SaaS Platforms' Redis Roadmap
The purpose of this epic is to create a centralized view of priorities for ServiceRedis. This epic should be considered the single source of truth of ServiceRedis roadmap.
Product DRI: @swiskow
EM: @kwanyangu
FY25 Goals
Initiative | Purpose | Theme | Comment | |
---|---|---|---|---|
&1105 (closed) | Prove the resharding model by scaling out and online re-sharding of Redis Cluster | Prevent Saturation | themeHorizontal Scalability | Top priority as it gives actual horizontal scalability |
&1236 (closed) | Migrating redis-repository-cache to a Redis Cluster | Prevent Saturation in ServiceRedisRepositoryCache. | themeSaturation Response | ServiceRedisClusterRepoCache is now serving repository-cache related traffic (dashboard). The repository cache workload is now horizontally scalable. |
Next
Initiative | Purpose | Theme | Comments | |
---|---|---|---|---|
#2466 | Cluster resharding strategy | Document criteria for when scaling up a Redis Cluster is required for an instance. |
themeHorizontal Scalability Objective: Prevent Saturation |
- |
- | Deployment Guidelines | Document considerations and recommendations for deploying a new Redis instance. |
themeScalability Advocacy and Facilitation Objective: Low-touch Configuration |
Good to be picked after Horizontally scale Sidekiq since we will have redis-cluster and redis cookbooks in place |
#3560 | Discussion: Long-term view on Redis (deployment modes and upgrades) | Currently, GKE is not an option due to concerns on the performance overheads #2893 (comment 1806681120). | ||
- | Auto reshard (scale-up) Clusters | Build tools to allow clusters to grow automatically when additional capacity is required |
themeScalability Advocacy and Facilitation Objective: Low-touch Configuration |
- |
Previous efforts
Details
Initiative | Purpose | Theme | |
---|---|---|---|
&944 (closed) | Stop using namespaces in sidekiq | Allow us to safely scale up Redis Cluster when future saturations are forecasted. | |
&941 (closed) | Upgrading Sidekiq and Redis gems | GitLab Rails application is well positioned to handle Redis Cluster scale-ups ( &1105 (closed)) and Sidekiq sharding ( #2541 (comment 1592705997)) | |
&1055 (closed) | Cluster for redis-sharedstate
|
Horizontal scaling for sharedstate
|
themeHorizontal Scalability Objective: Prevent Saturation |
&1066 (closed) | Functional Partitioning for pub/sub in Redis | Gain headroom in sharedstate
|
themeSaturation Response Objective: Prevent Saturation |
&1094 (closed) | Migrate Exclusive Lease keys to redis-cluster-shared-state |
Edited by Kennedy Wanyangu