nginx 中的解析器有效时间和 resolver_timeout 有什么区别
what is the difference in resolver valid time and resolver_timeout in nginx
我有这个nginx配置入口。
http {
resolver 172.17.42.1 valid=600s;
resolver_timeout 60s;
在此配置中,有 2 个不同的超时。
nginx documentation 没有让我清楚 valid 和 resolver_timeout.[=13 之间有什么区别=]
谁能详细解释一下?
resolve_timeout
设置 NGINX 等待解析器 (DNS) 答复的时间。
valid
标志表示 NGINX 将多长时间将解析器的答案视为有效并且不会在该期间询问解析器。
在您的示例中,假设 NGINX 想要解析 example.com
。它会询问解析器 (172.17.42.1),如果解析器在 60 秒内没有回答,NGINX 将失败此请求(并可能向您显示 500 错误)。假设解析器成功回答,那么 NGINX 会记住该回答 10 分钟。如果 NGINX 需要在该时间内解析 example.com
,那么它将使用以前的答案而不是再次询问解析器。
我有这个nginx配置入口。
http {
resolver 172.17.42.1 valid=600s;
resolver_timeout 60s;
在此配置中,有 2 个不同的超时。 nginx documentation 没有让我清楚 valid 和 resolver_timeout.[=13 之间有什么区别=]
谁能详细解释一下?
resolve_timeout
设置 NGINX 等待解析器 (DNS) 答复的时间。
valid
标志表示 NGINX 将多长时间将解析器的答案视为有效并且不会在该期间询问解析器。
在您的示例中,假设 NGINX 想要解析 example.com
。它会询问解析器 (172.17.42.1),如果解析器在 60 秒内没有回答,NGINX 将失败此请求(并可能向您显示 500 错误)。假设解析器成功回答,那么 NGINX 会记住该回答 10 分钟。如果 NGINX 需要在该时间内解析 example.com
,那么它将使用以前的答案而不是再次询问解析器。