You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

多线程C应用连接Memcached时出现TIMEOUT及No active_fd错误排查求助

多线程C应用连接Memcached时出现TIMEOUT及No active_fd错误排查求助

各位大佬好,我最近踩了个棘手的坑,实在摸不着头脑,想请大家帮忙分析下:

我有一个跑在多台服务器上的多线程C语言应用,需要和多个Memcached节点交互做get/set操作,但最近频繁从Memcache客户端收到TIMEOUT OCCURRED错误。进一步调试客户端日志后,还看到两个关键错误提示:

"No active_fd were found"
"(number_of == 0)"

我特意检查过Memcached的配置,已经把单节点的最大连接数设到350,000了,而且实时查看服务器的文件描述符使用量,一直在180,000-240,000之间,远低于上限。但奇怪的是,这个问题不是单个节点的问题,所有Memcache节点都出现了同样的状况。

下面是其中一个受影响节点的stats命令输出(后续内容被截断):

STAT pid 4071861
STAT uptime 4844901
STAT time 1726827002
STAT version 1.6.14
STAT libevent 2.1.12-stable
STAT pointer_size 64
STAT rusage_user 725810.175438
STAT rusage_system 930280.690591
STAT max_conn...

有没有大佬能帮我捋捋可能的原因?或者给一些下一步的排查方向?真的感激不尽!

备注:内容来源于stack exchange,提问作者AjayNavgire

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 15:14:31