*Redis SCRIPT KILL 命令

终止当前正在执行的 Lua 脚本(如果脚本没有执行写操作)。


*语法

SCRIPT KILL

*返回值

条件 返回值
成功终止 OK
无脚本执行 错误
脚本已执行写操作 错误(无法终止,需 SHUTDOWN NOSAVE)

*时间复杂度

O(1)

*

*示例

> SCRIPT KILL
OK

*常见错误

  1. 脚本已执行写操作:如果脚本已执行写操作,SCRIPT KILL 无法终止,只能执行 SHUTDOWN NOSAVE。

*最佳实践

  1. 终止失控脚本:脚本进入死循环或执行时间过长时,SCRIPT KILL 终止(仅限未执行写操作的脚本)。

*FAQ

Q: SCRIPT KILL 和 FUNCTION KILL 有什么区别? A: SCRIPT KILL 终止 EVAL/EVALSHA 脚本;FUNCTION KILL 终止 FCALL 函数。两者都只适用于未执行写操作的情况。