dns 服务架构优化 - 百万级并发不是梦 - bind+namedmanager+dnsmasq

bind:          DNS服务端。
namedmanager:  DNS web管理页面。
dnsmasq:       并发查询上游dns域名解析。



问题:
做为消息推送业务,单台业务机器域名解析并发达到上万次。业务机器集群庞大,高峰期dns解析并发数能够达到100w。形成dns服务端压力巨大,出现异常:高负载,解析超时,或者拒绝服务,没法解析域名。web


解决方案以下:缓存

1、上100w的并发查询致使dns拒绝服务:  
bind默认recursive clients值为1000,加大bind并发数能够解决高并发问题,解决拒绝服务问题。  

2、上游dns ip异常致使解析超时,致使业务异常:  
bind是单点查询上游dns的,就算你写了上10个上游dns ip都没用,上100w的并发查询,只要上游一个dns ip出现异常,就会致使一大批的业务异常。使用dnsmasq并发查询上游dns,解决单点上游DNS ip异常超时问题。  

3、dns域名解析并发数太大,致使dns服务端高负载、拒绝服务:  
业务机器使用dnsmasq作本地dns缓存,解决bind服务端压力问题。

这种架构对dns服务端有质变的优化效果。架构

相关文章
相关标签/搜索