架构实战案例解析
王庆友
前1号店首席架构师
立即订阅
2041 人已学习
课程目录
已更新 15 讲 / 共 22 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 想吃透架构?你得看看真实、接地气的架构案例
免费
概述篇 (1讲)
01 | 架构的本质:如何打造一个有序的系统?
业务架构篇 (9讲)
02 | 业务架构:作为开发,你真的了解业务吗?
03 | 可扩展架构:如何打造一个善变的柔性系统?
04 | 可扩展架构案例(一):电商平台架构是如何演变的?
05 | 可扩展架构案例(二):App服务端架构是如何升级的?
06 | 可扩展架构案例(三):你真的需要一个中台吗?
07 | 可复用架构:如何实现高层次的复用?
08 | 可复用架构案例(一):如何设计一个基础服务?
09 | 可复用架构案例(二):如何对现有系统做微服务改造?
10 | 可复用架构案例(三):中台是如何炼成的?
技术架构篇 (4讲)
11 | 技术架构:作为开发,你真的了解系统吗?
12 | 高可用架构:如何让你的系统不掉链子?
13 | 高可用架构案例(一):如何实现O2O平台日订单500万?
14 | 高可用架构案例(二):如何第一时间知道系统哪里有问题?
架构实战案例解析
登录|注册

12 | 高可用架构:如何让你的系统不掉链子?

王庆友 2020-03-18
你好,我是王庆友。今天我和你聊一聊,如何实现系统的高可用。
在实际工作中,我们平常更关注系统业务功能的实现,而对于系统是否会出故障,总觉得那是小概率事件,一开始不会考虑得太多。然而系统上线后,我们会发现系统其实很脆弱,每个地方都可能会出问题,处理线上事故的时间往往超过了开发功能的时间。
所以,对于系统的高可用,我想你经常会有这样的疑问:系统的高可用真的很重要吗?如何实现系统的高可用,具体都有哪些手段呢?
十年前,我还在 eBay,那时候,我们有几个数据来说明系统宕机对公司的影响,我记得其中一个是系统每宕掉 1 秒,公司将损失三千美金的收入;现在的大型外卖平台也是如此,如果就餐高峰期宕掉 1 小时,平台至少损失几个亿的直接收入,更加不用说对公司品牌的影响。
但是我们知道,系统中包含了大量的软硬件设备,要保证所有的节点都可用,不是一件容易的事。所以今天这一讲,我会从系统高可用的角度出发,和你介绍如何才能做到让系统不掉链子。

系统有哪些故障点?

那么一个系统,它在运行的过程中,都可能会出现哪些故障呢?我们来看一个简化的系统处理过程。
首先,客户端在远程发起请求,经过接入系统处理后,请求被转发给应用系统;应用系统调用服务完成具体的功能;在这个过程中,应用和服务还会访问各种资源,比如数据库和缓存。这里,我用红色部分,标识出了整个处理过程中可能出现的故障点,如下图所示:
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《架构实战案例解析》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(5)

  • 孙同学
    https://www.processon.com/view/link/5e51378ce4b0c037b5f9d1e3 整理学习更新
    2020-03-18
    1
  • 约书亚
    第一次从这种抽象层面看待问题,之前太low了,受益颇多。
    我感觉“隔离”也应该算是一种解决思路,尽管和可降级有重复的地方。
    2020-03-23
  • Din
    是 重启、下线、回滚 这三个吗?

    感觉这些手段和老师说的「处理线上事故的首要原则是先尽快恢复业务 」是一致的,都是先恢复业务,将业务损失降到最低,然后再定位具体的问题。

    作者回复: 差不多,下线和回滚差不多意思,还有一个是加机器。

    2020-03-22
  • 孙同学
    是 主备切换 重启设备 回推操作吗
    2020-03-19
  • Jeff.Smile
    老师,课程看到现在觉得确实都是实际的架构经验,不过更偏重于设计角度,有个疑问,对于有志于成为架构师的开发工程师来说,是需要多花精力在软件本身的使用或者说落地上呢?还是思考架构如何设计上而对软件达到基本能上手使用就行?

    作者回复: 工程师到架构师,是一个从实现到设计的过程,设计比实现更难,会设计,实现自然不是问题

    2020-03-18
收起评论
5
返回
顶部