文章目录
3 应用性能测试与调优
3.1 软件性能测试
3.1.1 LoadRunner的性能测试过程
性能需求测试设计:针对需求,划定测试范围,测试内容。
计划测试:定义明确的测试计划,制定LoadRunner场景,完成负载测试目标。
创建VU脚本:确定每个VU执行的操作,确定同时多少个VU执行,选择具体的事务度量。
创建测试场景:使用LoadRunner Controller创建场景。场景描述测试会话期间发生的事件
运行测试场景:执行任务来模拟服务器上的用户负载。
测试结果分析:使用LoadRunner的图和报告来分析应用程序的性能。
3.1.2 性能测试GAME(A)模型包含以下五个重要项目
目标:确定本次测试目标,选择测试设计策略
分析:分析性能需求,分析系统架构
度量:场景的定义、事务的定义、虚拟用户的pass/fail的标准
执行:环境、数据、脚本的准备,场景及监控器的运行,生成报告
调整:应用程序的修改,中间件的调优
3.1.3 常见性能测试方法
负载测试
压力测试
基准测试
可靠性测试
并发测试
配置测试
可恢复测试
3.1.4 CPU和内存子系统性能调优概述
性能优化思路:
若cpu利用率不高,说明资源没有充分利用,可以通过工具查看应用程序阻塞在哪里,一般为磁盘,网络或应用程序自己的业务逻辑有休眠或信号等待。
如果cpu利用率高,可以选择更好的硬件,优化硬件的配置参数来适配业务场景,或者通过优化软件来降低cpu占用率
3.2 Linux中性能监控统计的工具
3.2.1 常用性能监测工具-top
通过top工具可以监视进程和系统整体性能
3.2.2 常用性能监测工具-Perf
Perf工具是非常强大的Linux性能分析工具,可以通过该工具获得进程内的调用情况、资源消耗情况并查找分析热点函数
3.2.3 常用性能监测工具-numactl
numactl工具可用于查看当前服务器的NUMA节点配置、状态,可通过该工具将进程绑定到指定cpu core,由指定cpu core来运行对应进程。