Functional Partitioning for Feature Flags in Redis
I was taking a look at some traffic captures of redis-cache today and I noticed that Flipper feature flag lookups make up about 18-20% of the request volume. What is more, half of those lookups are for Gitaly feature flags, which use a very inefficient access pattern: they make N GET calls where N is the number of Gitaly feature flags. Luckily the Gitaly team is already working on making that more efficient: gitlab-org&8005 (closed).
I think this is an opportunity for reducing redis-cache CPU utilization. We should move the feature flag lookups to a new Redis shard.
Edited by Jacob Vosmaer