linux的dns缓存,NSCD服务

转载 2014年07月19日 22:43:21

linux的dns缓存,NSCD服务
 
linux的dns缓存,NSCD服务
 
 这两天做压力测试的时候发现,用webbench压域名要比压ip地址慢好几倍,而且压域名的时候nginx并发量也很低.反复测试了好多遍,怀疑时间是花在dns解析上.在/etc/hosts中做手动解析:
1
echo "211.157.145.103 m.app518.com" >> /etc/hosts
  之后再压,速度果然正常了. 
  dns解析为什么会慢呢?linux的dns缓存有什么不同呢?上网查了一下发现linux本身是没有dns缓存的,想使用dns缓存的话需要自己安装一个服务程序NSCD(name service cache daemon). 
1
apt-get install nscd
  修改配置文件/etc/nscd.conf,开启dns缓存,修改这一行
1
enable-cache hosts yes
  这个服务除了dns缓存之外还可以缓存passwd,group,servers.这几个东西的缓存暂时用不到. 
  重启nscd服务
1
service nscd restart
  之后发现不需要做手动解析,访问速度回升到用ip地址一样了.
 
dns缓存在服务器上的作用
  在需要通过域名与外界进行数据交互的时候,dns缓存就派上用场了,它可以减少域名解析的时间,提高效率.例如以下情况:
  使用爬虫采集网络上的页面数据,
  使用auth2.0协议从其他平台(如微博或QQ)获取用户数据,
  使用第三方支付接口,
  使用短信通道下发短信等.
 
dns缓存到底能提升多少性能呢?
  首先要看网络和dns服务器的能力,dns解析越慢,dns缓存的优势就越大.比如我们在北京用的dns服务器202.106.0.20和google的dns服务器8.8.8.8速度会差不少.
  如果dns服务器比较稳定,那它对效率的影响就是一个常数.这个常数有多大呢?
  我简单试了一下.在局域网内进行压力测试,压一个nginx下的静态页面,使用202.106.0.20这个dns服务器,不用dns缓存.平均一分钟可以访问27万次.压一个简单的php页面,平均一分钟可以访问22万次.加上nscd服务后,静态页面平均一分钟可以访问120万次,要快4倍多.php页面平均一分钟可以访问50万次,快一倍多.
 
  如果是做搜索引擎或是一些代理服务类的项目,比如短信通道,数据推送服务,这个性能提升还是比较可观的.但在一般的项目中,一台服务器每分钟发22万次请求的情况是很少见的,所以这个性能提升也微呼其微.
  但在追求极限的道路上,每一小步都至关重要噢~

STL简介[这篇文章通俗易懂,特别适合没用过STL的初学者。]

STL 简介,标准模板库 作者:Scott Field    这篇文章是关于C++语言的一个新的扩展——标准模板库的(Standard Template Library),也叫STL。     当我第...
  • lwd2k
  • lwd2k
  • 2002-08-26 11:44:00
  • 713

Linux下开启缓存服务NSCD

NSCD(Name Service Cache Daemon)是服务缓存守护进程,它为NIS和LDAP等服务提供更快的验证。不管是什么系统,缓存是一项非常重要的技术[或机制],缓存的主旨就是提高客户端...
  • lufeisan
  • lufeisan
  • 2016-12-01 01:44:44
  • 3346

转载:inux的dns缓存,NSCD服务

转载来自:http://my.oschina.net/phptiger86/blog/138507#OSC_h3_1 这两天做压力测试的时候发现,用webbench压域名要比压ip地址慢好几倍,而且...
  • huguangshanse00
  • huguangshanse00
  • 2014-05-05 22:54:13
  • 1579

ubuntu 14.04 64 bit上开启nscd服务缓存加速及清除dns缓存

简介 linux本身是没有dns缓存的,想使用dns缓存的话需要自己安装一个服务程序NSCD(name service cache daemon).  Nscd会缓存libc接口(比如 getpwna...
  • tao_627
  • tao_627
  • 2015-08-22 18:04:08
  • 4507

nscd dns 缓存引起的修改hosts 不及时生效

本篇文章主要介绍nscd dns 缓存引起的修改hosts 不及时生效,文中有关nscd,dns,hosts,缓存的内容,下面开始文章正文。 在/etc/hosts文件中添加一个记录,发现ping ...
  • houzhizhen
  • houzhizhen
  • 2016-11-18 11:17:32
  • 649

NO.92 Linux nscd服务占内存巨大大无脑重启该服务解决

一台好好的32G suseLinux,没启动啥服务内存莫名不够用。 使用top命令发现剩余空间内存才1288m~   Mem:     32107M total,    30818M used,...
  • amosryan
  • amosryan
  • 2014-04-25 15:40:21
  • 2264

Linux中通过缓存DNS的解析来提高上网的响应速度!

这几天好不容易细心了一下,发现在用Firefox浏览网页的时候,一开始总会看到左下角有一行提示:     “正在解析主机 xxx ...”    看上去是等待DNS服务器对域名的解析,闲来无事,于是决...
  • xport
  • xport
  • 2007-02-16 17:35:00
  • 15791

安装nscd

yum安装:   yum install nscd 启动运行nscd:   systemctl enable nscd   systemctl start nscd...
  • yjh314
  • yjh314
  • 2017-11-08 15:21:12
  • 284

各种操作系统下清空、查看dns缓存的方法/命令

在微软windows下,你可以用命令 ipconfig /flushdns 来清空dns 缓存内容。你也可以用命令 ipconfig /displaydns 来查看dns 缓存内容。在Mac OSX中...
  • lanjunlee
  • lanjunlee
  • 2008-07-11 19:05:00
  • 10044

Linux DNS解析与NSCD缓存

搭建好DNS服务器后,配置nscd,用strace命令做了如下测试: 1、在/etc/resolv.conf文件中指定好DNS服务器 NDS可以正常解析: strace ping aaa.shan...
  • heshan307
  • heshan307
  • 2016-09-05 23:09:02
  • 193
收藏助手
不良信息举报
您举报文章:linux的dns缓存,NSCD服务
举报原因:
原因补充:

(最多只允许输入30个字)