我有这个nginx配置条目.
http {
  resolver 172.17.42.1 valid=600s;
  resolver_timeout 60s;
Run Code Online (Sandbox Code Playgroud)
在此配置中有两个不同的超时.nginx 文档没有告诉我有效和resolver_timeout之间的区别是什么.
有人可以详细解释一下吗?
resolve_timeout 设置nginx等待来自解析器(DNS)的anwser的时间.
valid flag表示nginx将resolver的回答视为有效的时间长度,并且不会在该时间段内请求解析器.
在你的例子中,让我们说nginx想要解决example.com.它将询问解析器(172.17.42.1),如果解析器在5秒内没有回答,nginx将使该请求失败(并且可能显示500错误).让我们说解析器成功回答,然后nginx会记住这个答案10分钟.如果nginx需要example.com在该时间内解决,那么它将使用先前的答案而不是再次询问解析器.
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           3822 次  |  
        
|   最近记录:  |