谈谈性能测试

有时候,不是因为你没有能力,也不是因为你缺少勇气,只是因为你付出的努力还太少,所以,成功便不会走向你。而你所需要做的,就是坚定你的梦想,你的目标,你的未来,然后以不达目的誓不罢休的那股劲,去付出你的努力,成功就会慢慢向你靠近。

导读:本篇文章讲解 谈谈性能测试,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

IT业界中,常听到高性能、高并发、高可用,这“三高”,那么性能的高低如何去评定呢?

一、性能测试的引入

你需要写一只能飞的鸟,结果这只鸟是鸟头做螺旋桨飞起来的:
在这里插入图片描述
你需要写个能跑的牛,结果这只牛是用奶当脚来跑的:
在这里插入图片描述
你需要写个接水管,结果水流是这么流的:
在这里插入图片描述
以上三个例子,都实现了功能性需求,即能用能跑。但鸟飞久了,水流变大了,就像一个系统持续运行和用户并发量增大,其问题也就凸显出来了。某线上的交易功能平时各方面都很棒,却一到节假日高峰期就直接系统瘫痪了,这就需要上线之前,首先做好对应的性能测试。

二、如何做性能测试

性能测试的常见指标:

  • QPS
    每秒查询率,Queries Per Second,是一台服务器每秒能够响应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。QPS = req/sec = 请求数/秒。它代表的是服务器的机器的性能最大吞吐能力。
  • TPS
    每秒处理的事务数,Transactions Per Second。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。

    举个栗子:
    一个TPS即客户端请求服务端、服务端内部处理、服务端返回客户端。如访问一个页面会请求服务器 3 次,包括一次 html,一次 css,一次 js,那么访问这一个页面就会产生一个“T”,产生三个“Q”。

  • PV
    页面浏览量,page view。与之相关的RV即repeat visitors,重复访客数量。
  • UV
    独立访客访问数,unique visitor。
  • 并发数
    指系统同时能处理的请求数量,反映系统的负载能力。

三、如何提升程序性能

以下列出提升程序性能较为经典的几点,仅供参考:

  • 慢 SQL的优化:
    一般程序如果响应时间较长,可以首先看一下慢 SQL。分析是否需要增加索引,进行 SQL 优化。
#查询语句
#根据 process_kyes 数量查询慢 SQL
select query_time, query, digest
from information_schema.cluster_slow_query
where is_internal = false  
  AND time >= '2022-06-16 00:28:00'
  AND time < '2022-06-18 00:28:00'
order by Process_keys desc
limit 5;

  • 缓存:
    针对查询,性能提升最显著的就是引入缓存,但这样同时也会使架构变得复杂。
  • 硬件升级:
    若程序优化的空间比较小,则考虑升级一下硬件资源,比如服务器配置翻倍,数据库配置翻倍。

四、性能测试常用工具Jmeter

Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能。Jmeter的经典详细教程,移步这里

在这里插入图片描述

附:Jmeter中聚合报告的各项参数详解

参数 详解
Label 每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值
Samples 表示一共发出了多少个请求。如模拟10个用户,每个用户迭代10次,那么这里显示100
Average 默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间
Median 中位数,即 50% 用户的响应时间
90% Line ~ 99% Line 90% ~99%用户的响应时间
Min 最小响应时间
Maximum 最大响应时间
Error% 错误率,即错误的请求的数量/请求的总数
Throughput 吞吐量——默认情况下表示每秒完成的请求数(Request per Second)
Received KB/src 每秒从服务器端接收到的数据量
Sent KB/src 每秒从客户端发送的请求的数量

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/146203.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!