【ArchSummit】如何通过AIOps推动可量化的业务价值增长和效率提升?>>> 了解详情
写点什么

如何避免 GitHub 那样断网 43 秒瘫痪 24 个小时?

  • 2019-08-30
  • 本文字数:862 字

    阅读完需:约 3 分钟

如何避免GitHub那样断网43秒瘫痪 24 个小时?

小蚂蚁说:

蚂蚁金服自研的金融级分布式关系型数据库 OceanBase 的高可用及容灾能力在发生城市级故障时,让系统秒级完成智能切换,实现自愈,用户的资金、数据 0 丢失。


今日,GitHub 技术负责人 Jason Warner 的一篇技术深度解析稿成为 IT 圈爆款。文中,Jason 坦诚地对外讲述了 10 月 21 日 100G 光缆设备故障后,Github 服务降级的应急过程以及反思总结。


从 Jason Warner 的文章中不难看出,造成断网 43 秒瘫痪 24 小时的罪魁祸首是数据库。由于部署在两个数据中心的数据库集群没有实时同步。意外发生时,Github 的工程师担心数据丢失,不敢快速将主数据库安全切换到东海岸的备份数据中心。



程序员们在 GitHub 这篇“忏悔录”下面留言,表达对数据库集群的“哀悼”。但更多 IT 从业者关心的问题是,如何避免这样的灾难事件降临到自己的公司,自己维护的系统。


蚂蚁金服 OceanBase 分布式数据库专家认为,此次 Github 事件是典型的城市级故障。如果系统采用的是高可用的三地五中心解决方案,就可以自如应对。


就在一个月前,今年的杭州云栖大会上,蚂蚁金服副 CTO 胡喜现场模拟剪断支付宝近一半的服务器光缆。只用了 26 秒,模拟环境中的支付宝就完全恢复了正常,这背后即是 OceanBase 城市级别故障的自愈能力。



原来,Github 类似银行采用的传统数据库两地三中心模式,即“主库(主机房)+同城热备库(同城热备机房)+异地灾备库(异地灾备机房)”。这种方式下通常只有主机房的服务器能提供写服务。如果主城市出现城市级故障,灾备城市的数据库虽然可以工作,但由于没有同步的最新数据,因此灾备库的数据是有损的。


但在三地五中心部署下,任何单个城市故障,OceanBase 都不会停止服务,数据也不会有任何损失。


Github 表示,为了保证数据完整性,他们不得不牺牲恢复时间。其实,这个问题采用三地五中心方案可以更好的应对。城市故障时,OceanBase 只要活着的两个城市的三个机房两两之间能够通信,就可以正常服务,也不会有任何的数据损失。


本文转载自公众号蚂蚁金服科技(ID:Ant-Techfin)。


原文链接:


https://mp.weixin.qq.com/s/29cwS71iKVLhZ_6YgS-rRQ


2019-08-30 16:023408
用户头像

发布了 150 篇内容, 共 32.0 次阅读, 收获喜欢 38 次。

关注

评论

发布
暂无评论
发现更多内容

趁着课余时间学点Python(十二)面向对象的理解(结局)

ベ布小禅

8月日更

SQL的执行计划-->explain

卢卡多多

sql 8月日更

使用Golang上传文件到MinIO对象存储(一)

liuzhen007

8月日更

了,来了!Nacos 2.0的Spring Boot Starter终于来了

Summer

Java 学习 程序员 架构 springboot

终于有人把操作系统、网络系统、线程进程、IO模型全部总结出来了

Java~~~

Java 架构 面试 TCP 网络

腾讯三面落马+拒网易、CVTE后,字节四面成功拿下offer

编程菌

Java 编程 程序员 面试 计算机

网络安全行业真的内卷了吗?

网络安全学海

网络安全 信息安全 网络 渗透测试 安全漏洞

干货分享!通过Dapr快速落地DDD,实现高并发

行云创新

架构实战营毕业总结

9527

#架构实战营

【得物技术】初探 OpenResty

得物技术

nginx 性能 openresty tengine

让GitHub炸锅的深入理解MySQL实战手册,竟出自阿里云“藏经阁”

Java~~~

Java MySQL 数据库 架构 面试

GitHub上火了这份堪称神级的SpringBoot手册,竟出自滴滴之手

Java~~~

Java 架构 面试 微服务 Spring Boot

你的孩子爱读书吗

箭上有毒

8月日更

支持高性能计算场景,博云容器云打造智能算力引擎

BoCloud博云

容器 高性能计算

JDK从8升级到11,使用 G1 GC,HBase性能下降20%。JDK 到底干了什么

Summer

Java 学习 程序员 架构 jdk

【前端 · 面试 】JavaScript 之你不一定会的基础题(二)

编程三昧

JavaScript 面试 大前端 事件 8月日更

百度程序员:面试官看过我的博客,所以没敢问我多线程

今晚早点睡

Java 百度 程序员 面试 计算机

腾讯三面:哨兵挂了,Redis还能正常工作吗?

Summer

Java redis 学习 程序员 架构

Web框架Gin | Gin 路由

xcbeyond

Go 语言 路由 gin 8月日更

与外部系统的读写交互(八)

数据与智能

flink kafka Cassandra

出自清华大神之手的JVM实战手册,刚上架GitHub点赞就达到85k

Java~~~

Java 架构 面试 JVM 多线程

爆赞!GitHub上首本IntelliJ IDEA操作手册,标星果然百万名不虚传

Java~~~

Java 架构 面试 IDEA 架构师

ReentrantLock 中的 4 个坑!

王磊

Java 并发 lock 8月日更

在科技圈流行的冥想,为什么没有全民推广?

脑极体

低耦合、高内聚?

escray

学习 极客时间 如何落地业务建模 8月日更

360搜索宣布下线“明星人气排行榜”:饭圈文化不是洪水猛兽

石头IT视角

QDS06 Iperf 测网速

耳东@Erdong

8月日更 qds iperf

前端之算法(三)归并排序

Augus

数据结构与算法 8月日更

红黑树的理解与 Java 实现

编程菌

Java 编程 程序员 计算机 技术宅

阿里首本凤凰架构竟要付费,构建大型分布式系统的指南这么宝贵吗

Java~~~

Java 架构 面试 分布式 高并发

网络攻防学习笔记 Day104

穿过生命散发芬芳

态势感知 网络攻防 8月日更

如何避免GitHub那样断网43秒瘫痪 24 个小时?_文化 & 方法_Geek_cb7643_InfoQ精选文章