• 【故障公告】数据库服务器今年第七次 CPU 100% 故障(12月8日又出现)


    自11月9日第六次数据库服务器 CPU 100% 故障之后,今天下午又出现数据库服务器 CPU 100% 故障,是今年的第七次。

    今天的故障发生于 16:01~16:07 期间,发现故障后我们立即重启阿里云RDS实例,重启后恢复正常。

    正准备发布这篇故障公告时,数据库服务器又出现 CPU 100%,我们立即改用主备切换,切换后恢复正常。

    这次故障给大家带来了麻烦,请大家谅解。

    我们使用的阿里云 RDS 实例规格是「SQL Server 2016 标准版-高可用系列-16核32G」,这个 CPU 100% 问题很奇怪,可能是因为参数嗅探问题造成 SQL Server 缓存了性能极差的执行计划,我们会对照上次故障期间性能最差的 SQL 进一步排查。

    更新:

    • 在主备切换时,以为第一次切换没成功,切换了2次,所以切换后用的还是原来的 SQL Server 实例,即使这样也恢复了正常。
    • 本想看一下故障期间性能差的 SQL,但阿里云 RDS 控制台似乎出了问题,“性能优化”中数据不能正常显示

    12月8日更新:

    今天中午 12:56~12:59 又出现 CPU 100%,发现后进行主备切换,13:04~13:07 期间又出现 CPU 100%,重启实例后恢复。

    13:23~13:27 期间又出现 CPU 100%,有进行主备切换

    13:27 之后 CPU 100% 问题还在继续,主备切换与重启实例不能解决,直到 14:24。

    14:24 CPU 下降之前采取的最后一个措施:没有主备切换与重启实例,修改了分页获取首页博文的存储过程——不执行查询直接 return。

    这个存储过程没有使用 OFFSET...FETCH 分页写法,依然使用的是 WITH...AS

    15:01~15:04 期间又出现 CPU 100%,这次定位到是分页获取网站分类博文的存储过程(使用了 OFFSET...FETCH 分页写法)引起的,直接 return 后恢复正常。

  • 相关阅读:
    C#的基于.net framework的Dll模块编程(二) - 编程手把手系列文章
    重复delete 对象指针后的 异常调用栈怪异 解析
    Liunx-01Liunx初相识
    clock_property 时钟的常用属性
    C++异步变化:libunifex实现!
    ctf bugku
    SpringMVC--从理解SpringMVC执行流程到SSM框架整合
    leetcode-142:环形链表 II
    不同规模时的开发模式
    力扣-路径总和问题
  • 原文地址:https://www.cnblogs.com/cmt/p/17882309.html