今天又和Redis超时杠上了

💡 原文中文,约3500字,阅读约需9分钟。
📝

内容提要

本文分享了作者在排查redis超时问题中的经验,通过联系云服务商、抓包分析等步骤,最终发现问题出在CPU使用率达到瓶颈,导致协程调度延迟,进而引起超时。作者总结了性能问题分析的过程,强调了对第三方说法的判断力和抓包分析的重要性。最终,通过提升CPU配置,成功解决了超时问题。

🎯

关键要点

  • 作者分享了排查redis超时问题的经验。

  • 超时现象发生在业务高峰期,CPU使用率达到90%。

  • 联系云服务商排查问题,确认与上次超时原因不同。

  • 抓包分析发现tcpdump在高峰期可能出现漏包。

  • 调整抓包参数后,成功捕获数据包,分析超时情况。

  • 客户端在读取包时可能因协程切换导致超时。

  • 云服务商认为磁盘吞吐量达到上限影响网络传输,但作者对此表示怀疑。

  • 通过监控协程调度延迟,发现延迟高达100ms,与超时吻合。

  • 最终确认超时原因是CPU使用率达到瓶颈。

  • 在业务低峰期提升CPU配置,成功解决超时问题。

  • 总结抓包分析的重要性和对第三方说法的判断力。

➡️

继续阅读