《赵成的运维体系管理课》学习笔记(4)——稳定性保障
31 | 极端业务场景下,我们应该如何做好稳定性保障?
我们所面对的极端业务场景
可预测场景:双11
不可预测场景:鹿晗公布恋情
我们要迎接的技术挑战
- 运维自动化
标准化覆盖面是否足够广泛,应用体系是否完善,持续交付流水线是否高效,云上资源获得是否足够迅速,这些都是运维自动化的基础。特别是对于不可预测的场景,考验的就是自动化的程度。 - 容量评估和压测
我们只有对系统容量十分清楚,才能针对特定场景判断出哪些应用和不见需要扩容,扩容多少,扩容顺序如何。同时,系统容量的获取,需要有比较完善的自动化压测系统,针对单接口、单应用、但链路以及全链路进行日常和极端场景下的模拟压测。 - 限流降级
对于超出容量的请求进行限流,请用户耐心等待一下
对于非核心的功能,在峰值时刻进行降级,以降低系统压力。 - 开关预案
系统功能开关,比如当缓存故障事,我们就需要将请求转发到数据库上,目的只有一个,让系统可用。 - 故障模拟
类似Chaos Engineering的故障模拟系统,也需要建设起来,模拟出一些常见,比如CPU异常,RT响应异常,QPS异常等等,看我们的预案是否能够快速执行,能够保持系统或将系统快速恢复到正常状态。 - 监控体系
指标采集和统计,异常判断
极端业务场景下的不确定因素
对于稳定性而言,用户访问模型才是关键,这个摸不准,只有技术没有用的,这就更需要我们能够深入业务,理解业务。
32 | 稳定性实践:容量规划之业务场景分析
容量规划,就是对复杂业务场景的分析,通过一定的技术手段(如压力测试),来达到对资源合理扩容,有效规划的过程。
33 | 稳定性实践:容量规划之压测系统建设
第一个维度,压测粒度
- 单机单应用压力测试
- 单链路压力测试
- 多链路、全链路压力测试
第二个维度,压测接口及流量构造方式
- 线上流量回放、
- 线上流量引流
- 流量模拟
Gatling
第三个维度,施压方式
第四个维度,数据读写
34 | 稳定性实践:限流降级
什么是限流和降级
限流:它的作用是根据某个应用或基础部件的某些核心指标,如QPS或并发线程数,来决定是否将后续的请求进行拦截。
降级:它的作用是通过判断某个应用或组件的服务状态是否正常,来决定是否继续提供服务。
常见的限流解决方案
- 第一类,接入层限流
nginx限流,API路由网关模式 - 第二类,应用限流
- 第三类,基础服务限流
限流降级的难点
限流降级的难点和关键还是在于整体技术栈的统一、以及后期对每个应用限流降级资源策略的准确把握和配置。
35 | 稳定性实践:开关和预案
如何理解开关和预案
开关:这个概念更多是业务和功能层面的,主要是针对单个功能的启用和停止进行控制,或者将功能状态在不同版本之间进行切换。
预案:可以理解为让应用或业务进入到某种特定状态的复杂方案执行,这个方案最终会通过开关、限流和降级策略这些细粒度的技术来实现,是这些具体技术方案的场景化表现。
技术解决方案
- 开关管理
- 开关推送
- 配置变更
- 预案执行
36 | 稳定性实践:全链路跟踪系统
阿里的鹰眼系统,美团点评的CAT分布式监控系统。
全链路跟踪系统在技术运营层面的应用
核心技术点:TraceID
技术运营场景:
第一个场景,问题定位和排查
第二个场景,服务运行状态分析
- 服务运行质量
- 应用和服务依赖
- 依赖关系的服务质量
第三个场景,业务全息
技术、产品和运营相辅相成,共同促进彼此的完善和成熟。
技术之外,我们也应该更多地考虑技术在价值方面的呈现。
《赵成的运维体系管理课》学习笔记(4)——稳定性保障相关推荐
- 《赵成的运维体系管理课》学习笔记(5)——故障管理
37 | 故障管理:谈谈我对故障的理解 系统正常,只是改系统无数异常情况下的一种特例. Design for Failure: 我们的目标和注意力不应该放在消除故障,或者不允许故障发生上,因为我们无法 ...
- 赵成的运维体系管理课视频教程
专栏模块 专栏共三个月,36 期,围绕以应用为核心的运维体系,分四个模块介绍. 应用运维体系建设.这一模块是运维工作的基础,将从标准化和应用生命周期开始,介绍如何一步步建立运维技术体系和组织架构,如何 ...
- 《赵成的运维体系管理课》学习笔记(2)——持续交付
21 | 人多力量大vs两个披萨原则,聊聊持续交付中的流水线模式 项目需求分解 将项目管理中的需求与持续发布中的应用这两者很好地关联起来. 明确好需求拆分与应用功能的对应. 提交阶段之开发模式选择 开 ...
- 《赵成的运维体系管理课》学习笔记(1)——持续交付
16 | 持续交付知易行难,想做成这事你要理解这几个关键点 什么是持续交付 首先要把持续交付做好. 做持续交付就是提升整个研发体系效率的关键. 持续交付代表着从从业务需求开始到交付上线之后的端到端的过 ...
- 《赵成的运维体系管理课》学习笔记(3)——云计算时代的运维实践
25 | 为什么蘑菇街会选择上云?是被动选择还是主动出击? 我们所面临的问题 成本闲置问题 大促,需要业务系统有足够的容量支持,浪费机柜成本和人工投入. 基础设施维护问题 IDC机房选址,IDC机房的 ...
- 从《进化/运维技术变革与实践探索》看运维体系建设与个人成长
最近在学习赵成大佬的<进化/运维技术变革与实践探索>一书,在极客时间也有教程.整本书从以下的四个方面进行了梳理:应用运维体系建设.效率和稳定性等方面的最佳实践.云计算方面的思考和实践.个人 ...
- 【转载】拿来即用的企业级安全运维体系搭建指南
拿来即用的企业级安全运维体系搭建指南 本文我们将针对如何解决问题来进行详细说明,从问题入手,通过纠正或者培养良好的运维安全习惯,搭建完整的运维安全技术体系. 作者:林伟壕来源:DBAplus社群| 本 ...
- 阿里巴巴超大规模 Kubernetes 基础设施运维体系介绍
简介:ASI 作为阿里集团.阿里云基础设施底座,为越来越多的云产品提供更多专业服务,托管底层 K8s 集群,屏蔽复杂的 K8s 门槛.透明几乎所有的基础设施复杂度,并用专业的产品技术能力兜底稳定性,让 ...
- 阿里巴巴超大规模Kubernetes基础设施运维体系解读
简介:ASI:Alibaba Serverless infrastructure,阿里巴巴针对云原生应用设计的统一基础设施.ASI 基于阿里云公共云容器服务 ACK之上,支撑集团应用云原生化和云产品的 ...
最新文章
- CTFshow 命令执行 web56
- 3.7 感知器-机器学习笔记-斯坦福吴恩达教授
- 【Linux系统编程】IO多路复用之select
- 组件,控件,插件,库都是什么鬼啊
- 两分钟倒计时(Python)
- LeetCode 1038. 从二叉搜索树到更大和树(逆中序-右根左-降序)
- jQuery框架学习第十天:实战jQueryUI常用功能
- 南邮linux期末考试试题,南邮操作系统试卷及答案.doc
- struct seq_file
- Eclipse中屏蔽日志
- 哒哒的马蹄,由心而生的感情
- pano2vr 笔记
- python openpyxl冻结首行单元格
- element-ui图片上传组件之限制每次5张上传(或者自定义每次几张上传)
- 为什么使用Stelnet与sftp协议,而不用telnet与ftp协议
- Windows无法连接到打印机怎么办?快收藏这些正确做法!
- linux 下安装apache 快速教程
- Android开发学什么
- 百度董事长兼CEO李彦宏创立《百度互联网》全球最大的中文搜索引擎
- vue3 关于子组件给父组件传值,详解
热门文章
- 科学计算机一个亿怎么显示0,一亿后面几个零
- vscode 如何修改字体大小
- 利用python进行保险数据分析及可视化
- 劲爆!电波拉皮有什么危害,电波拉皮效果好吗能维持多久,人见人夸了
- 操作系统基本原理概述
- spark集群环境下Lost task 0.0 in stage 10.0 (TID 17, 10.28.23.202): java.io.FileNotFoundException
- C与C++成长之路——c提高二之指针强化和字符串
- SQL TIMESTAMP 时间日期比较语句
- 如何用网络管理软件灵活管理复杂庞大的网络
- HBase2.x(十一)HBase 读流程