修改redis-conf中maxmemory来处理内存满了的问题
1、增加redis内存空间
命令如下:config set maxmemory 100mb
2、使用内存淘汰
命令如下:maxmemory-policy allkeys-lru
redis内存淘汰的几种策略
maxmemory-policy 参数指定的策略来删除不要需要的键直到redis占用的内存小于指定内存。
noeviction(默认策略):对于写请求不再提供服务,直接返回错误(DEL请求和部分特殊请求除外)
allkeys-lru:从所有key中使用LRU算法进行淘汰
volatile-lru:从设置了过期时间的key中使用LRU算法进行淘汰
allkeys-random:从所有key中随机淘汰数据
volatile-random:从设置了过期时间的key中随机淘汰
volatile-ttl:在设置了过期时间的key中,根据key的过期时间进行淘汰,越早过期的越优先被淘汰
当使用volatile-lru、volatile-random、volatile-ttl这三种策略时,如果没有key可以被淘汰,则和noeviction一样返回错误
3、redis集群
Redis集群有三种方式:客户端分片、代理分片、RedisCluster(如何实现redis集群请参考连接)