number321 发表于 2015-01-23 17:04

bind-dlz的最高性能是多少,是不是dlz本身会成为瓶颈?

我测试用bind-dlz+mysql搭建了DNS服务。现在用dnstop查看,和在mysql中用\s查看,能分别看到DNS请求数是500-600左右,mysql的QPS是2500左右。

这个时候查询相当慢,用dig查询一条记录,都要卡半秒到1秒左右才返回结果,Query time: 861 msec差不多是这样。

我看了mysql的各项性能指标,以及在mysql中使用SQL语句作查询,都很快。
系统操作也非常快,用iostat看了,磁盘读写也很小。
Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
xvda            1.46         4.05      32.66    1066980    8599432
xvdb            0.22         0.01      13.96       3882    3674680


所以我现在怀疑其他方面都正常,就是DLZ本身的性能不行,到500QPS之后就开始卡了。
但DLZ跟默认的Bind又有区别,不知道有哪些方法调优,不知道有没有人用过DLZ,DLZ本身有没有什么调优的方法呢?

number321 发表于 2015-01-25 11:15

大概知道原因了,好像是因为我用了阿里云,云盾或者其他什么原因导致的。
本身用127.0.0.1或者阿里云的内网IP查询相当快,负载高的时候也就十几ms。
用公网IP就会卡,即使本机连接自己也是。
周一联系阿里云找下具体原因。

number321 发表于 2015-02-02 09:25

最后确认不是阿里云的原因,是dlz本身单线程的性能问题,改用dlz多线程后有很大改善。

cryboy2001 发表于 2015-02-09 08:53

现在的应用单线程,并发量大都会有问题。
这个情况查看cpu情况,应该可以查看出来的吧?

jiangxu67 发表于 2015-09-21 10:34

请问楼主,你确定开启了多线程?因为看很多人说不能开启多线程会出现问题,dlz官网在mysql驱动说明里面也加了建议不启用多线程,请问你那边开启多线程跑的怎么样,后期出现过什么问题么,因为我在考虑把业务往上面切,先谢过

number321 发表于 2015-09-25 15:08

本帖最后由 number321 于 2015-09-25 15:12 编辑

你看的是不是这个网站
http://bind-dlz.sourceforge.net/
这个网站上的文档应该是比较老的了,上面的bind-dlz是不支持多线程的,只能单线程运行,瓶颈很明显。
用queryperf做压力测试,再在bind服务端用dnstop查看请求数,能发现数据只能到五六百,此时查询经常就不生效了。而且此时watch -n 1 netstat -lnp查看接收缓存队列Recv-Q值非常高,说明已经处理不过来了。

现在的bind-dlz已经支持多线程了,具体的文档直接去www.isc.org官网应该能查到。
如果用bind-dlz多线程,用同样的方法测试,dnstop能看到请求数在两三千,并且此时查询都是能正常响应的,Recv-Q值也接近0,说明在有两三千并发请求的时候还能正常工作。

oceanb0y 发表于 2015-09-28 09:01

望不吝赐教多线程怎么弄,谢谢!

shang2010 发表于 2015-09-28 13:04

官方有相关的部署文档howto指导么??

最慢的虫子 发表于 2015-10-03 14:29

真的不错的,来支持了呢

最慢的虫子 发表于 2015-10-03 14:30

真的不错的,来支持了呢
页: [1] 2
查看完整版本: bind-dlz的最高性能是多少,是不是dlz本身会成为瓶颈?