springboot连接redis,隔几分钟就断开,连接失败,等个几秒钟在连接就又可以了
问题描述:springboot连接redis,隔几分钟就断开,连接失败,等个几秒钟在连接就又可以了
第一个警告:The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
第二个警告:overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to/etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
第三个警告:you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix thisissue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain thesetting after a reboot. Redis must be restarted after THP is disabled.
第一个和第二个警告,修改linux服务器上配置文件,/etc/sysctl.conf
新增两个属性,下图

保存,退出,执行sysctl -p 生效配置
第三个警告处理:将echo never > /sys/kernel/mm/transparent_hugepage/enabled
添加到/etc/rc.local中

然后执行source /etc/rc.local生效配置
报错4,MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report errors during writes if RDB snapshotting fails (stop-writes-on-bgsave-error option). Please check the Redis logs for details about the RDB error.
编辑redis.conf文件,把里面stop-writes-on-bgsave-error = no
此时改完服务器上的报错,在测试redis连接,如果还是隔几分钟就断开,就开始找代码的原因:
原配置文件

现在配置文件:

原先是自动装载配置文件,RedisTemplate自动集成RedisConnectionFactory属性,RedisConnectionFactory会自动读取配置yml文件的内容,所以思路是自定义对象RedisConnectionFactory新增一些属性
然后用手动生成的RedisConnectionFactory对象生成RedisTemplate即可
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)