如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
容量规划与授权限流降级游骥微博庄主游骥problems线上机器能承受多大的调用量?系统需要加机器or减机器?如何控制调用和资源访问?Part1线上压测Part2容量规划Part3授权限流降级Part1线上压测•线上压测方式1.模拟请求2.复制请求3.请求引流转发4.修改负载均衡权重Part1线上压测模拟请求模拟调用者调用压测目标机器复制请求线上正常服务机器复制真实请求调用压测目标机器线上正常服务机器调用复制真实请求Part1线上压测请求引流转发线上机器A调用转发调用者调用线上压测机器B转发调用线上机器CPart1线上压测修改负载均衡权重请求线上机器A请求负载均衡控制器线上机器B请求more线上压测机器CPart1线上压测压测方式•压测相关工具优点缺点模拟请求简单应用、对于没什模拟请求缺乏真实性,么流量的系统非常好写的请求需特别考虑用(脏数据)复制请求请求真实,能够放大写请求和响应需特别流量考虑。需一台不提供服务的机器充当压测目标机请求引流转发完全真实的场景,压依赖系统自身的流量、测数据准确服务类应用不太好转发修改负载均衡权重完全真实的场景,压依赖系统自身的流量,测数据准确需要负载均衡控制器开放接口Part1线上压测•压测相关工具1.模拟请求:http_load,webbench,ab,jmeter,Siege等2.复制请求:tcpcopy,btrace,nginxpost_action,自定义agent等3.请求引流转发:apachemod_jkmod_proxy,nginxproxy等4.修改负载均衡权重:F5,LVS,SOAserviceregistration等负载均衡控制器Part1线上压测淘宝压测平台架构压测模型模拟请求复制请求异常情况引流转发负载均衡阀值监控压cpu测线上机器人工压测控制定时自动用load户rt数据采集系统数据性能数据业务数据其他压测报表Part2容量规划容量名词解释单机能力=单台机器压测阀值qps单机负荷=前一天单台机器最大qps集群能力=单机能力*机器数(机器环境一致)集群负荷=前一天集群最大qps水位标准单机房(70%),双机房(40%),三机房(60%)Part2容量规划单个系统容量计算单机水位=单机负荷/单机能力*100%集群水位=集群负荷/集群能力*100%理论机器数=(实际机器数*集群负荷*集群水位)/(集群能力*水位标准)机器增减=理论机器数–实际机器数Part2容量规划链路容量计算输入各系统压测阀值qps输出容量模型各个系统需依赖链路关系数据机器数预估页面urlqps预估依赖链路关系数据通过eagleeye获取(类似谷歌的dapper,twitter的zipkin)Part3授权限流降级授权限流降级场景???我提供的某个接口或者资源我只想被A应用访问我提供的某个接口或者资源我不想被B应用访问防止我的某个接口或者某种资源被过度访问防止我对某个接口或者某种资源的过度访问系统负载太高可以降级掉不重要的应用对我的调用依赖的非关键调用长时间没有响应可以对其进行降级Part3授权限流降级授权调用方AA、B通过调用方B白名单黑名单C拦截调用方CPart3授权限流降级限流系统D调用方AD依赖的接口服客调用方B务户端端限限流流D依赖的资源调用方CPart3授权限流降级降级A调用系统D非关键依赖E降级(响应很慢)降非重要B调用级负载很高B依赖FC调用Part3授权限流降级授权限流降级部署结构图系统A系统D授权限流降结果控制台级客户端操作用户负载很高配配置置配置管理中心THANKYOU