Redis 分区

数据分片把容量与负载分散到多实例。

Beginner
Key Points分区解决单实例内存上限与热点;客户端分片、Twemproxy、Redis Cluster 三种思路。

三种方案

方案特点
客户端分片应用按 key 哈希选节点
Twemproxy / Codis代理层统一分片,对客户端透明
Redis Cluster官方集群,16384 槽自动分配

哈希取模示例

Python
nodes = ['redis-0', 'redis-1', 'redis-2']
def node_for(key): return nodes[hash(key) % len(nodes)]
After partitioning, single-key ops are fine, but cross-node transactions/multi-key ops (e.g. SUNION across nodes) fail. Cluster uses hash slots; keep related keys on one slot via hash tags.

Friends & Partners