【送书活动】阿里云经历的历史级的大故障,能给我们什么启迪?

news2024/11/25 12:52:12

作为一个淘系出来的人,参加过声势浩大的S11、S2大促;也和阿里云数据库团队、内核团队等并肩作战过;更是手握过六七百万的预算支持阿里云的服务,更是他们的至尊群用户,得知此次重大故障后,也甚是惊讶。
从阿里云的角度看,这次故障很“不阿里云”,毕竟阿里云一向以安全稳定高可用自居,如此范围之大、持续时间之久、影响面如此广的故障,对阿里云的品牌形象绝对是致命的打击。

目录

  • 回顾
    • 时间
    • 影响
      • 阿里系产品集体崩溃
      • 受影响云产品
      • 受影响地区
      • 生活的方方面面
    • 处理过程
    • 原因
  • 启迪
    • 稳定性
      • 代码需要稳定性
      • 设计上需要稳定性
      • 迭代变更需要稳定性
      • 最重要的是人员需要稳定性
  • 书籍推荐
    • 书籍名称:《收割Offer互联网大厂面经》
    • 内容介绍
    • 适合人群
    • 如何领书

回顾

时间

2023年11月12日17:39~19.20,故障时间为 1 小时 41 分。

影响

阿里系产品集体崩溃

双11当晚,淘宝曾有短暂宕机,但很快就过去了。但到了12日傍晚,阿里云突然出现事故,导致淘宝、闲鱼、钉钉、阿里云盘、饿了么、天猫精灵、菜鸟、夸克、语雀等,多个阿里系App出现无法访问或服务异常的情况。

阿里云崩了、淘宝崩了、闲鱼崩了、钉钉崩了等话题相继登上热搜。
在这里插入图片描述

受影响云产品

企业级分布式应用服务、 消息队列MQ、微服务引擎、链路追踪、应用高可用服务、应用实时监控服务、Prometheus监控服务、消息服务、消息队列Kafka版、机器学习、图像搜索、智能推荐AlRec、智能开放搜索OpenSearch、云行情、数据总线DataHub、检索分析服务Elasticsearch版、 图计算服务Graph Compute、实时计算Flink版、智能数据建设与治理Dataphin、开源大数据平台E-MapReduce、云原生大数据计算服务MaxCompute、实时数仓Hologres.大数据开发治理平台DataWorks、智能媒体服务、媒体处理、视频点播、对象存储、文件存储NAS、表格存储、日志服务、云存储网关、文件存储HDFS版、块存储、混合云备份服务、密钥管理服务、云防火墙、数据库审计、加密服 务、运维安全中心(堡垒机)、 容器镜像服务、容器服务Ku bernetes版、API 网关、资源编排、云原生数据仓库Analyti cDB PostgreSQL版、图数据库、云原生内存数据库Tair、云 数据库Redis 版、云原生关系型数据库PolarDB、云数据库专属集群、云数据库MySQL版、云原生数据仓库AnalyticD B MySQL版、云原生分布式数据库PolarDB-X、云数据库 ClickHouse、云原生多模数据库L indorm、云数据库Postgr eSQL版、云数据库SQL Server 版、云数据库MongoDB版、云数据库HBase版、数据传输、数据库自治服务、数据库备份、物联网平台、NAT网关、负载均衡、云解析PrivateZone、弹性公网IP、共享带宽、转发路由器、私网连接、高速通道、IPv6网关、专有网络VPC、云企业网、VPN网关、FPGA云服务器、超级计算集群、批量计算、无影云桌面、弹性伸缩、弹性容器实例、弹性裸金属服务器、云服务器EC S、轻量应用服务器、函数计算、Serverless 应用引擎、云托付、专有宿主机、GPU云服务器、弹性高性能计算、操作审计、服务器迁移中心、运维编排、智能计算灵骏、云呼叫中心、交通云控平台、客服工作台、视觉智能开放平台、智能外呼机器人、智能语音交互、智能对话机器人、智能用户增长、运维事件中心、新零售智能助理。

在这里插入图片描述

受影响地区

在这里插入图片描述

生活的方方面面

比如,很多学校的学生不能使用宿舍里的洗衣机了,因为大部分学校里共享洗衣机的服务商的业务就跑在阿里云上。此外,还有很多很多人因此遭遇了无法使用直饮水机、无法给电瓶车充电、停车场停车杆抬不起来等问题。

处理过程

  • 17:39:阿里云云产品控制台访问及管控 API 调用出现异常,阿里云工程师正在紧急介入排查。
  • 17:50:工程师确认故障是 AK 服务异常导致,影响云产品控制台、管控 API 调用异常,以及依赖 AK 服务的云产品服务运行异常,工程师正在紧急处理中。
  • 18:01:工程师定位到根因。
  • 18:07:开始执行恢复措施,包括修订白名单版本、重启 AK 服务。
  • 18:54 经过工程师处理,杭州、北京等地域控制台及API服务已恢复,其他地域控制台服务逐步恢复中。
  • 19:20:工程师通过分批重启组件服务,绝大部分地域控制台及API服务已恢复。
  • 19:43 异常管控服务组件均已完成重启,除个别云产品(如消息队列MQ、消息服务MNS)仍需处理,其余云产品控制台及API服务已恢复。
  • 20:12 北京、杭州等地域消息队列MQ已完成重启,其余地域逐步恢复中。

原因

访问密钥服务 (AK)在读取白名单数据时出现读取异常,因处理读取异常的代码存在逻辑缺陷,生成了一份不完整白名单,导致不在此白名单中的有效请求失败,影响云产品控制台及管控 API 服务出现异常,同时部分依赖 AK 服务的产品因不完整的白名单出现部分服务运行异常。


启迪

网上对于此次阿里云事件议论纷纷,我也通过内部渠道了解了部分原因,可能这次冥冥之中是逃不掉故障的,因为听说稳定性已经很久没人提了。然而此次事故最大的原因,就是稳定性。

稳定性

记得之前每每大促,稳定性保障一词总是被提起,还有稳定性保障团队及负责人。但现在也被人遗忘了,在降本增效的今天深刻的证明了:杀头的生意有人做,亏本的买卖无人干。

稳定性难得真的不是技术,当业务研发上千,日迭代频繁,基础设施不计其数的各项对象及参数,牵一发而动全身,稳定性需要有团队,组织,文化,技术,管理等各类综合工具与人员来统一护航管理,对业务,对组织负责,不是简单的降本增效、人员迭代、工作交接,就可以搞定的!

代码需要稳定性

优秀的程序员的最大差别其实就是在代码的鲁棒性上

  1. 对边界的控制,确保输入是符合自己的预期的,而不只是设计文档上空洞的三言两语,例如最典型的故障是批量操作型的接口,由于批量操作的量超过了预期,直接内存溢出等;

  2. 对使用到的接口或工具充分了解(包括实现原理、代码细节),只有这样,才能知道各种情况下的状况,从而在真正出故障的情况下能快速处理;

设计上需要稳定性

设计上要尽量做到高内聚低耦合

  1. 强弱依赖识别,对弱依赖的地方,确保有各种降级策略;
  2. 自身能力保护,一定要对自己系统的能力有清晰的认识;
  3. 容灾能力,这个从集群化、到同城多活、再到异地多活,其实都有各种成熟的案例和相应的方案。

迭代变更需要稳定性

众所周知,出故障的时候,往往是做了一些改动,但又没考虑周全

  1. 一定要灰度,可以灰度测试,就能提前发现问题,解决问题,同时减少影响半径;
  2. 可监控,可回滚。可监控是为了及时发现问题;可回滚是变更一旦出问题,最好用的招;
  3. 有尽快恢复的兜底方案。在故障出现时尽快恢复,而不是解决故障,在保留一定的现场的基础上,尽快的恢复问题比查问题重要的多。

最重要的是人员需要稳定性

稳定性难在没有银弹,只能靠大量的细节来落地做好稳定性这个系统工程的事情,这意味着需要大量的投入,毕竟就算有指导思想、解决方案、能力,但没有相应的投入,那自然只能有一定的取舍,最终呢,总是要还的。

就像我们毕业群里校友调侃的

  1. 降本增效就是一个伪命题,总想着既让马儿跑又不让马儿吃草,这不是扯吗,都不懂鱼和熊掌不可兼得不出事才怪
  2. 阿里云高管的调整、业务团队的变动、一线员工的离开,以及精力的转移增加了不确定性,业务稳定性亦在降低。
  3. 维护一个复杂的中台需要大量专业的开发和运营人员,而阿里云今年的裁员对此或多或少产生了影响,另外,管理亦是因素之一。

书籍推荐

我们可能决定不了一直留在哪家公司,但我们可以选择去哪家公司,下面给大家推荐一本 《收割Offer互联网大厂面经》 ,来帮助大家找到更好的东家去做好稳定性保障!

书籍名称:《收割Offer互联网大厂面经》

对于后端程序员来说,这是一本让你获得大厂Offer的秘诀和宝典。
在这里插入图片描述

内容介绍

《收割Offer:互联网大厂面经》根据编者工作和面试经验,全面介绍了后端工程师求职面试需要掌握的知识和技能。主要内容分为五个部分:八股文、算法、场景设计题、项目和HR面试技巧。 八股文章节涵盖了后端面试必备的重要知识点,包括综合知识、数据库、Redis、RocketMQ、操作系统、计算机网络、Spring、ZooKeeper、Dubbo等

HR面试技巧章节以与头部大厂HR访谈记录的形式向读者展示了HR面试内幕。本书的内容安排完全与面试要求匹配,根据历史经验,任何一场后端面试80%的问题都可以在本书中找到。阅读本书可以快速找到学习方向,树立求职信心,提高面试通过率。

适合人群

《收割Offer:互联网大厂面经》适合希望从事互联网后端开发的读者,包括参加校园招聘和社会招聘的求职者。此外,后端开发与测试开发的技能要求有很多共同点,因此,本书对于从事测试工作的读者也有较大参考价值。

在这里插入图片描述

如何领书

————————————————
本次本篇文章送书 🔥2-3本 评论区抽2-3位小伙伴送书
活动时间:截止到 2023-11-25 20:00:00
抽奖方式:利用网络公开的在线抽奖工具进行抽奖
参与方式:关注、点赞、收藏,评论“人生苦短,给我offer"
根据文章阅读量的多少来安排送书的本数。
————————————————

🔥 注:活动结束后,会私信中奖粉丝的,各位注意查看私信哦!

小伙伴也可以访问链接进行自主购买哦~
直达京东购买链接:《收割Offer:互联网大厂面经》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1219726.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【23真题】难!985难度第一梯队!

今天分享的是23年华南理工大学811的信号与系统试题及解析 本套试卷难度分析:22年华南理工大学811考研真题,我也发布过,若有需要,戳这里自取!本套试题难度中等偏上,只有十道大题,考察大家的综合…

MyBatis整合Spring Boot扫描Mapper相关配置

MyBatis是一款 Java 平台的优秀数据库映射框架,支持 XML 定义或注解,免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。 针对 Spring 提供 Mapper 扫描注解: 集成 Spring Boot 时,可以通过 MapperScan 注解&#xff0…

纯前端模板文件下载如何精确控制下载的文件名字

在写项目的时候,遇到了一个需要把给定的文件放到页面中,然后用户点击下载按钮将这个文件下载下来,我将其存入了云服务之中(这个云服务是不会清空的,内存又不值几个钱),但是当我下载的时候,下载的文件名是存…

Java读取本地文件

import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOException;public class Main {public static void main(String[] args) {String filePath "C:/Users/admin/Desktop/知识点记录.md";// 创建一个文件对象File f…

【MySQL8】1130 - Host *** is not allowed to connect to this MySOL server

问题描述 使用 Navicat 连接 MySQL8 报错: 1130 - Host *** is not allowed to connect to this MySOL server解决方案 use mysql;select host ,user from user; -- 将 root 用户的主机(host)值修改为 %,即允许从任何主机连接 …

navigator.geolocation.getCurrentPosition在谷歌浏览器不执行的问题

/*** 获取我的位置*/getNavigatorLocation: function () {navigator.geolocation.getCurrentPosition(function (success) {console.log(inner>>>, success);if (success && success.coords) {var data success.coords;var point "POINT(" data.…

Web前后端漏洞分析与防御

第1章 课程介绍 试看2 节 | 15分钟 介绍安全问题在web开发中的重要性,并对课程整体进行介绍 收起列表 视频: 1-1 Web安全课程介绍 (09:24) 试看 视频: 1-2 项目总览 (04:47) 第2章 环境搭建2 节 | 26分钟 本章节我们会搭建项目所需要的环境 …

两种常用的找到现货白银目标位的方法

在现货白银交易中,会买的不算厉害,会卖的人才能让利润真正的落袋为安。这里的“买”和“卖”指的不是买入和卖出,而是开仓和平仓。今天我们就来讨论一下,我们怎么样才能懂得“卖”,应该在哪里设置“卖”,也…

freeRTOS--软件定时器

一、什么是定时器: 简单可以理解为闹钟,到达指定一段时间后,就会响铃。STM32 芯片自带硬件定时器,精度较高、达到定时时间后会触发中断,也可以生成 PWM 、输入捕获、输出比较,等等,功能强大&am…

STM32GPIO——上拉下拉电阻、施密特触发器、P-MOS/N-MOS管

图1和图2 两种版本的GPIO基本结构图 如上两个图所示,标号2都为上拉、下拉电阻部分,阻值约为30k~50k欧,通过对应开关进行控制,开关由寄存器控制。 当引脚外部的器件没有干扰引脚的电压时,即没有外部的上、下拉电压&a…

springboot 2.1.0.RELEASE 项目加入swagger接口文档

Release v2.1.0.RELEASE spring-projects/spring-boot GitHub springboot 2.1.0.RELEASE发行日期是2018年10月30日(Oct 30, 2018) 不要使用过高的swagger版本,如SpringFox Boot Starter 3.0.0,否则报错: spring-…

Java学习之路 —— 多线程

文章目录 1. 线程创建方式1.1 继承Thread1.2 声明一个实现Runnable接口的类1.3 利用Callable接口、FutureTask类来实现 2. 线程同步2.1 同步代码块2.2 同步方法2.3 Lock锁 3. 线程同步4. 线程池 1. 线程创建方式 1.1 继承Thread 定义子类,继承Thread,创…

Vue指令修饰符、v-bind、v-model、computed计算属性、watch侦听器

前言 持续学习总结输出中,Vue指令修饰符、v-bind、v-model、computed计算属性、watch侦听器 一、指令修饰符 1.什么是指令修饰符? 所谓指令修饰符就是通过“.”指明一些指令后缀 ,不同的后缀封装了不同的处理操作 —> 简化代码 2.按键…

玩具、儿童用品、儿童服装上亚马逊TEMU平台CPC认证办理

CPC认证是Childrens Product Certificate的简称,即儿童产品证书。它是美国强制性法规CPSIA要求的一部分,该法规主要针对12岁及以下儿童使用的产品,如玩具、儿童用品、儿童服装等。 一、儿童小汽车CPC测试项目可能会因产品标准和法规的不同而…

开关电源测试之输出暂态响应测试标准及方法详解

暂态响应是指在接收到输入信号后,输出信号在短时间内产生的变化。开关电源输出暂态响应测试是为了检测输出负载快速变化时,输出电压跟随变动的稳定性。 开关电源输出暂态响应怎么测试? 测试目的:测试S.M.P.S.输出负载快速变化时&a…

中小型企业内网搭建

某中小型公司客户提出网络比较单一整体都在一个大的广播域中,AP无线的SSID有很多个,包括一些小的无线路由器散发出来的信号,用起来网络不太稳定,并且AP的SSID要分开,办公室只有单个SSID,不允许出现其他的&a…

【Ubuntu】设置永不息屏与安装 dconf-editor

方式一、GUI界面进行设置 No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.6 LTS Release: 20.04 Codename: focal打开 Ubuntu 桌面环境的设置菜单。你可以通过点击屏幕右上角的系统菜单,然后选择设置。在设置菜单中,…

休闲机动滑板车和便携式自行车ASTMF2641-23测试标准如何办理?

领先的行业资讯 近日,美国材料实验协会ASTM发布了2023版“休闲机动滑板车和便携式自行车的消费者安全规范” ASTM F2641-23,取代上一版本ASTM F2641-08 (2015)。 该规范是基于目前最先进的娱乐电动滑板车和迷你摩托车技术水平,旨在涵盖产品的…

Win10专业版如何重装-Win10专业版重装系统教程

Win10专业版如何重装?Win10专业版系统能够用户带来丰富的功能服务,用户操作需求轻松得到满足。如果我们在Win10专业版电脑中,遇到了系统问题,这时候可以考虑重新安装Win10专业版系统,从而解决系统出现的问题。下面小编…

全球温度数据下载

1.全球年平均温度下载https://www.ncei.noaa.gov/data/global-summary-of-the-year/archive/ 2.全球月平均气温下载https://www.ncei.noaa.gov/data/global-summary-of-the-month/archive/ 3.全球日平均气温下载https://www.ncei.noaa.gov/data/global-summary-of-the-day/ar…