云计算之路-阿里云上:服务器CPU 100%问题是memcached连接数限制引起的
非常抱歉,昨天的服务器CPU 100%问题是达到 memcached 的连接数限制引起的,不是阿里云服务器的问题。
之前我们用的是阿里云“云数据库 memcached 版”,上个周末我们换成了自己搭建——基于阿里云“内存网络增强型”服务器用 docker 跑 memcached 。
docker run -d --net=host --restart unless-stopped memcached -m 15360
但我们在部署 memcached 时没有设置 conn-limit 参数(默认值是 1024) 。
由于周一周二两天服务器没出现问题,而且周二的访问量超过了上周的最高,我们误以为这次 memcached 的部署调整没问题。而没问题的背后是因为周一周二的web服务器数量比昨天少,刚好没达到 memcached 的连接数限制。
昨天(周三)我们收到 1 台服务器的 CPU 报警后,多加了 1 台服务器,刚好让 memcached 的连接数达到了临界值,在下午并发连接数上去后,很容易触发 memcached 的连接限制,web 服务器因无法使用缓存而让 CPU 不堪重负。在这样的情况下,减服务器反而是有利的,而我们慌乱之下依照 CPU 负载高就加服务器的错误直觉操作则是雪上加霜。。。
当今天上午再次有服务器出现 CPU 100% 问题时,我们才想到 memcached 的连接数限制
STAT max_connections 1024 STAT curr_connections 960
赶紧将 max_connections 由默认的 1024 修改为 2048
docker run -d --net=host --restart unless-stopped memcached -m 15360 -c 2048 && docker stop 51bd3b240ede
之后 CPU 100% 的问题就解决了
STAT max_connections 2048 STAT curr_connections 1232
非常抱歉,由于我们在处理故障时不够冷静、考虑不周,给您带来了麻烦,请您谅解。
我们会吸取教训,提高我们在处理故障时的判断与定位能力。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· autohue.js:让你的图片和背景融为一体,绝了!
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
2017-03-15 云计算之路-阿里云上:负载均衡的小感冒,我们早就感觉到
2013-03-15 云计算之路-迁入阿里云后:问题的根源——买到她的“人”,却买不到她的“心”
2010-03-15 上周热点回顾(3.8-3.14)