方案一:业务拆分
可以按照项目的业务模块来拆分,一个业务使用一个Redis或多个业务使用一个Redis
![](https://i-blog.csdnimg.cn/blog_migrate/143616742d90a39f36b0cd4de8ba978f.jpeg)
缺点:不能处理业务不能拆分的情况
方案二:Hash取模
准备一个Hash算法,对Key进行Hash计算,这个Hash值对Redis的个数计算取余,放到对应的Redis里
![](https://i-blog.csdnimg.cn/blog_migrate/4c6338b19deacf058dff986ed2c02df6.jpeg)
缺点:取余的结果是固定的,如果再加Redis会导致所有数据洗牌
方案三:随机存入
将数据随机放入Redis中,把多个Redis当做MQ来使用
![](https://i-blog.csdnimg.cn/blog_migrate/643520e3fd5155ed0d8cbeba6a3cf1b4.jpeg)
缺点:加Redis虽然不会照成所有数据洗牌,但会有一部分数据不能被命中,产生击穿问题
方案四:Hash环
将每个Redis计算一个唯一的Hash值,数据的Key也计算一个唯一的Hash值,这些Hash值可以抽象成一个Ha