*Redis SCRIPT KILL 命令
终止当前正在执行的 Lua 脚本(如果脚本没有执行写操作)。
*语法
SCRIPT KILL
*返回值
| 条件 | 返回值 |
|---|---|
| 成功终止 | OK |
| 无脚本执行 | 错误 |
| 脚本已执行写操作 | 错误(无法终止,需 SHUTDOWN NOSAVE) |
*时间复杂度
O(1)
*
*示例
> SCRIPT KILL
OK
*常见错误
- 脚本已执行写操作:如果脚本已执行写操作,SCRIPT KILL 无法终止,只能执行 SHUTDOWN NOSAVE。
*最佳实践
- 终止失控脚本:脚本进入死循环或执行时间过长时,SCRIPT KILL 终止(仅限未执行写操作的脚本)。
*FAQ
Q: SCRIPT KILL 和 FUNCTION KILL 有什么区别? A: SCRIPT KILL 终止 EVAL/EVALSHA 脚本;FUNCTION KILL 终止 FCALL 函数。两者都只适用于未执行写操作的情况。