GaussDB(DWS)gds导数失败问题分析整理

举报
上官寒雨 发表于 2024/02/15 16:05:53 2024/02/15
【摘要】 【问题描述】Gds导出数据过程中报错 xxx connect failed【业务背景调研】现场300节点,4个主DN/节点:3节点服务端+3节点备gds服务端,对外提供虚拟ip两两互为主备,每节点1个gds进程,目前此套gds服务端业务偶现周六凌晨3点出现报错需要客户手动重试后规避【问题分析】1、查看gds进程网络建联情况:gds已接受12万个连接,还有9776个连接排队等待gds接收,达到...

【问题描述】

Gds导出数据过程中报错 xxx connect failed


【业务背景调研】现场300节点,4个主DN/节点:3节点服务端+3节点备gds服务端,对外提供虚拟ip两两互为主备,每节点1gds进程,目前此套gds服务端业务偶现周六凌晨3点出现报错需要客户手动重试后规避

【问题分析】

1、查看gds进程网络建联情况:gds已接受12万个连接,还有9776个连接排队等待gds接收,达到gds处理上限,处理不过来的连接并导致accept队列满,最后导致DN端超时报connect timeout


2、使用top查看gds主线程在并发导数过程中会出现CPU占用高的情况


3、查看对应时间主线程堆栈均在epool_wait


4、查看gds启动监听端口数启动时候listen上限指定10000


5、进一步观察gds进程堆栈调用epoll_wait是将timeout给成0反复调起epoll占用cpu


6、使用perf分析gds行为发现主要瓶颈在主线程建联, 反复调用epoll_wait系统函数


【规避措施】

根据现场业务特征通过降低并发gds导出业务进行规避,观察一周后问题未复现。

参考:

netstat-网络性能分析常用命令

Linux中的使用 ss 命令检查套接字/网络连接

perf 常见使用方法

手把手教你系统级性能分析工具perf的介绍与使用(超详细)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。