如何在PHP / Memcache应用程序上实现DNScaching

在一个非常高负载的Ubuntu / PHP Web服务器中,我发现PHP行:

$ memcache->连接( “int-aws_ec2.memcached.myapp.net”,11211);

有时需要〜5秒。

使用ip地址replaceurl会将服务器负载从~20减less到0

我的问题是 – 哪些是影响DNScaching的设置? 它在服务器级还是memcache库? 我怎样才能改变它?

附加信息:Ubuntu 10.04 lucid PHP:5.3.2-1ubuntu4.10 Apache / 2.2.14(Ubuntu)Amazon EC2

Celada的评论更多信息:

memcache服务器的DNS处理由scalr(我用来pipe理云资源的平台)完成。 他们有一个位于实例和他们自己的DNS服务器上的客户端。

/etc/nsswitch.conf – hosts:files dns /etc/resolv.conf:nameserver 172.16.0.23 domain ec2.internal search ec2.internal

该域不在hosts.conf要检查如果我运行nscd我用/etc/init.d/nscd停止,并收到“没有这样的文件”,所以我想我不运行nscd。

谢谢 !

我结束了在APC(PHPcaching)内存中的IP地址的双缓冲。 这解决了所有的DNS时间问题。