我有一台带有maxmemory 512MB
和maxmemory-policy allkeys-lru
的Redis服务器,但是一旦服务器在使用一天后填满,我就无法再添加任何项目了:
redis 127.0.0.1:6379[3]> set foooo 123
(error) OOM command not allowed when used memory > 'maxmemory'.
恕我直言,LRU政策永远不会发生。
我将一些服务器信息复制到此Pasebin:http://pastebin.com/qkax4C7A
我该如何解决这个问题?
注意:我尝试使用maxmemory
因为我的Redis服务器不断占用内存,即使几乎所有密钥都有过期设置并且因为FLUSHDB
没有释放系统内存 - 也许这是相关的..
最后,我尝试将Redis用作缓存。
答案 0 :(得分:4)
您的info
输出表明Lua脚本占用了很多服务器的内存:
used_memory_lua:625938432
请注意,在重新启动服务器或调用SCRIPT FLUSH
之前,Lua脚本将保留在内存中。看起来好像你正在动态生成Lua脚本......