前几年做了很多性能测试和性能优化,也看了很多国内国外的性能优化方面的资料,现在把血泪中得来的经验教训跟大家聊聊,看看对自己的项目是否有用。
性能优化之前首先进行性能测试:
性能测试的要点:
(1)排除性能测试中的干扰因素。
例如如果对C/S模式服务器进行测试,那么就尽量使用LoadRunner的TCP方式来进行,避免在测试过程这中,客户端进程运算和IO等等。尽量避免周边系统给测试目标带来的干扰。
例如对性能非常敏感的情况下,使用自用交换机搭建网络、或使用直连线等等
这些,都是为了保证能得到稳定且准确有效的性能测试。尤其是对一个产品进行性能优化,可能需要反反复复的进行性能测试,来确认性能优化的效果,如果性能测试结果不稳定,受环境干扰很大,做起来就非常困难了。
(2)良好的监控手段
在性能测试这,应该充分建设好监控设施,例如使用JMX、使用操作系统命令、数据库的监控SQL等等来监控系统性能测试期间的各种数据变化(有和性能曲线对应的图最好)。有了这些数据,分析起来就容易多了。
最麻烦的是,这些监控手段,很有可能会影响到系统的性能,所以应该是能够简单加上监控,也能简单关闭这些监控设施,把有监控情况下的性能图表和没有监控下的图表仔细对比分析。
(3)最大能力测试
在开始调优之前,首先需要明确,系统的性能,大多数情况下 ,受限于硬件、周边系统的能力,例如,一套软件产品安装在客户的环境里,可能会受到客户网络带宽的影响,百兆网、千兆网、双千兆网卡bind差别很大;如果需要调用客户的数据库,客户数据库的类型、客户数据库提供了多大的存取能力,都很大程度限制了系统的性能;如果是自己的产品,那么,CPU的最大能力、网络的最大能力、文件系统最大能力、DB调优的情况,都是系统性能的关键因素,在调优之前,首先应该关注,在现有的周边环境(硬件、软件、网络)下,产品自己理论上能做到的最高效率是多少呢?没有这个数据,后期的调优就没有控制和准确的概念了。
先写这些吧,后面明天再继续写吧。
相关推荐
从提供的文件名"性能测试交流-200907.ppt"来看,这可能是一个关于性能测试的PPT演讲稿,其中可能包含了更具体的测试案例、方法论和实战经验分享。通过深入研究这份材料,可以进一步了解如何设计和执行有效的性能测试...
6. **对性能测试影响的说明**:这部分需要详细描述使用环境可能对测试产生的影响,包括可能的数据变动、业务流程变化、批量处理的调整以及版本更新等,这些因素都可能影响性能测试的结果。 7. **使用时间**:明确...
性能测试是一种检验系统在特定负载条件下的性能表现的测试方式,其目的是验证系统是否能够达到预定的性能目标。性能测试通常包含多种类型的测试,如压力测试、负荷测试、可靠性测试以及稳定性测试等。 - **压力测试...
《Mercury性能测试报告-模板》是一份详细记录软件或系统在执行性能测试时的数据、分析及结论的文档。此报告通常用于评估系统的处理能力、稳定性、响应时间和资源利用率等关键性能指标。以下是对报告中可能包含的重要...
以LoadRunner为例,通过一个具体的案例来说明如何利用该工具进行性能测试及优化: 假设有一个电商网站需要进行性能测试,首先通过LoadRunner创建虚拟用户场景,模拟大量用户同时浏览商品页面、加入购物车、完成支付...
### 性能测试方法论详解 #### 一、性能测试基本概念及流程 **性能测试**是一种评估系统或组件在特定工作负荷下表现的过程,旨在验证系统是否能够满足预定的性能要求。它不仅关注系统的响应时间和吞吐量,还考虑到...
《性能测试进阶指南--LoadRunner 9.1实战》是一本专为IT专业人士准备的深入探讨LoadRunner 9.1性能测试工具的书籍。LoadRunner是HP公司(现已被Micro Focus收购)开发的一款功能强大的负载和性能测试工具,广泛应用...
9. **性能测试报告**:整理和解释测试结果,提供性能优化建议,报告应包含图表、统计数据和问题分析。 10. **性能测试最佳实践**:如持续集成性能测试、自动化测试脚本、监控系统性能等,以实现更高效的性能测试...
"软件性能测试检查表-模板"是为这一目标设计的一个工具,它包含了对软件性能进行全面评估所需考虑的各种因素。下面将详细解释此检查表中的关键知识点。 1. **性能指标**:性能测试检查表通常会列出一系列性能指标,...
数据库性能测试是一个持续的过程,通过对系统在不同条件下的测试,可以不断调整和优化,以确保在实际生产环境中能够满足用户需求和业务增长。报告中的详细分析和建议对于提升整体系统性能至关重要,同时也为未来的...
### 《软件性能测试、分析与调优实践之路-第二版》PPT课件总结 #### 一、软件性能测试的重要性及目标 1. **理解系统性能指标**: - **并发访问量**:评估系统在高并发环境下的承载能力。 - **平均响应时间**:...
"行业分类-设备装置-一种主轴性能测试平台及其测试方法"的主题,旨在探讨一种专门针对主轴性能评估的测试平台和相关测试策略。 首先,主轴性能测试平台是用于模拟实际工况,全面检测主轴各项性能指标的专用系统。它...
Web前端性能优化是提升网页用户体验和确保网站成功的关键因素之一。性能优化涉及多个方面,包括但不限于代码优化、资源加载策略、服务器配置等。本篇内容将深入探讨Web前端性能优化的思路与学习方法,结合WebQQ、QQ...
标准中还包括了性能测试工具的要求,确保测试结果的准确性和一致性。 总的来说,《YD-T 1381-2005 IP网络技术要求-网络性能测量方法》是IP网络管理和维护的重要指南,它提供了衡量和优化网络性能的标准框架,对于...
3. 减少系统等外界因素的干扰:性能测试应该尽量减少系统等外界因素的干扰。 六、性能优化技术 性能优化技术包括: 1. 局部性原理:局部性原理是指一个良好的程序具有良好的局部性,包括时间局部性和空间局部...
因此,性能优化成为了提升用户体验的关键因素之一。性能不佳的应用不仅会导致用户体验下降,还会增加电量消耗、降低设备运行效率,甚至可能导致用户的流失。 ### 性能优化的重要性 1. **改善用户体验**:优化后的...
集成电路热测试方法的环境条件之一是温度从芯片到板级。这指的是测试期间的环境温度和温度梯度,以及它们对集成电路热特性测试的影响。在集成电路热测试中,温度是一个关键因素,因为温度对芯片的性能和可靠性有重要...
本篇文章将深入探讨NATS服务的性能测试,包括使用的工具、测试方法以及如何解读测试报告。 首先,我们要了解的是`iperf3`。iperf3是一款网络性能测试工具,能够测量TCP和UDP的带宽以及延迟性能。它允许用户调整多种...