news 2026/9/23 13:51:58

服务大面积超时!排查了3天,根因竟是一个“常见”的DNS配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
服务大面积超时!排查了3天,根因竟是一个“常见”的DNS配置

“服务怎么又超时了?用户全在投诉!”

某天上午,我们的核心数据推送服务(负责处理来自立达标讯的实时政策数据流)突然出现大面积请求超时,P99延迟从50ms飙升至5s以上,且持续了数小时没有恢复。

更诡异的是,服务器CPU、内存、磁盘IO全部正常。监控显示,只有部分请求超时,另一部分请求正常

排查过程:从“应用层”到“网络层”的逐步回退

第一阶段:怀疑应用层代码

  • 检查了应用日志,无异常。

  • 检查了数据库连接池,连接数正常。

  • 检查了缓存命中率,无变化。

第二阶段:怀疑网络问题

  • 检查了服务间网络延迟,RTT正常。

  • 排除了网络抖动。

第三阶段:定位到DNS

  • 在超时的请求中,我们发现所有超时请求都涉及对外部服务的调用

  • 进一步分析,发现这些调用在建立连接时耗时极长。

  • 最终定位到:DNS解析超时

根因深挖:一个被“忽视”的DNS配置

我们使用dignslookup测试了DNS解析,发现解析时间波动极大,有时正常(<10ms),有时超时(>5s)。

问题分析

  • 我们的服务运行在Kubernetes集群中,Pod的/etc/resolv.conf中配置了多个DNS服务器。

  • 默认情况下,DNS解析器会依次尝试每个DNS服务器,直到获得响应

  • 但我们的配置中,第一个DNS服务器(一个已下线的旧DNS)仍然存在。当它无法响应时,解析器会等待超时(默认5秒),然后才尝试下一个DNS服务器。

  • 这导致了部分请求因等待第一个DNS超时而延迟

修复方案移除无效的DNS服务器,并优化DNS解析配置

bash

# 查看当前DNS配置 cat /etc/resolv.conf # 修正后的配置(移除无效DNS,并设置合理的超时和重试次数) nameserver 10.96.0.10 nameserver 8.8.8.8 options timeout:2 attempts:2

效果:修复后,DNS解析时间稳定在10ms以内,服务超时问题消失。

教训与启示

这次事故让我们深刻认识到:

  1. DNS是“隐形的性能杀手”。DNS解析失败或超时,会导致所有依赖它的调用变慢。

  2. 理解resolv.conf的配置nameserver的顺序、timeoutattempts参数,都会影响DNS解析的性能。

  3. 监控DNS解析时间:建立对DNS解析时间的监控,是发现此类问题的关键。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/23 13:50:17

Pelican 草稿页面实战:用 Markdown 与 status 元数据掌控发布流程

【免费下载链接】pelican Static site generator that supports Markdown and reST syntax. Powered by Python. 项目地址&#xff1a; https://gitcode.com/gh_mirrors/pe/pelican 点击查看 免费下载 本篇技术指南以 Pelican 测试套件中的 draft_page_markdown.md 为切入点&a…

作者头像 李华
网站建设 2026/9/23 13:47:39

单片机毕设选题推荐:基于 STM32 或 51 单片机的舵机锁控智能水杯设计与开发 基于 STM32 或 51 单片机的多传感器饮水状态监测系统

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机&#xff0c;Java、小程序技术领域和毕业项目实战 ✌️…

作者头像 李华
网站建设 2026/9/23 13:47:36

大数据毕设选题推荐:基于SpringBoot的数据可视化电商经营统计分析平台 基于SpringBoot+Vue的电商订单数据可视化分析系统【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/9/23 13:41:25

FPGA开发实战:时钟复位与跨时钟域设计的核心方法论

简介&#xff1a;这是由一位拥有10年FPGA开发经验的工程师撰写的设计经验谈&#xff0c;适合刚接触硬件描述语言、希望建立规范设计思路的FPGA开发者&#xff0c;也适合有初步基础、想提升代码质量的进阶用户。文档以实际工程体会为主线&#xff0c;从“看代码、建模型”切入&a…

作者头像 李华