如何在智能告警平台CA触发测试告警
711
2022-12-02
工作中性能测试的完整过程
一、 性能测试发展阶段
1、初级——性能检测能力
知道并发用户数、响应时间、吞吐量;
知道负载测试、压力测试、疲劳强度测试、基准测试;
知道测试需求分析、测试方案制定、测试环境配置、测试数据准备、测试执行及测试结果分析;
使用商业化测试工具LoadRunner、开源的测试工具JMeter,能够识别应用协议录制脚本、简单调试脚本、配置测试策略、装载测试数据、收集测试数据;
分析交易的响应时间、支持的并发用户数、交易的吞吐量、网络的吞吐量、CPU的使用情况、磁盘读写情况;
2、中级——故障定位能力
故障诊断:
技术架构:负载均衡;
硬件:CPU、内存、硬盘;
网络:负载、延迟、传输故障;
软件:SQL语句、中间件配置;
应用:内存泄漏、线程级别、会话级别;
安全:防火墙;
故障分析:Youkit性能分析、Fiddler分析网络、Scribe、Chukwa日志系统
3、高级——性能调优能力
应用服务器调优:包括JVM调优、Server调优、JDBC调优、WEB、JMS、EJB调优;
数据库调优:包括核心参数调优、数据库连接池调优、SQL与索引调优、表及视图的调优;
操作系统调优:包括硬件的配置(CPU、内存、硬盘等)、核心参数、TCP/IP参数、补丁;
系统架构调优是系统层次上的优化,如采用Redis设置系统缓存数据库机制,减少数据库的访问代价。
建议性能优化:可从程序优化、业务处理方式优化、系统层次优化、系统架构优化、网络架构优化、硬件优化这个顺序展开。
二 、性能测试完整项目流程
假设项目一个月,驻场。首先:
1、 所有文档模板甲方会提供,只填就行了。
2、 遇到功能阻碍等问题,联系甲方经理及时开会通知各方
第一周:
1、 开需求评审会,业务提供交易范围,通过业务人员了解每个业务路径,归纳相似业务,进行第一次剔除,再根据交易复杂度(包括流程长度的复杂度、造数复杂度)进行第二次剔除,一般挑流程只要一两步的业务,或者直接压一个接口。
评审挑出的业务。(有些会对每一步操作,选什么参数,都有详细要求)
2、 环境调研,尽量跟生产保持一致
3、 手动做通业务,编写脚本。
4、 编写测试方案,评审
第二周:
1、 检查测试环境,调试脚本,造数;
拿到系统要看配置,其中写配置信息要看是否开启了超线程。如何判断是否开启超线程。
搭建测试环境时,常遇到环境之间请求不通,多是由于防火墙。搭建环境时一定要检查防火墙配置。掌握linux系统防火墙有它就够了。
第三周:
1、 单基准,未达标的调优;
2、 单负载,未达标的调优;
性能测试系列:Oracle数据库awr报告使用与分析;
PostgreSQL执行计划的解析;
Postgresql中执行计划的扫描类型;
各种数据库查看执行计划的方法;
informix登录数据库服务器后,切换到有onstat权限的用户,然后找数据库名,通过dbaccess命令可以查看,这个命令也是informix切换到数据库模式的命令。
可以用onstat -g sql 0查看全部的SQL
对某个sql查看其查询计划
set explain on avoid_execute;
select的sql
set explain off;
上面这三个sql写到xx.sql文件里,然后dbaccess 数据库名 xx.sql就行了。
这样在当前执行的目录下就会产生一个.out文件。命令详解+执行计划解析点我;
3、 混合负载,未达标的调优
4、 稳定性,未达标的调优(工作时间是8小时的,只运行8小时,7x24的,就跑12或者24小时,要根据数据量来)
5、 高可用; 性能测试系列:高可用测试linux常用命令;
第四周:
1、 统计测试结果; 测试监控系列:使用vb批量统计nmon结果;
给甲方看,甲方若有预期指标,就检测测试结果是否满足生产需要;若甲方没给指标,那就看结果他们是否满意。
2、 如果都满意,编写报告
3、性能测试过程总结
互联网企业和传统软件企业的软件产品的后端性能测试,在原理以及基本方法上是基本一致的,区别较大的只是全链路压测。
互联网软件产品的全链路压测,由于需要实现海量并发以及流量隔离等操作,所以目前只有一些大型企业在做,比如饿了么、淘宝、ebay、美团等超级大的网站
发表评论
暂时没有评论,来抢沙发吧~