redis作为缓存-用RDB方式
作为数据库-用AOF方式
redis一般最多存4G的数据
单机 单点 单实例的问题:
单点故障/容量有限/压力问题
AKF拆分后,上面的问题会解决
主从结构解决单点故障;多主 根据功能不同存入不同redis 解决容量问题;
不同redis存放范围不同的数据 解决压力问题。
单节点容量问题解决:
一般redis耗用4G
将数据根据逻辑放到不同redis中
第一种:数据可分:数据可以根据不同业务逻辑 写入不同的redis,控制逻辑写在client端。
第二种:数据不可分:
(1)hash取模
(2)random
(3)一致性hash
一致性hash讲解:
redis 对应唯一标示 node ,node通过hash算法映射到0~3的32次方范围的一个点。数据来后 也通过hash映射一个值,大于此值 且距离最近的node 就是需要将此数据放上去的点。
数据倾斜问题:一个ip映射到环上的十个节点 ,数据不会集中落在圆环的某一位置。