vlambda博客
学习文章列表

GitHub 近期频繁宕机?官方解释:MySQL 负载过重

技术编辑:典典丨发自 思否编辑部




在过去的几周里,由于数据库的问题,GitHub 经历了多起宕机事件,导致平台的服务降级, 影响了许多用户的使用。


GitHub 对宕机事件非常重视,在解决问题的同时,也于本月 23 日公布了这些事件的详细情况。


时间线


  • 3 月 16 日 14:09 UTC(持续 5 小时 36 分钟)
  • 3 月 17 日 13:46 UTC(持续 2 小时 28 分钟)
  • 3 月 22 日 15:53 UTC(持续 2 小时 53 分钟)
  • 3 月 23 日 14:49 UTC(持续 2 小时 51 分钟)


据了解,过去几周导致 GitHub 频繁宕机的主要原因是其 mysql1 集群的资源争夺,这在负载高峰期间影响了 GitHub 的大量服务和功能性能。


在过去的几年里,GitHub 已经进行了许多优化,例如添加集群以支持平台的增长、对主数据库进行分区等,但这些改进工作并不能一劳永逸,一直到现在他们仍在积极地解决这个问题。


为了防止将来发生此类事件,GitHub 已开始在高峰时段对该特定数据库的负载模式进行审计,并根据这些审计进行一系列性能修复。作为其中的一部分,他们正在将流量转移到其他数据库,以减少负载并加快故障转移时间,并审查其变更管理程序,特别是与生产中高负载期间相关的监控和变更。

随着平台的不断发展,GitHub 将一直努力扩展基础设施,包括对数据库进行分片和扩展硬件。

- END -