持续性能提升的最佳实践_第1页
持续性能提升的最佳实践_第2页
持续性能提升的最佳实践_第3页
持续性能提升的最佳实践_第4页
持续性能提升的最佳实践_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

QCon全球软件开发大会離枝鹽升大纲-持续性能提升的难点-生产全链路压测背景和概念-生产全链路压测落地难点-生产全链路云迁移业务连续性案例Info

Info传统性能测试的缺陷硬件配置网络环境数据库配置中间件规模数据规模应用规模流量模型硬件配置网络环境数据库配置中间件规模数据规模应用规模流量模型缺乏真实性不能形成有效反馈不能进入正反馈模型ConInfoQ什么是生产全链路压测什么是生产全链路压测InfoInfo什么是生产全链路压测什么是生产全链路压测InfoInfo压测压测•压力引擎

•性能分析生产环境-数据隔离•流量识别-安全保护•实时监控

全链路•链路治理•多场景混合•流量模型我需要做生产全链路压测吗我需要做生产全链路压测吗InfoInfo我需要做生产全链路压测吗我需要做生产全链路压测吗InfoInfo生产全链路压测历史生产全链路压测历史InfoInfo-2013年诞生:阿里巴巴第一次生产全链路压测实践-2015-2017年:极客公司开始尝试-2018年:第一款企业级生产全链路压测产品诞生-2020年:生产全链路压测开始进入大众市场-分布式系统-研发人数超过50人-系统规模超过100台-有专门性能测试同学-业务快速增长生产全链路压测落地QCon全球软件开发大会InfoQ生产全链路压测架构场景层平台层全链路压测全链路监控故障演练容量评估ETE巡检系统限流&降级系统瓶颈链路监控压测方案管理压测报告压发力起压控测制隔管离控il压测脚本压測总览压测执行应用管理链路概览调用链查询QCon全球软件开发大会域名分析入口分析调度引擎压测试跑静态信息验证影子库表配置架构治理限降流级应用

分析接入资物理机docker层源虚拟机云主机订单转运签收揽收派送售后业务流程配置入口颇限流规则命令配置业务活动配置

服务岀口分析流量控制场景配置系统流程识su

系统流程比对降级策略演练控制中间件识别强弱做标注熔断配置演练报告应用一览应用调用来源应用调用去向应用服务分析消息队列分析数据库分析缓存分析关键路径分析远程调用消息系统缓存数据库数据存储缓存数据库消息系统InfoQ数据隔离数据隔离数据隔离数据隔离正常流量压测流量4Web服务器1远程调用中间件应用1 压测可识别2 压测流量识别之后的传递3 缓存和储存将压测数据存储到影子区域♦消息过滤器•正常Topic•影子Topic♦缓存过滤器•正常区域•影子区域♦搜索过滤器•正常索引•影子索引♦存储过滤器•正常库•影子库QCon全球软件开发大会InfoG数据隔离设计与现实QCon全球软件开发大会InfoQRocketMQ隔离设tQCon全球软件开发大会QCon全球软件开发大会InfoGInfoInfoInfoInfo RocketMQ隔离现实 消息发送-同步发送 -异步发送 •Oneway发送 -单条发送•批量发送•事务消息

消息接收•推模式•拉模式 •无序消费•顺序消费•自动提交 •手动提交•默认线程池•自定义线程池

异常情况•消费失败•重试队列•死信队列•版本兼容隔离设计的其他现实压测中T项目启动.氾围确疋链路梳理]链路调试压测数据准备压测场景配置链路试跑压测执行链路调试提前规避风险数据偏移,脱敏白名单测试环境试跑

压测启动检查

漏数检查

数据隔离挡板生产环境试跑压测终止紧急预案兜底检查QCon全球软件开发大会推广问题降低接入

成本AllIn One的使用体验培养种子

用户争取高层支持 JconInfoQ 常态化问题 成立性能运营小组性能瓶颈优

化check性能瓶颈优

化check性能小组生产准入check生产风

险监控延期风险产品线开发复核问题

瓶颈是否

修复QCon全球软件开发大会常态化压测启压测准备存在风

险产品线开发生产

压测瓶颈优

化任务

列表处理 任务协助解决处理记录任务升级复核瓶颈

修复是否

延期任务 升级架构师/其他

团队协助InfoQ常态化问题•挖掘链路和请求数据-自动的链路梳理发现环境问题•自动发现新增服务、参数变化•自动发现数据库变化QCon全球软件开发大会InfoQInfoInfo配置名称0000002<返回配置名甲<退回业务活动名称-调试业多请求信息清求信息Http://qu2j222j3.281919923m:h333nmemoryj>ool_byte_mejvm_me...jvm^memory_pooLbyte_mejvm_me…jvm.memoryj>ooLbyte_mejvm^me...當Jvm.memorY_pooLbytc_meJvm.me...调试ID:GFERKIS1 响成状态码:200用总时长:168msAccept:*/*、Cache-Control:no-cache.Content-Type:appli...(••userid**:“tommy”,-productldM:w84j33,23,\Mtimew:12332{...调用栈5应用/Agent日志张三输入参数0102052020-01-0812:00:00数据上证ojvm_memory_po_memoryj)q...DmsMallDmsMall配置名称0000002<返回配置名甲<退回业务活动名称-调试业多请求信息清求信息Http://qu2j222j3.281919923m:h333nmemoryj>ool_byte_mejvm_me...jvm^memory_pooLbyte_mejvm_me…jvm.memoryj>ooLbyte_mejvm^me...當Jvm.memorY_pooLbytc_meJvm.me...调试ID:GFERKIS1 响成状态码:200用总时长:168msAccept:*/*、Cache-Control:no-cache.Content-Type:appli...(••userid**:“tommy”,-productldM:w84j33,23,\Mtimew:12332{...调用栈5应用/Agent日志张三输入参数0102052020-01-0812:00:00数据上证ojvm_memory_po_memoryj)q...DmsMallDmsMallDmsMallDmsMallrtemcenterRedis响应信息插件调试日志Rabbit6ac0622f16067307742374922d0001Accept:*/*、Cache-Control:no-cacheContent-(*useridM:"tommy”.*producttd*:w84j33t23wtimeio.shulie.center.base.api.service.Channelserviceio.shulie.center.base.api.service.Channelserviceio.shulie.center.base.api.service.Channelserviceio.shulie.center.base.api.service.Channelserviceio.shulie.center.base.api.service.Channelserviceredis10293•成】I问题分析配置异常:(EA0001)白名单方法没配置、(EA0002)影子库表用户名密码不匹配输入参数MQ2341Mysql10293Mysql10293请求Header Accept:*/*、Cache-Control:no-cacheKContent-Type:appli...▼请求Header Accept:*/*、Cache-Control:no-cachevContent-Type:appli...▼[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bfl0|true|l|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1|true|1|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1.2|true|1|dubbopuglindebugsenderdoorIsclose![2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bfl0|true|l|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1|true|1|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1.2|true|1|dubbopuglindebugsenderdoorIsclose![2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bfl0|true|l|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1|true|1|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1.2|true|1|dubbopuglindebugsenderdoorisclose![2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bfl0|true|l|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1|true|l|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1.2|true|1|dubbopuglindebugsenderdoorisclose![2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bfl0|true|1|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271(X)4d88bf|0.1|true|l|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1.2|true|1|dubbopuglindebugsenderdoorisclose![2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bfl0|true|1|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1|true|l|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271CX)4d88bfl0.1.2|true|1|dubbopuglindebugsenderdoorisclose![2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bfl0|true|1|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1|true|l|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bfl0.1.2|true|1|dubbopuglindebugsenderdoorisclose![2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0|true|1|httppuglindebuginfo;[2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0.1.2|true|1|dubbopuglindebugsenderdoorisclose![2020-12-1713:37:24]INFO(mon.config.DefaultTraceConfig)0102a8c016063019572271004d88bf|0|true|l|httppuglindebuginfo;I机器性能•成】类型Before(进)Before(出)Exception(进)Exception(出)CPU利用率16%16%16%16%•失9CPU负载6.546.546.546.54常态化问题 赋能研发••QConQCon全球软件开发大会InfoQ成为新基础设施系统发布后,与流水线集成,验证生产环境性能基线月度性能验收,3*24小时生产环境压测大促保障中生产环境单接口、单链路压测有性能洁癖的工程师文化大促保障中生产环境全链路、全场景压测大项目重构后,进行生产环境相关链路的压测上云或者云迁移后,进行生产环境全链路压测通过生产环境全链路压测进行多机房的定期容量验证有性能洁癖的工程师文化QCon全球软件开发大会QCon全球软件开发大会云迁移案例2020年底,A公司做出了一项重大决策,要将公司业务从阿里云平台迁移至华为云平台。公司现有业务包含上百个应用以及数十PT的数据都要进行迁移,如何安全高效地完成迁移成了大家最关心的问题InfoQ云迁移案例云迁移案例云迁移案例云迁移案例\ 在生产环境直接利用现有数据进行性能压测,完成后 /' 只对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论