redis存储数据太多,内存溢出,导致异常
1.查看redis内存使用情况
登录redis后
java
info memory
2.查看分配给redis的最大内存
java
config get maxmemory
3.处理方式:拓展redis的最大内存
打开redis.conf文件,修改maxmemory
4.删掉键值重启redis后,发现删掉的数据又恢复了?
redis根目录下有了个dump.rdb文件(基于RDB持久化方式,即redis默认的方式,只要自己没手动改持久化方式,都是rdb方式,并会产生该文件)
conf配置文件里面可以看到 Redis默认配置文件中提供了三个条件:
分别表示900秒(15分钟)内有1个更改,300秒(5分钟)内有10个更改以及60秒内有10000个更改。
也就是说,例如删除redis中一个已存在的key: test,马上关闭并重启服务,打开的时候仍是读的之前的持久化文件,之前的持久化文件是包含这个test的,因为删除test之后还没有进行下一次持久化操作(要15分钟后才会进行持久化),如果删除这个key等待15分钟后重启redis,就不存在该key了.