exec_kill_signal
exec_kill_signal 指令允许在 NGINX RTMP module 中配置在终止流时发送给进程的信号。
NGINX RTMP module
语法exec_kill_signal signal;
默认值TERM
上下文
参数1
说明
exec_kill_signal 指令是 NGINX RTMP module 中的一个参数,用于指定在流被终止时应发送到外部进程的信号。该功能在直播场景中特别有用,例如在流生命周期事件发生时,转码或 streaming 等进程可能需要被优雅地或强制地停止。通过定义此指令,用户可以管理外部应用如何处理流的终止,从而改善资源管理和流控制。\n\n该指令接受单个参数,即信号名或数字(例如 TERM、KILL),用于决定关联进程的终止行为。该信号将发送到在 exec 指令中为流事件指定的进程——使开发者能够根据应用逻辑构建响应式的流媒体环境。\n\n不当使用此指令,例如未考虑发送强制终止信号(如 SIGKILL)带来的影响,可能导致数据丢失或应用不稳定;因此,务必理解基于此配置所发送信号的含义。
配置示例
application live {
live on;
exec_script /path/to/script.sh;
exec_kill_signal TERM;
}⚠
使用进程不处理的信号可能会导致其意外终止,从而引发潜在的数据丢失。
⚠
确保使用正确的信号字符串;拼写错误可能会导致该指令被忽略。
⚠
并非所有信号都适用于所有用例;请评估每个信号对外部进程的影响。