notify_no_resolve

`notify_no_resolve` 指令禁用服务器名称的 DNS 解析,允许在 RTMP 流通知期间使用原始 IP 地址。

语法notify_no_resolve;
默认值off
上下文
参数1

说明

notify_no_resolve 指令用于 NGINX 的 RTMP 模块上下文中,特别是在流媒体应用的配置中。该指令允许服务器在处理 'notify' 请求时阻止 DNS 解析,这意味着如果客户端向服务器通知某些事件(例如流发布),服务器将不会尝试解析这些通知中提供的任何域名。相反,它可以直接使用原始 IP 地址,这可以提升性能并降低对 DNS 的依赖,尤其是在 DNS 解析可能引入延迟或失败的环境中。

启用该指令时,必须确保客户端使用 IP 地址或可解析的主机名正确指定服务器。因此,尽管在某些场景下此做法可带来更好的性能,但它也需要仔细管理客户端配置以避免潜在的连接问题。该指令在客户端频繁连接和断开连接的媒体流设置中非常有用,因为它减少了 DNS 查找的需求,而 DNS 查找在高负载下可能成为瓶颈。

此外,由于 notify_no_resolve 涉及流通知,它主要影响服务器如何处理通知,而不是实际的流媒体数据传输或客户端与服务器之间的连接方式。

配置示例

rtmp {
    server {
        application live {
            notify_no_resolve;
        }
    }
}

当 DNS 解析被禁用时,确保客户端提供有效的 IP address;否则可能会遇到连接问题。

此指令仅适用于通知;不会影响主要的流式数据路径。

流通知中提供的域名不会被解析,如果配置错误可能会导致混淆。

← 返回所有指令