使用queryperf对DNS服务器作压力测试

一、querperf简介

   当我们把DNS服务器配置好后,我们肯定会想测试一下DNS服务器的性能如何,上线后如果请求数够多服务器还能否响应?于是,我们可以使用软件模拟环境,对DNS服务器作评估性的测试。在bind中,有一款自带的压力测试软件,queryperf。使用这款软件可以对DNS服务器作请求测试,并且使用方法简单,我们可以使用queryperf测试多次,取一个平均值,这样就算结果不准确,也不会和实际情况相差太大。


二、queryperf安装


1、queryperf是bind自带的测试软件,我们直接上网下载bind源码包,解压后就能找到安装包。

2、解压后,到目录 contrib,bind自带的第三方软件全在这里面,我们要用到的queryperf也在里面。

3、进入queryperf目录,开始编译安装

    ./configure

    make

4、通过上面的编译后,展开queryperf目录,在该目录下已经生成了一个queryperf的可执行文件。这个文件就是我们要用到的程序,此程序为绿色软件,直接在目录里执行就好了


三、使用queryperf测试DNS服务器

   

DNS服务器工作正常,接下来可以使用queryperf作压力测试了。


1、queryperf使用格式:queryperf [-d datafile] [-s server_addr] [-p port]

-d: 后面接上一个文件,文件的内容是DNS请求,一行一条请求,为了测试,我们在里面写上几万条。

-s: DNS服务器地址

-p: DNS服务器端口


2、使用vim命令先创建一个请求文件:vim querytest.txt

   这几条记录还远远不够,我们使用shell脚本循环填加一些。3十万条了,开始测试吧。


3、性能测试。

   执行命令:queryperf -d querytest.txt -s 192.168.0.6

   此时使用top命令可以看到CPU和内存的使用率。


结果如下:

wKiom1TcW0CTA2bOAAMW7JS9n9A412.jpg


测试过程完成,可以多测试几次取平均值。


四、性能测试总结

1、在作服务器的性能测试时,最好不要在服务器平台自身使用测试软件测试,最好换另外一台机器,这样CPU处理的结果会更准确。

2、测试时先预估平台会遇到的最大请求数,用这个请求数作测试,量力而为,因为如果服务器遇到大流量的DDOS,单一机器性能再好,也扛不住,会出现RTT超时报错。

3、使用queryperf作性能测试时,最好测试多次,取平均值。

4、可以修改配置文件的部分参数测试,如,开启递归,开启查询日志等功能作测试。


原文:http://wubinary.blog.51cto.com/8570032/1379595


你可能感兴趣的:(DNS压力测试)