• dns 服务架构优化


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



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


    解决方案如下:

    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服务端有质变的优化效果。

  • 相关阅读:
    strip()、rstrip()和lstrip()
    Vim 中快速移动系列(1)
    Python中的read(), readline(), readlines()
    Python 列表解析(列表生成式)
    Python lambda 表达式介绍
    Python中sort()和sorted()的区别
    js 高级
    maven学习笔记
    Maven之settings.xml详解
    Eclipse 学习笔记
  • 原文地址:https://www.cnblogs.com/huangjc/p/10372866.html
Copyright © 2020-2023  润新知