五月十四日时出现的短暂故障

大家好,昨天我们的大部分服务在 14:53 时出现了无法访问的故障。我们在第一时间收到了监控系统的报警,工程师们迅速定位故障并确定了恢复方案,在 15:15 时恢复了所有服务。故障持续了约 22 分钟。

Car Crash

MongoDB 存在一个 已知的 bugSERVER_9059,简单地说就是当表里有 unique 索引时,在对一批操作进行主从复制的时候如果复制失败会导致重试,这时有可能导致 slave 节点操作失败而停止复制。而当在一个已经有重复数据的表中创建 unique 索引并复制到 slave 的时候,这个 bug 也会被触发。后者就是导致今天事故的直接原因,有用户在已经有重复数据的表里创建了 unique 索引,从而导致 MongoDB 的 slave 出错。

Bad

作为临时的解决方案,我们对外禁用了索引管理。在这个问题得到彻底解决后,会再把索引管理功能开放。如果您需要手动进行索引的调整,请发送邮件到 support@avoscloud.com 或在开发者控制台提交一个 ticket,我们会非常乐意提供帮助。

应该说这次故障主要是由第三方软件中的 bug 引起的。MongoDB、HBase 等都是非常优秀、代码质量很高的开源项目,但在复杂的系统里存在缺陷一定是常态,所以我们也会对自己的后端架构进行改进,尽可能控制第三方和我们自己的 bug 可能引起的风险。

感谢大家对我们的长期支持。事故发生后,QQ 群里的用户纷纷表示情绪稳定,体现了很大的耐心和宽容。同时也感谢我们的工程师们迅速反应,在很短的时间内查清并排除了故障。希望大家继续支持 AVOS Cloud 并信任我们团队,不断给我们提出意见和建议,帮助我们把服务越做越好。

江宏
CEO at AVOS Cloud

五月十四日时出现的短暂故障》上有1条评论

  1. Pingback引用通告: 2014 年 5 月第二周 AVOS Cloud 更新 | AVOS Cloud Blog

发表评论

电子邮件地址不会被公开。 必填项已用*标注