1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 项目性能优化之性能问题分析和压力测试

项目性能优化之性能问题分析和压力测试

时间:2024-01-06 05:18:08

相关推荐

项目性能优化之性能问题分析和压力测试

项目性能优化之性能问题分析和压力测试

性能问题分析为什么要性能优化影响性能的关键要素性能优化出发点性能压力测试什么是压力测试压力测试的指标常用压测工具

性能问题分析

为什么要性能优化

应用性能是产品用户体验的基石,性能优化的终极目标是优化用户体验。当我们谈及性能,最直观能想到的词是“快”,那到底怎么快的衡量标准是什么呢?

3s定律:页面加载速度超过3s,57%的访客会离开

SEO排名:网页加载速度在Google,百度等搜索引擎的PR评分中也占有一定的比例,会影响到网站的SEO排名

影响性能的关键要素

产品设计:产品逻辑、功能交互、动态效果、页面元素12306购票案例查询按钮的设计基础网络:网络=连接介质+计算终端 连接介质:电缆、双绞线、光纤、载波或通信卫星计算终端:PC、手机、可穿戴设备等基础网络设施、互联网、局域网(LAN)、城域网(MAN)、广域网(WAN) 代码质量&架构 架构不合理研发功底和经验不足没有性能意识 移动端环境硬件及云服务
架构不合理:业务发展超越架构支撑能力而导致系统负荷过载,进而导致出现系统崩溃、响应超时等现象。另外不合理的架构如:单点、无cache、应用混部署、没有考虑分布式、集群化等也都会影响性能研发功底和经验不足:开发的APP、server效率和性能较低、不稳定也是常见的事情没有性能意识:只实现了业务功能不注意代码性能,新功能上线后整体性能下降,或当业务上量后系统出现连锁反应,导致性能问题叠加,直接影响用户体验。多数的性能问题发生在数据库上,由慢SQL、过多查询等原因造成的数据库瓶颈,没有做读写分离、分表分库等

性能优化出发点

后端:RT、TPS、并发数、Throughput、Footprint、Latency TPS和RT的影响因素:数据库读写、RPC、网络IO、逻辑技术复杂度、JVM Web端:首屏时间、白屏时间、可交互时间、完全加载时间等移动端:端到端响应时间、Crash率、内存使用率、FPS等

首屏时间是指从用户打开网页开始到浏览器第一屏渲染完成的时间,是最直接的用户感知体验指标,也是性能领域公认的最重要的核心指标。

首屏时间=DNS时间+建立连接的时间+后端响应时间+网络传输时间+首屏页面渲染时间

FPS是体现页面顺畅程度的一个重要指标

端到端响应时间是衡量一个API性能的关键指标,比纯后端响应时间更全面,它会受到DNS、网络带宽、网络链路、HTTP PayLoad等多个因素的影响

端到端响应时间=DNS解析时间+网络传输时间+后端响应时间

性能压力测试

什么是压力测试

压力测试(Stress testing)是针对特定系统或是组件,为要确认其稳定性而特意进行的严格测试。会让系统在超过正常使用条件下运作,然后再确认其结果。

压力测试的指标

以上主要的四种性能指标【响应时间、并发用户数、吞吐量、资源使用率】它们之间存在一定的相关性,共同反映出性能的不同方面。

在上图中,定义了三条曲线、三个区域、两个点以及三个状态描述

三条曲线: 吞吐量的曲线(紫色)利用率(绿色)响应时间曲线(深蓝色) 三个区域: 轻负载区(Light Load)重负载区(Heavy Load)塌陷区(Buckle Zone) 两个点: 最优并发用户数(The Optimum Number of Concurrent Users)最大并发用户数(The Maximum Number of Concurrent Users) 三个状态描述: 资源饱和(Resource Saturated)吞吐下降(Throughput Falling)用户受影响(End Users Effected)

常用压测工具

Apache Jmeter:可视化的测试工具Apache的ab压力测试Nginter 韩国研发PAS 阿里测试工具MeterSphere:国内持续测试的开源平台

/

/2747.html

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器等等。JMeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证程序返回期望的结果。为了最大限度的灵活性,Jmeter允许使用正则表达式创建断言

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。