美文网首页
服务499告警处理

服务499告警处理

作者: 戈羽殇雪 | 来源:发表于2020-05-22 11:17 被阅读0次

    内部的域名突发告警,产生的告警异常状态码为504,以及499,
    判断为域名后端的响应是有问题的,
    查询后端的业务日志后,发现连接数据库的日志,以及缓存的日志都有连接问题,
    但是让db同学查看数据库服务器,服务器都是正常的。
    然后看应用的连接方式,服务是通过域名的方式进行,db使用的域名类似
    db...com:3381

    服务现在连接数据库都是短连接,意思每次连接数据库都需要重新与数据库进行连接,
    我们在服务端通过ping 的方式,很正常,但是通过nc 的方式进行测试发现,会有hang住的现象

    nc -v -w 0.1  -z db.*.*.com 3381
    

    采用循环的方式多次进行测试,发现出现的几率较高,
    但将域名切换为ip之后,测试发现网络质量没有问题,没有出现hang住的现象
    判断为DNS问题

    因涉及的服务较为重要,先将服务后端的相关域名进行了绑定hosts 的处理

    后经过基础组件的同事查询:
    因当天db 当天将db 服务器的公网ip下线了,导致dns 的权威服务器受到了影响,直接影响到了服务请求db服务的解析

    我又了解了下dns 的工作,以及什么是权威服务器:


    image.png

    DNS的查询过程如下:

    1.一个用户在浏览器输入了:example.com,这时会产生一个 DNS 查询,从而进入到 DNS Resolver中;
    2.Resolver 会进入到 root server 根服务器进行查询;
    3.root server 返回了 TLD server 顶级域名服务器的地址,查询请求转向顶级域名服务,这里是 .com 服务器。
    4.递归解析器向 .com 服务器发送一个请求;
    5.TLD server 收到请求后会返回 example.com 权威服务器的地址;
    6.递归解析器又发了一个向权威服务器查询的请求,至此权威服务器查询自己的映射表拿到IP;
    7.返回查询到的IP给了 DNS Resolver;
    8.DNS Resolver返回IP给浏览器,浏览器将会用这个IP来建立tcp连接,发起http request请求;
    9.客户端通过这个IP地址,发起一个 HTTP 请求;
    10.服务器解析请求,并返回数据到浏览器。

    以下是dns 服务器的具体概念:

    DNS Resolver - 递归解析器,主要是接收客户端发出的域名解析请求,并发送 DNS query 查询请求。对于客户端来说它不需要任何操劳,等待 DNS Resolver 告诉自己域名转IP的结果就好。
    Root Server - 这是转换IP执行的第一步查询,根服务器并不会保存具体的域名IP映射信息。它就像一个索引服务器,会告诉你下一步该去那台 TLD Server 查询。
    TLD Server - 这是顶级域名服务器,是执行IP查询的第二步,这里会告诉 DNS Resolver 权威域名服务器的地址。
    Authoriative Server - 权威域名服务器就是包含了完整的机器名的域名,例如:www.example.com ,在这台机器上保存了这个具体域名对应的IP地址。

    相关文章

      网友评论

          本文标题:服务499告警处理

          本文链接:https://www.haomeiwen.com/subject/yswfahtx.html