linux 上可以用 nscd 做 DNS 缓存,想验证一下效果,就写了个简单的脚本
import socket
i = 0;
while i < 1000:
i+=1;
ip = socket.gethostbyname("taobao.com")
然后通过 time python dns.py 来执行
[root@host ~]# time python dns.py
real 0m2.350s
user 0m0.045s
sys 0m0.058s
[root@host ~]# service nscd start
Starting nscd: [ OK ]
[root@host ~]# time python dns.py
real 0m2.453s
user 0m0.040s
sys 0m0.057s
nscd 的配置如下
[root@host ~]# cat /etc/nscd.conf
#logfile /var/log/nscd.log
threads 6
max-threads 128
server-user nscd
debug-level 5
paranoia no
enable-cache passwd no
enable-cache group no
enable-cache hosts yes
positive-time-to-live hosts 5
negative-time-to-live hosts 20
suggested-size hosts 211
check-files hosts yes
persistent hosts yes
shared hosts no
max-db-size hosts 33554432
对比下来,好像没有起到什么效果
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.