杭州笨马网络技术有限公司(PerfMa)致力于打造一站式IT系统稳定性保障解决方案,凭借领先的技术实力和丰富的行业经验,专注于性能评测与调优、生产稳定性监控、故障根因定位与解决,为企业提供一系列技术产品与专家服务;帮助企业提升研发效能、节省资源成本,在业务快速发展的同时保障生产稳定性,更聚焦于业务创新。
公司主要方案涵盖一体化智能压测体系建设、智能化根因分析、生产全链路压测、业务稳定性监控。一体化智能压测环节能够充分暴露系统隐患,智能化根因分析环节则实现了对问题源头的快速定位,并能给出调优建议,生产全链路压测技术为生产环境提供准确容量、稳定性评估,业务稳定性监控打开业务性能“黑盒”,保障线上业务连续性、稳定性。产品+服务的完美结合让分布式系统的脆弱点无处遁形,让企业分布式架构下的稳定性保障不再是难题。
公司创始团队和核心团队均来自全球领先的科技公司,在互联网、金融科技等领域的分布式架构改造、生产全链路压测、性能容量评估上具备丰富的解决方案及实战经验。具备阿里巴巴、蚂蚁金服、太平洋保险等企业数以万计的疑难案例排查经验。
1.项目概况
PerfMa一体化IT系统稳定性解决方案涵盖一体化智能压测体系建设平台、智能化根因分析平台、业务稳定性监控平台,是一个贯穿IT系统全生命周期的一体化解决方案。
2.项目背景及目标
PerfMa一体化IT系统稳定性解决方案致力于帮助企业提质、增效,从一键智能体检、性能基线跟踪、异常现场捕获、问题精准定位、统一规范、无人值守、高效协同、智能分析8个方面,为企业提供全方位的服务。
3.项目整体架构
一体化智能压测体系建设为方案结合了互联网全链路压测方案及传统集中式压测方案,在测试计划制定、测试准备、测试执行、结果分析以及性能基线管理全流程上建立了完整的性能测试体系,同时结合深度性能监控与调优技术。在迭代上线前充分暴露性能问题,避免造成生产损失,同时建立全面的性能基线追踪与度量体系。
针对生产全链路压测提供多地域高并发模拟、测试请求流量染色、数据监控日志隔离、性能容量持续规划、生产变更灰度演练、重大活动容量保障。生产全链路压测技术实现了生产高仿真度压测,在生产环境容量评估、稳定性保障中发挥了举足轻重的作用。
智能化根因分析专注于应用实时性能诊断,为企业级用户打造基于问题驱动的实时性能分析产品,通过无入侵方式在极低的性能开销下帮助客户精准发现问题、定位问题、解决问题、让每个性能问题都无处遁形,能够简单高效地发现CPU突增、内存泄漏、线程使用不规范、异常GC等性能问题,定位性能瓶颈
业务稳定性监控实现基于以业务为核心的监控视角,形成自上而下的监控体系,通过业务属性可视化定义,将复杂的代码语言转换为业务语言,从业务视角提供业务访问热度排名、关键业务拓扑、业务错误等可视化视图,打开业务系统“黑匣子”,加强以业务为视角的性能管理,完善代码质量考核标准,结合现有监控系统构建集中式运行监控和故障快速定位系统,对现有业务实现性能管理和根因定位,通过系统联动,可以及时、准确、全面的反映与掌握业务系统的运行状态,在故障处理中快速进行问题定位。
4.方案先进性
4.1全流程一体化高效协同
从测试需求到测试目标转换,从场景设计、分布式压测调度执行、性能瓶颈分析定位,到测试报告产出,实现全流程平台一体化高效协同完成。
4.2无人值守的分布式压测
实现测试场景一次流程编排,多次无人值守执行,同时可灵活对接任意DevOps平台完成快速迭代后的性能回归工作。
4.3多地域高仿真流量模拟
通过多地域模拟真实业务场景,向生产系统施加压力,测试不同业务高峰情况下真实的用户体验。
4.4端到端流量染色与数据隔离
从用户端、防火墙、网关、后端应用服务、中间件到数据库实现端到端测试流量染色,并对染色流量实行全链路数据、日志等安全隔离,避免对真实数据污染。
4.5全链路压测风险熔断
实时监测生产系统在大规模压测过程中对真实用户的影响,在异常情况下触发流量停止输出和流量限制输入等多重风险熔断机制。
4.6任意服务便捷Mock
轻松实现调用链路上任意服务或接口Mock能力,一方面可避免染色测试流量流入真实服务,一方面可模拟出难以协调部署的外部或三方依赖系统。
4.7端到端性能监控与追踪
压测过程端到端立体化监控,从用户体验到全链路调用耗时追踪,再深度下钻到代码行级别性能损耗分析,轻松定位性能问题源。
4.8全链路性能瓶颈智能识别
基于大数据分析复杂服务调用关系网的整体性能,并结合压测流量决策引擎智能调节压力,自动探测业务系统的最优和最大处理能力。
4.8多版本性能基线持续跟踪
实现多版本全链路性能差异对比,自动识别版本变更带来的性能风险,为关键业务建立可持续性能基线。
4.10一体化诊断工具箱
不放过任何一个CPU突增点,从进程到线程到代码,精准定位。实时了解线程全貌,自动发现线程泄露等性能隐患。按需实时采集运行时内存数据,助力定位内存泄露,GC调优。智能跟踪长耗时方法等。
4.11业务视角的性能管理
依据获取的代码传参信息,进行业务语义配置。实现从业务视角进行性能管理及分析,包括业务热点排行、关键业务概览、关键业务拓扑等。
4.12业务级错误规则管理
业务级报错不通过请求返回状态码判断,通过获取业务代码中的响应参数,进行对应规则配置,符合该自定义规则的调用则视为一次成功的调用,否则为失败,完善业务错误视角的性能管理。
4.13开放API助力智能运维
API深度契合企业已有的DevOps,业务监控,工单,性能测试等平台,补足系统性能闭环,问题现场捕获,智能化问题定位,提供深度业务异常耗时分析能力,提升测试专注力。
5.典型案例
5.1某保险公司一体化智能压测体系构建
5.1.1项目背景和分析
某保险公司是国内知名保险企业,随着集团、子险种公司业务增长,产品规模和业务复杂度增长迅猛,产品上线后,周期性暴露不少质量缺陷,尤其是性能的问题尤为突出:
●开发人员定位问题方式通过日志排查,无方向且效率低
●公司业务快速增长,原有的人工+工具的方式效率低下,已经无法覆盖日益增加的需求
●盲目扩张外包测试团队,导致了成本增加、管理复杂等问题
5.1.2 PerfMa的方案和实施
一体化智能压测体系建设解决方案
●通过建立全流程高效协同的自动化性能测试体系,结合深度性能监控与调优技术,在迭代上线前充分暴露性能问题,避免造成生产损失。同时建立全面的性能基线追踪与度量体系。
●提供资深测试专家咨询、实施服务,协助集团、子险种公司将现有LR脚本转换为JMeter/Gatling脚本,实现多元化脚本管理及执行,为高并发场景提供脚本基础。
5.1.3合作效果和客户价值
●每日压测场次提升5倍,达到500+场
●实现核心系统每周待发布版本全量回归,支撑全年新项目400多个
●累计压测脚本5800+,测试场景700+,压测场次73000+
●压力机从150台减少至30台,减少80%压力机成本投入
●性能缺陷检出量655+,近两年内生产无重大性能故障
5.2某银行生产全链路压测解决方案
5.2.1项目背景和分析
某银行已建立线下压测为基础,线上压测为核心的性能测试保障体系,有效保障单系统代码层面的性能质量。但随着架构升级,应用实现容器化部署,应用调用链路日趋复杂,同时用户量增加带来用户行为模型多样化,现有压测模式无法模拟完全真实业务场景,不能捕捉复杂业务链路下的性能瓶颈。由此需要借助全链路压测技术,达到性能测试高度仿真,识别场景链路瓶颈并屏蔽性能风险,提高用户体验,实现性能测试“完整化、自动化、精细化”。
5.2.2 PerfMa的方案和实施
生产全链路压测解决方案
●利用生产的软硬件资源,模拟真实的业务场景,得到仿真度极高的容量评估结果。同时借助流量打标、数据隔离技术,避免了对生产数据的污染。
●提供分布式系统架构改造咨询,帮助企业建立生产全链路压测体系,实现生产容量持续规划,为重大活动及突发性事件提供容量评估、风险隐患识别、高可用保障服务。
5.2.3合作效果和客户价值
●提前进行活动预演,保障活动顺利进行
●提升生产压测数据安全性
●构建了全链路性能压测体系,制定了研发过程中的性能测试评估体系和评估标准