当前位置: 代码迷 >> CGI >> fastcgi形式会缓存DNS
  详细解决方案

fastcgi形式会缓存DNS

热度:439   发布时间:2012-09-03 09:48:39.0
fastcgi模式会缓存DNS

这个是昨天在查找一个PHP调用远程HTTP接口耗时较长问题时发现的。

背景介绍:

调用服务器(下面简称C)和远程接口服务器(S)在同一机房,通过域名访问

C绑hosts,设置S的内网IP,耗时几十ms

C绑hosts,设置S的公网IP,耗时几十ms

C不绑hosts,直接走DNS,耗时几百ms

问题好像很明显了,应该是DNS问题。

好的,那么看一下C上设置的哪个DNS。

cat /etc/resolv.conf 一查,发现是8.8.8.8…………厄,慢是有道理的~

好,换成自己的DNS服务器地址再测。

擦,为毛还是几百ms???

直接用CLI运行PHP代码……几十ms,没问题

果真哪里缓存了DNS信息?验证下:

直接删掉DNS信息再测

CLI运行……直接不通,OK

WEB运行……果然还是通的!

so,修改DNS后,还需手动重启fastcgi。

  相关解决方案