在 Redis 中,SIGTERM 信号表示“请求进程停止”。当 Redis 收到 SIGTERM 信号时,会执行以下操作:
- 停止所有正在执行的命令。
- 将数据持久化到磁盘。
- 关闭所有连接。
- 退出进程。
SIGTERM 信号是一种安全的信号,它允许进程有机会保存数据并关闭连接。
在 Redis 中,SIGTERM 信号可以通过以下方式发送:
- 使用 kill 命令:
kill -TERM <pid>
- 使用 Redis 的 shutdown 命令:
redis-cli shutdown
以下是 Redis 中 SIGTERM 信号的示例:
# 使用 kill 命令发送 SIGTERM 信号
kill -TERM 12345
# 使用 Redis 的 shutdown 命令发送 SIGTERM 信号
redis-cli shutdown
在 Redis 中,SIGTERM 信号与 SIGKILL 信号的区别在于:
- SIGTERM 信号允许进程有机会保存数据并关闭连接。
- SIGKILL 信号强制进程立即退出。
因此,在大多数情况下,使用 SIGTERM 信号来停止 Redis 服务器是更好的选择。