过去几天,我一直在对 2 个 DNS 服务器进行基准测试,遇到了以下问题
当我使用 dnsperf 时,1 个 DNS 服务器的每秒查询速度限制为 ~6500 qps,而另一个 DNS 服务器的每秒查询速度仅为 ~1500 qps
Statistics:
Queries sent: 77511
Queries completed: 77511 (100.00%)
Queries lost: 0 (0.00%)
Response codes: NOERROR 69982 (90.29%), NXDOMAIN 7529 (9.71%)
Average packet size: request 48, response 281
Run time (s): 11.473787
Queries per second: 6755.485351
Average Latency (s): 1.190392 (min 0.000293, max 1.753760)
Latency StdDev (s): 0.443875
Statistics:
Queries sent: 34372
Queries completed: 14676 (42.70%)
Queries lost: 19696 (57.30%)
Response codes: NOERROR 13246 (90.26%), NXDOMAIN 1430 (9.74%)
Average packet size: request 47, response 247
Run time (s): 10.132536
Queries per second: 1448.403440
Average Latency (s): 0.111563 (min 0.000680, max 1.615017)
Latency StdDev (s): 0.050619
两个 DNS 服务器都是相同的 centos 和 bind 版本,它们都有 16 个 vCPU 和 16 GB RAM,它们位于不同的数据中心,并且我为每个服务器都本地构建了 dnsperf(基准服务器)。
有没有办法增加这个 qps 限制或者有办法排除故障?
答案1
进一步研究该问题后,我发现该服务器的 QPS 限制是由我在 named.conf 文件中启用的日志记录量造成的。
我大致创建了几个通道来用于不同类型的查询日志记录。
在 named.conf 文件中注释掉这些内容并重新启动服务后,我运行了许多其他测试,现在我看到大约 6500 QP,与我的其他虚拟机一致