公司需要用redis作数据缓存,我们就在内网做了一个测试。测试的过程为,开启redis服务器,然后开启一个写入数据的程序,不停地往redis内存中写入数据,奇怪的是,在测试的过程中,redis服务器经常停止运行(即崩溃)。
检查了自己的程序,没有抛出什么异常,再上网找了一些资料,按照他们提出的方案,问题依旧得不到解决,甚至后来通过配置参数,查看DEBUG日志,也没能看到任何异常。
请问各位朋友有知道这是因为什么吗?求解惑。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
Redis的代码还是比较优秀的,通常很少异常崩溃,这种情况我先建议排查一下是不是没有设置maxmemory,导致机器内存写满,然后redis进程被OOM killer杀掉。然后还有就是建议使用稳定版的redis,最好能贴下redis崩溃时的log。
如果你是在Windows系统下操作,Windows版Redis不是官方推出的,不被Redis官方支持,是第三方修改的,好像是微软修改的。Redis单进程的结构在严重依赖多线程的Windows上性能可想而知,另外Redis的aeEvent在Linux上使用epoll实现。