首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >确定Redis每一两分钟收到一次SIGTERM的原因

确定Redis每一两分钟收到一次SIGTERM的原因
EN

Stack Overflow用户
提问于 2017-02-07 08:44:43
回答 3查看 7.9K关注 0票数 11

我在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.

任何关于如何诊断为什么会发生这种情况的建议都将不胜感激。谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-10-13 02:56:19

仅供记录:在J G Miller的评论中,您必须注意"Type=simple“和"daemonize yes”设置是不兼容的。我挣扎了几天才找到这条评论。我的redis只是简单地给出了start-limit-hit错误,因为当服务启动时,它会立即得到SIGTERM信号并停止。

因此,根据您的需要,可以更改服务文件中的"Type=forking“或"daemonize no”行来解决此问题。

票数 6
EN

Stack Overflow用户

发布于 2017-02-07 11:42:13

这是通过apt-get清除和重新安装解决的。旧的初始化文件不能很好地处理redis.conf文件。

票数 4
EN

Stack Overflow用户

发布于 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

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42079847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档