dns查找的理想超时时间

dns查找的理想超时时间,dns,Dns,在我的rails应用程序中,我使用ruby库resolv进行nslookup。如果像dgdfgdfgg.com这样的网站被输入,它的对话时间太长,无法解析。在某些情况下,例如20秒(主要针对不存在的站点),因为这会导致应用程序速度减慢。 所以我想为dns查找引入一个超时时间。 dns查找的理想超时时间是什么,以便实际站点的解析不会失败。大约10秒就可以了吗?您可以在用户中运行一些测试,找出影响响应性/性能的正确数字 您还可以根据网络流量动态调整超时 例如,对于每一次成功的解析,您都可以节省解析所

在我的rails应用程序中,我使用ruby库
resolv
进行nslookup。如果像
dgdfgdfgg.com
这样的网站被输入,它的对话时间太长,无法解析。在某些情况下,例如20秒(主要针对不存在的站点),因为这会导致应用程序速度减慢。 所以我想为dns查找引入一个超时时间。
dns查找的理想超时时间是什么,以便实际站点的解析不会失败。大约10秒就可以了吗?

您可以在用户中运行一些测试,找出影响响应性/性能的正确数字

您还可以根据网络流量动态调整超时


例如,对于每一次成功的
解析
,您都可以节省解析所需的时间。每小时(例如)您可以计算一个平均值,并将其值的两倍设置为超时(请记住,“平均值”粗略地说就是“中间值”)。这样,如果您的延迟在某一点上很高,它会自动调整自己以增加超时时间。

没有IETF强制值,尽管的§6.1.3.3建议的值不小于5秒


Perl的
Net::DNS
和命令行
dig
实用程序在重试之间默认为5秒。某些版本的Microsoft resolver默认设置为3秒。

是的,我可以做到。但为了快速解决问题。是否存在最合理的超时时间?这个答案是错误的建议,它会导致重试过于激进。这在统计上也是不可靠的。而且你也意识到,在我们都公布答案的4年后。正确的。花了你很长时间,朋友:)。