我在Ubuntu 16.04上运行redis-server。在最近升级到redis 3.2.7之后,我现在看到这样的代码行
在redis日志中每隔一两分钟执行一次signal-handler (1486427812) Received SIGTERM scheduling shutdown...
,然后重新启动redis。
日志中唯一另一个可疑的行是:
# WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
任何关于如何诊断为什么会发生这种情况的建议都将不胜感激。谢谢!
发布于 2020-10-13 02:56:19
仅供记录:在J G Miller的评论中,您必须注意"Type=simple“和"daemonize yes”设置是不兼容的。我挣扎了几天才找到这条评论。我的redis只是简单地给出了start-limit-hit错误,因为当服务启动时,它会立即得到SIGTERM信号并停止。
因此,根据您的需要,可以更改服务文件中的"Type=forking“或"daemonize no”行来解决此问题。
发布于 2017-02-07 11:42:13
这是通过apt-get清除和重新安装解决的。旧的初始化文件不能很好地处理redis.conf文件。
发布于 2021-05-10 23:45:47
对于任何其他仍在寻找解决方案的人来说,Type=forking
(随apt
安装的redis的默认设置)与redis.conf
中的supervised=systemd
不兼容。
它必须在/etc/systemd/system/redis.service
中更新为Type=simple
。
派生只在守护模式下是必需的,但是systemd管理的redis优先于守护设置。
从Restart=always
更改为Restart=on-failure
供参考- redis.conf、https://www.freedesktop.org/software/systemd/man/systemd.service.html
https://stackoverflow.com/questions/42079847
复制相似问题