【稳定性day3】蘑菇街的运维体系 - 如何撑住双十一
本文是蘑菇街运维经理赵成的分享。
蘑菇街是中国最大的女性时尚社交电商平台。成立于2011年,总部位于浙江杭州, 目前(2015.Q3)拥有1.3亿注册用户,双十一日UV超2000万。2015.11.21日宣布完成D轮融资,并实施"一街双城"战略,杭州+北京,杭 州偏电商方向,北京偏社交媒体方向。
蘑菇街业务架构-导购期(2011-2012)
运维早期情况
早期阶段(2011-2012年)
– 两位数机器、个位数网络设备
– 没有运维,开发即运维,靠牛逼的脚本和一些开源工具搞定
蘑菇街业务架构-转型期(2013)
运维的发展
中间阶段(2013年-2014年)
– 三位数服务器、两位数网络设备
– 2-3名专职运维同学(主机&网络&DB&缓存&......) – 问题响应式的工作方式
– 工具化的运维平台
机器资源管理(CMDB的雏形)
PHP发布系统
从指标维度监控系统(主机、QPS、RT、调用次数.... )
蘑菇街业务架构-社会化电商
我们应该怎么做
思路:
建立以应用服务为核心的管理标准体系
打造CMDB、流程申请、持续集成和监控为一体的自动化运维系统, 而不是孤立的单点系统
把运维能力服务化(API),使运维的能力无处不在
关于应用服务管理
案例介绍
让我们看一个从服务器管理—申请—代码发布—线上监控的案例
关于应用服务器-Hestia服务和资源管理
从业务的维度来管理主机-CMDB的核心概念
支持扩容、上下线、设备保障、权限等常规流程申请
自动化任务的配置和下发
关于应用服务管理-Mops流程申请系统
关于应用服务管理-发布系统
以trade_ordership_service为标示,进行代码发布
关于应用服务管理-监控系统Sentry
通用+自定义监控,运维+开发可以时刻关注自己的服务状态和质量
运维的现状
专业的运维团队 – 系统运维
– 应用运维 – DBA
– 运维开发
• 运维的能力向平台化和服务化发展(DevOps,依赖于能力而不是人) – CMDB服务化平台
– PHP+Java持续集成发布平台
– 统一的监控平台
– 全链路服务质量分析平台 – 稳定性平台
– 容量评估平台(待做)
• 工作方式的改变
– 从问题响应式,向整体解决方案提供方向发展
双11技术保障,运维做了什么?
双11关键技术分享—全链路系统
全链路背景
复杂的分布式系统,页面上的一次链接点击,在后端 可能会产生几十次的RPC调用,Web、服务化、缓存、 消息、DB.......都有可能涉及,如果出了问题,如何快 速定位到故障点要扩容,如何合理评估
关键概念,全局唯一的TraceId
全链路技术架构
全链路应用-快速发现问题点和瓶颈点
全链路应用-调用合理性分析
没有明显的瓶颈点,每一次调用RT也很正常,但是全链整体的RT却很高, 问题又出在哪里了呢?
全链路使用后的收益和后续
使用全链路后的收益
– 提升问题的定位效率 – 准确的评估容量
后续
– Mogu-Watch,与前端打通,实现用户全链路的分析 – 压测做到平时,与容量评估平台和资源分配打通
– 引入云资源弹性扩容,避免应对峰值的批量机器采购
压测之后,关键技术改造-ATS静态化方案
静态化方案背景和简介
– 主链路(首页-详情&活动-交易-支付),降低RT,提升容量
– 资源类的如图片、CSS、JS等的静态化方案都会采用CDN技术
– 对于页面内容类的数据,如商品名称、商品详情等都属于静态数据,而 商品的库存、优惠等则需要获取动态结果
– 对于活动页面、H5活动推广页面等,则可以完全静态化
ATS(Apache Traffic Server)静态化技术方案-Cheetah
ATS静态化案例-商品详情页
ATS静态化使用后的收益和后续
• 使用静态化后的收益
– 详情页(全站流量的30%+)静态化在双11期间的命中率达到95%,换言之,减少了后端服务接近30%的流量压力
– RT从原来200ms降低到50ms,用户体验大大提升
– 容量提升,减少了后端服务器的数量
• 后续
– 借助云资源搭建云上的ATS,更贴近用户 – ATS Cluster方案
– 支持HTTPS
– 回源流控和容灾控制
限流&降级开关推送和WEB应急扩容方案
• 限流&降级开关
– 限流,Web层,防止被流量打垮
– 降级,App层(服务化),保障核心应用
• Web应急扩容方案
– 选择Docker 容器,批量生成效率高 – 启动速度快
– 资源利用率提升明显
=>更多文章请参考:《中国互联网业务研发体系架构指南》
=>更多TOP权威案例及行业标准资料请关注微信公众号:
【稳定性day3】蘑菇街的运维体系 - 如何撑住双十一相关推荐
- 阿里巴巴超大规模 Kubernetes 基础设施运维体系介绍
简介:ASI 作为阿里集团.阿里云基础设施底座,为越来越多的云产品提供更多专业服务,托管底层 K8s 集群,屏蔽复杂的 K8s 门槛.透明几乎所有的基础设施复杂度,并用专业的产品技术能力兜底稳定性,让 ...
- 阿里巴巴超大规模Kubernetes基础设施运维体系解读
简介:ASI:Alibaba Serverless infrastructure,阿里巴巴针对云原生应用设计的统一基础设施.ASI 基于阿里云公共云容器服务 ACK之上,支撑集团应用云原生化和云产品的 ...
- 阿里巴巴研究员刘国华:阿里巴巴智能运维体系建设
导语:在2018年开放数据中心峰会(Open Data Center Summit 2018)开幕式上阿里巴巴研究员刘国华发表了<阿里巴巴智能运维体系建设>的主题演讲.演讲中,刘国华介绍了 ...
- 应对双11挑战,阿里巴巴智能化运维体系演进与建设
导读:DevOps 的概念提出接近10年了,提升协作效率,降低开发成本,更稳健可持续的业务运营是DevOps的主旋律.根据2016年DevOps调查报告显示,一个低效的IT组织跟一个高效的IT组织相比 ...
- 阿里云周宇:神龙计算平台智能运维体系建设
嘉宾 | 周宇 整理 | 吴林锋 出品 | CSDN云原生 2022年4月12日,在CSDN云原生系列在线峰会第1期"SRE与智能运维峰会"上,阿里云高级技术专家.神龙计算平台 ...
- 运维体系框架标准化模型简介
为什么要做标准化? 标准化的过程实际上就是对运维对象的识别和建模过程.形成统一的对象模型后,各方在统一的认识下展开有效协作,然后针对不同的运维对象,再抽取出它们所对应的运维场景,接下来才是运维场景的自 ...
- 赵成的运维体系管理课视频教程
专栏模块 专栏共三个月,36 期,围绕以应用为核心的运维体系,分四个模块介绍. 应用运维体系建设.这一模块是运维工作的基础,将从标准化和应用生命周期开始,介绍如何一步步建立运维技术体系和组织架构,如何 ...
- 《赵成的运维体系管理课》学习笔记(5)——故障管理
37 | 故障管理:谈谈我对故障的理解 系统正常,只是改系统无数异常情况下的一种特例. Design for Failure: 我们的目标和注意力不应该放在消除故障,或者不允许故障发生上,因为我们无法 ...
- 从《进化/运维技术变革与实践探索》看运维体系建设与个人成长
最近在学习赵成大佬的<进化/运维技术变革与实践探索>一书,在极客时间也有教程.整本书从以下的四个方面进行了梳理:应用运维体系建设.效率和稳定性等方面的最佳实践.云计算方面的思考和实践.个人 ...
最新文章
- 【javamatlab】以一个简单的例子实现java和matlab混编
- 计算机专业体系 网易云,计算机系统结构 (二) 计算机主要系统构成
- 浏览器控制台执行代码_JavaScript 和 浏览器那些事
- 【机器学习算法专题(蓄力计划)】七、机器学习中数据的相关分析
- cocos2dx 3.2之Lua打飞机项目
- 应用名称本地化/国际化
- 往vxe-table添加渲染器怎么添_赚大了!飘窗上装书桌,加扇折叠窗,等于为家里又多添一间房...
- 适合文科女孩子学的计算机类专业,文科女生最吃香的专业2021 哪些专业有前景...
- opencv4 图像特征匹配_概述 | 全景图像拼接技术全解析
- Python稳基修炼的经典案例14(计算机二级、初学者必会字符格式处理)
- Mysql中有哪些数据类型(建议收藏)
- JavaScript 错误 - Throw、Try 和 Catch
- 【目标检测】Labelme的改进——海量图片的自动标注
- java sort排序函数
- Php—— 1.apache2.4.x+php7.x
- NACOS 2.0.3 集群客户端连接出现503 500异常处理 踩坑记录
- ztree在vue中的使用 使用封装好的vue-giant-tree
- 联发科mt8516价格_一颗神U创造历史:联发科MT8516
- 星星之火-6:无线通信必须知道的“信号”与傅里叶信号变换
- 业务流程优化设计之思想和原则 (转载)