容量规划与保护.

Slides:



Advertisements
Similar presentations
四川财经职业学院会计一系会计综合实训 目录 情境 1.1 企业认知 情境 1.3 日常经济业务核算 情境 1.4 产品成本核算 情境 1.5 编制报表前准备工作 情境 1.6 期末会计报表的编制 情境 1.2 建账.
Advertisements

主编:邓萌 【点按任意键进入】 【第六单元】 教育口语. 幼儿教师教育口 语概论 模块一 幼儿教师教育口语 分类训练 模块二 适应不同对象的教 育口语 模块三 《幼儿教师口语》编写组.
第一組 加減法 思澄、博軒、暐翔、寒菱. 大綱 1. 加減法本質 2. 迷思概念 3. 一 ~ 七冊分析 4. 教材特色.
海南医学院附 院妇产科教室 华少平 妊娠合并心脏病  概述  妊娠、分娩对心脏病的影响  心脏病对妊娠、分娩的影响  妊娠合病心脏病的种类  妊娠合并心脏病对胎儿的影响  诊断  防治.
植树节的由来 植树节的意义 各国的植树节 纪念中山先生 植树节的由来 历史发展到今天, “ 植树造林,绿化祖国 ” 的热潮漫卷 了中华大地。从沿海到内地,从城市到乡村,涌现了多少 造林模范,留下了多少感人的故事。婴儿出世,父母栽一 棵小白怕,盼望孩子和小树一样浴光吮露,茁壮成长;男 女成婚,新人双双植一株嫩柳,象征家庭美满,幸福久长;
客户协议书 填写样本和说明 河南省郑州市金水路 299 号浦发国际金融中 心 13 层 吉林钰鸿国创贵金属经营有 限公司.
浙江省县级公立医院改革与剖析 马 进 上海交通大学公共卫生学院
第二章 环境.
教师招聘考试 政策解读 讲师:卢建鹏
了解语文课程的基本理念,把握语文素养的构成要素。 把握语文教育的特点,特别是开放而有活力的语文课程的特点。
北台小学 构建和谐师生关系 做幸福教师 2012—2013上职工大会.
福榮街官立小學 我家孩子上小一.
第2期技職教育再造方案(草案) 教育部 101年12月12日 1 1.
企业员工心态管理培训 企业员工心态管理培训讲师:谭小琥.
历史人物的研究 ----曾国藩 组员: 乔立蓉 杜曜芳 杨慧 组长:马学思 杜志丹 史敦慧 王晶.
教育部高职高专英语类专业教学指导委员会 刘黛琳 山东 • 二○一一年八月
淡雅诗韵 七(12)班 第二组 蔡聿桐.
第七届全国英语专业院长/系主任高级论坛 汇报材料
小數怕長計, 高糖飲品要節制 瑪麗醫院營養師 張桂嫦.
制冷和空调设备运用与维修专业 全日制2+1中等职业技术专业.
会计信息分析与运用 —浙江古越龙山酒股份有限公司财务分析 组员:2006级工商企业管理专业 金国芳 叶乐慧 魏观红 徐挺挺 虞琴琴.
第六章 人体生命活动的调节 人体对外界环境的感知.
芹菜 英语051班 9号 黄秋迎 概论:芹菜是常用蔬菜之一,既可热炒,又能凉拌,深受人们喜爱。近年来诸多研究表明,这是一种具有很好药用价值的植物。 别名:旱芹、样芹菜、药芹、香芹、蒲芹 。 芹菜属于花,芽及茎类。
2012年 学生党支部书记工作交流 大连理工大学 建工学部 孟秀英
北京市职业技能鉴定管理中心试题管理科.
2014吉林市卫生局事业单位招聘153名工作人员公告解读
各類所得扣繳法令 與申報實務 財政部北區國稅局桃園分局 103年9月25日
初級游泳教學.
爱国卫生工作的持续发展 区爱卫办 俞贞龙.
第八章 数学活动 方程组图象解法和实际应用
本课内容提要 一、汇率的含义 二、汇率变化与币值的关系 三、汇率变化的影响. 本课内容提要 一、汇率的含义 二、汇率变化与币值的关系 三、汇率变化的影响.
散文鉴赏方法谈.
105學年度國民中學技藝教育 專案編班申辦說明會
比亚迪集成创新模式探究 深圳大学2010届本科毕业论文答辩 姓名:卓华毅 专业:工商管理 学号: 指导老师:刘莉
如何撰写青年基金申请书 报 告 人: 吴 金 随.
点击输 入标题 点击输入说明性文字.
國際志工海外僑校服務 越南 國立臺中教育大學 2010年國際志工團隊.
痰 饮.
學分抵免原則及 學分抵免線上操作說明會.
教 学 查 房 黄宗海 南方医科大学第二临床医学院 外科学教研室.
评 建 工 作 安 排.
“十二五”国家科技计划经费管理改革培训 概预算申报与审批 国家科学技术部 2012年5月.
“十二五”国家科技计划经费管理改革培训 概预算申报与审批 国家科学技术部 2012年5月.
首都体育学院 武术与表演学院 张长念 太极拳技击运用之擒拿 首都体育学院 武术与表演学院 张长念
现行英语中考考试内容与形式的利与弊 黑龙江省教育学院 于 钢 2016, 07,黄山.
第5讲:比较安全学的创建 吴 超 教授 (O)
彰化縣西勢國小備課工作坊 新生入學的班級經營 主講:黃盈禎
重庆市西永组团K标准分区基本情况介绍.
西貢區歷史文化 清水灣 鍾礎營,楊柳鈞,林顥霖, 譚咏欣,陳昭龍.
所得稅扣繳法令與實務 財政部北區國稅局桃園分局 102年12月19日 1 1.
角 色 造 型 第四章 欧式卡通造型 主讲:李娜.
走进校园流行 高二15班政治组 指导老师:曾森治老师.
医院文化建设 广东省中医院 2011年3月26日.番禺.
案例:海底捞模式 ——把服务做到极致.
医疗法律法规培训 连云港市东辛农场医院 周卫平 二0一四年十二月.
史泰博出货检验员面试中·········
09英本2班 罗芬.
个人所得税 扣缴申报表填报讲解.
主講人:孫台義 教授 哈薩克大學國際關係學院 客座教授
土地增值税清算业务培训 主讲人:吴金娟 怀集地税.
实训报告 财务管理二班 第三小组 组长:董文芳 执笔人:王瑾 组员:汲伦 庞宁宁 姜美.
义务教育英语(7—9年级) 教学指导意见.
Http://
資源中心辦理補救教學之推動重點 服務單位:國立新竹教育大學 演 講 者:林志成教授.
增值税相关知识 莱西市国家税务局 刘冬梅.
流通业务外包的实践与思考 魏育辉 北京工业大学图书馆 2012年5月31日.
项目二 站姿、蹲姿、坐姿.
分享交流.
粮油加工与质量监控 食品与生物工程系 孙玉清.
機構督導: 范盛翔 督導 實習生: 佛光大學社會學系江佳穎 實習日期: 7/1(二)~8/29(五)
Presentation transcript:

容量规划与保护

大纲 容量规划 需要哪些数据 单机容量 依赖容量 容量保护 Web server 层面 代码层面 大致的内容是分为两块 一块是 如何构建应用容量,还有一块是容量溢出的一些防御措施

容量历程 淘宝某应用某机房机器变化走势图 1.淘宝机器的变化历程

容量历程 机器预算 应用能不能支撑? 经验 不知道 经验<cpu load 流量> 结果 如果遇到突发事件(全国哀悼日)流量突然上涨。应用支撑不住了就需要紧急加机器,加多少也不清楚,反正能加多少是多少,所有人都高度紧张。 能支撑多少,什么情况下系统会挂,全是经验

容量历程 问题一:不知道应用到底能支撑多少量 问题二:只能根据现在的访问量、load等评估系统情况 问题三:应用的机器基本上不会被下掉,导致非常大的浪费。 问题四:没有统一的,可量化的容量模型

容量历程 遇到这些场景下,我们心就有一个疑问,我们缺了什么?我们需要一个什么系统来解决这个问题?

容量规范 容量水位 水位=(流量QPS/性能QPS)*100% 流量QPS 性能QPS 单机流量QPS 集群流量QPS 单机性能QPS 首先我们需要一个单位来表示应用的容量 所有的应用系统都有可承载的上限 ,这个上限一般情况下是和机器的核数相关,如:4核的话,性能的上限就是在load为4上下,当然这个不是绝对的,PE 可以根据自己的实际情况来具体定义,我们把这个上限称为性能tps。 应用实时在接受外部流量的请求,我们把这个请求称为 流量tps 水位就是当前的(流量tps/性能tps)*100%

容量规范 通过容量水位来确定机器的增减 安全水位(标准水位) 危险水位 加机器水位 减机器水位 首先我们要解决一个问题是,怎么样应用的机器怎么样才算够了多少台才算安全了? 那是不是需要一个规范, 一个可做为依据来指导 线上机器的分配部署让我们主动知道什么时候下机器什么时候上机器。

容量规范 水位线 红色必须1周之内加机器。 黄色如果是短期波动不用管;如果是自然稳定的增长,也需要加机器,但不紧急。 绿色是最正常的状态。把生产集群水位长期稳定在绿色是PE的职责。 蓝色必须退机器。 虽然水位上升到100%依然是安全服务的,但流量在上涨就overflow了。所以必须留有buffer。 红色的部分要求紧急加机器。 水位大部分时间应该在绿色,小部分时间在黄色。

容量实施 需要获取到应用的真实性能数据 需要获取应用的流量数据 容量计算公式 依赖容量计算公式

容量规范 实施 性能数据 流量数据 容量计算 依赖容量计算

性能数据 某应用线上压测结果 某应用线下压测结果 257 537 Load 4.5 cpu 30%左右

优点 缺点 性能获取方式 正式环境来实施性能压测 线上压测原则 真实流量 真实环境 真实性能数据 危险 不是为了压测应用极限负载 在前面提到一个性能qps ,可能很多人都想到性能环境压测出来的数据, 我们采用的是在线上正式环境来实施性能压测 为什么 线上压测优点是什么 线上压测的缺点是什么 但是有一点必要要明确的是,线上压测不是以压测应用性能为目的的压测! 线上压测原则 不是为了压测应用极限负载 而是获取应用稳定的最高负载

线上压测 应用访问类型 分流模式 通过将多台的机器流量汇聚到一台机器上 非登录读应用 登录读应用 写应用 分流模式 通过将多台的机器流量汇聚到一台机器上 负载均衡 App configserver 日志回放模式 通过读取web server 日志,并将日志中的get 请求重新请求道某个机器上 带cookie的 不带cookie 线上的原理 其实采用一种很简单的方式进行,可能有人也使用过。流量分流 负载均衡 lvs Web server apache nginx App configserver

淘宝架构

线上压测架构

例子一--分流模式

例子二--分流模式

例子三--日志回放模式

容量规划 压测操作可控性 随时可以手动或自动进行 随时可以停止 过程可视 完善的保护机制 数据监控采集 完善的监控阀值设置 异常的保护机制

容量规范 实施 流量数据 性能数据 容量计算 依赖容量计算

容量规划 流量QPS 注意: 通过统计web server日志,获取应用的单机流量QPS和集群QPS。 为什么不直接用最大值? 这个主要是考虑到流量的波动性,平均值使容量水位更加稳定 流量qps 这块就是通过日志离线分析了,目前上这块就比较流行的是hadoop storm 我们使用的是高峰期的平均qps,这个主要是考虑到访问的波动性,如果只是单纯的使用最高值,这个数据往往比较偏高

容量规范 实施 容量计算 性能数据 流量数据 依赖容量计算

容量计算 实现原理:通过当前的应用机器数与性能QPS的乘积获取到应用整个集群的可以承受的最大流量。在与当前集群流量QPS的比较就能计算出需要的机器数量 计算公式: 系统水位 =流量qps/性能qps 理论机器数 = 集群流量qps/性能qps 安全机器数=理论机器数 /安全水位

双机房部署->>安全水位为40% 容量计算 例子: 性能QPS 100 机器数量 20台 集群稳定负载能力 = 100*20=2000 双机房部署->>安全水位为40% 活动场景一 日常场景二 预计双十一流量 = 20000 水位= 1000% 理论机器数= 200台 安全机器数量=200/安全水位=200/40%=500台 实际流量= 2000 水位= 100% 理论机器数= 20台 安全机器数量=20/安全水位=20/40%=50台 为了双十一安全 机器数需要加到500台才行 应用已经在危险的边缘需要马上加30台

容量规划

容量规范 实施 依赖容量计算 性能数据 流量数据 容量计算

依赖容量 大家都知道 淘宝是比较喜欢做活动的,那么也都是有业务目标,淘宝的业务目标都是和钱相关,比如:100亿 之类的。 再根据以前的平均下单金额,就可以估算出大致的下单量,最后就可以知道下单接口的调用量

依赖容量 但是实际上 我们的系统是相互关联的,当然 这个是我简单的画了一个,实际上它是一个网状的结构。业务目标最终后转换到一个比较抽象、单一。 如何将这个目标最终转换到各个核心的应用中去? 这就需要知道应用之间的调用关系

依赖容量

依赖容量 关系 直接依赖、间接依赖 依赖之间的调用量 依赖之间的强弱 如果要将关系进行划分的话,分为: 我依赖谁、谁依赖我 依赖之间的调用量 如何获取这些数据,这里是有两套系统来支撑,

依赖容量 调用轨迹 Eagleeye 记录应用程序完成一次调用需要走过的所有依赖应用的信息

依赖容量 数据统计

依赖容量 从这里是不是 就可以发现 系统之间的调用比例值,有了系统的调用比例,那就可以很容易的做系统容量的推算, 不管是从上往下推算,还是从下往上推算。 看到这里大家可能会有一个疑问,看上去 这个只是决绝了应用自身的演算,如果是另外一个前端系统,那么怎么来搞他们之间的数据关系呢?

依赖容量 refer * 转化率 这个是一个很普通的web server 的日志,大家应该都注意到 日志中的refer。那是不是 就可以通过refer 将所有的应用 就可以联系起来 。当然refer 实际效果 会和转化率相关,这个转化率 就需要根据实际做一些调整

createOrderForTaobao detail 107 台实体机 tf_buy 303 cart 699 tf_tm 218 hesper 110 hesper 167 shopsystem 435 tradeplatform 740 itemcenter 692 shopcenter 91 designcenter 135 最终执行路径下的容量情况

限流降级 限流: 降级: 超过自身容量范围之外的流量暂时拒绝访问 在自身容量不足的情况下 将某些非关键路径上的请求调用暂时关闭,并将这些容量留给更加重要的系统 将自身执行路径上某些不影响业务的调用暂时关闭增加自身容量 前面说的都是容量规划 它为我们做的是未雨绸缪事情,但是流量往往是突变的,如何保障在容量规划之外的稳定。或者流量远远超过容量范围之内,那就需要靠限流降级

限流降级 作用范围 Web Server Servlet 容器 介绍限流 首先要简单说明下 淘宝所有应用的结构 是 在最前面是 lvs 负载均衡,由它将流量分配到各个机器的web server 上,然后又web server反向代理 到 直接机器上的servlet 容器上。 在限流上 也就分为了两层,一层在web server 上 对应的系统是TMD,一层是在Servlet 容器里面也就是 应用的自身防御 那就是Switch Stable。 这两套功能上来看 非常的相似,但是在做用上是相互补充的,为什么这么说呢?

限流降级 职责分工 TMD Stable Switch 优点: 优点: 缺点: 缺点: 互补 针对集群流量防御,面向集群的流量暴涨。 可以根据集群统计分析数据,并作出对应的决策。 缺点: 需要有一个数据分析过程,无法做到瞬间响应。只能作用于Http 请求 Stable Switch 针对机器单体的流量防御 优点: 在流量瞬间暴涨情况下,立即作出限流反应。同时也可以服务于服务应用 缺点: 只是作用于自身,盲目的排除一切多余流量 Tmd 防止攻击 Stable switch 互补

淘宝瞬间流量

TMD的原理 TMD 需要有一个感知的过程,TMD server 就想是一个雷达,它需要一点时间来监测到是否有危险到来。但是问题往往就出现在那个时间点的1s钟。 它无法在瞬间就能做出响应。

Stable Switch的原理 那就需要一个应用自身 能够自动反应的利器,进行近身肉搏。

稳定 关系 控制 容量

Thank You