redis常见问题

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(驱逐):禁止驱逐数据

原文地址:https://www.cnblogs.com/xingrui/p/10759195.html