思途CMS

域名解析的TTL值设置多大合适?

陈小成 2014-03-23

域名解析的TTL值设置多大合适,这个问题是比较重要的,我们来看下图:

1.png

域名解析TTL值对网页打开速度的影响

绿色部分是解析花费的时间,蓝色是服务器影响的时间,从上图可以按到,案例中的站点,在ttl值设置为600秒时,出现的问题,是非常严重的!


TTL是域名解析的生命周期,对于用户来说,每一次访问网站A,不会每次都到DNSLA进行域名解析,而是只有第一次访问时才到DNSLA进行解析,然后解析的结果会缓存到当地的递归DNS服务器上,当使用该递归服务器的第二个访问网站A时,递归服务器会直接返回解析结果,而不会再向DNSLA请求解析,所以这个时候如果您在DNSLA修改了解析结果,那么第二个访问者收到的解析也是修改前的结果,因为那是递归服务器告诉它的。那么多久之后递归服务器才会更新这个解析结果呢?那就是TTL来决定的。

 

如此看来,那我把TTL设置为非常小,比如1秒,岂不是最好,这样我修改了解析那么对于用户来说立即就可以生效。答案是否定的,如果TTL设置为1秒,那么就意味着几乎每次用户的解析,递归服务器都需要向DNSLA进行解析请求,这样所耗费的时间就会增加很多,而且权威服务器的解析因为要判断用户的来源进行智能解析,比起来直接使用缓存回答耗费的时间会更长,而且失败率也会更高,因此这对用户的访问体验和解析稳定性都有损害。

 

所以TTL大了,修改解析后等待生效的时间就会越长,TTL小了,域名解析的稳定性和解析速度就会受到影响。

 

思途结合实际情况给出的建议如下:

如果不需要平凡更换服务器IP,那么TTL值尽量设置大些,比如24小时,或者一周,这样可以最大限度的缓存每个城市用户访问的DNS更新时间;

优点:即使你所用的DNS解析服务器出现临时性故障、访问拥堵或者被黑客攻击,因为在用户所在地的DNS在没有过TTL值时,就会直接从用户访问所在地的DNSLA服务器进行请求,换句话说,此时用户的访问不会经过被攻击的DNS服务器。

 

缺点:如果你需要更换服务器IP时,需要等对应的TTL值时间,你在全国的解析才会重新刷新生效,


相关阅读

028-61558715 在线咨询