1、redis满了,怎么处理?
(1)内存淘汰策略(2)集群,动态增加redis服务器(推荐)
2、val比较大时(比如50MB),会有什么影响?
因为redis是单线程,多路IO复用的,所以当一个val比较大时,处理时间也会变长,导致其他操作会阻塞。
3、mysql里有2000W数据,redis只存20w的数据,如何保证redis中的数据都是热点数据?
redis默认是:noeviction: 不删除策略。
可以配置,内存淘汰策略,来实现随时间动态调整redis内存数据。
提供6种淘汰策略:
voltile-lru:从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰
volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中挑选将要过期的数据淘汰
volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰
allkeys-lru:从数据集(server.db[i].dict)中挑选最近最少使用的数据淘汰
allkeys-random:从数据集(server.db[i].dict)中任意选择数据淘汰
no-enviction(驱逐):禁止驱逐数据