Jmeter学习04——压测简析

这篇具有很好参考价值的文章主要介绍了Jmeter学习04——压测简析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.压测报告简析(总请求数、90%响应时间、吞吐量、报错)

(1)jmeter的压测报告(聚合报告)我们通常会关注指定时长我们的接口总请求数是否在正常的范围内(例如:100的并发持续30秒,总请求数300不到,可能原因是因为接口响应时间过长)

(2)响应时间我们通常是关注90%的响应时间,根据90%的响应时间来判断是否达到执行的性能指标(标准的响应时间指标不会超过1000ms,根据用户体验角度来看响应时间在2000ms左右为良好,可以接受的范围)

(3)吞吐量=总请求数量/请求时间,请求数正常的情况下,吞吐量越高说明性能越好

(4)外网压测在并发场景下,可能出现部分报错,大多为连接重置或连接超时、本地端口号被占用等情况导致报错,除此之外可能还有一些接口业务逻辑层面的报错,这些则是需要开发修复或者优化的问题,我们需要去分析报错的类型和报错的原因

         内网压测的并发场景下,因为跳过了网络层的介入,报错会非常少,基本上都是都是接口逻辑层面的报错内容,需要特别注意

2.本地资源占用(CPU、内存、网络带宽)

(1)在压测执行的过程中我们需要关注到施压的机器终端自己的硬件资源状况,例如本地的CPU和内存,如果两者中有一项一直占用在100%,说明你的机器很可能已经到了瓶颈,压测出来的结果会较差(例如请求数上不去)

         a.Windows系统打开任务管理器,可查看终端的CPU以及内存等性能的损耗

         b.Linux系统可通过free命令查看内存,top命令查看CPU的资源损耗,speedtest-cli安装插件之后iftop监控网络资源占用

(2)如果本地的压测终端CPU和内存都不高,但是我们的请求数一直上不去(例如:100并发和300并发相同时间内总请求数量相差不大),这时候我们可以检测一下当前网络的上传/下载的带宽是多少

         a.网络带宽的检测可通过第三方软件(腾讯电脑管家、360管家)或者网站在线测速的方式去查询

(3)我们在压测过程中可以找到对应的进程检测到任务管理器的“网络”列的波动数值,再通过网站在线转换的方式转换成Mb流量单位,根据当前网络的带宽计算出当前的速率和总带宽的占比(同一局域网络状态下需要考虑多台设备),如下图:

Jmeter学习04——压测简析

3.服务器资源占用(CPU、内存、网络带宽、最大连接数)

(1)压测开始之前,我们如果不清楚服务器大致能承载的量,尽可能的以最低的基数先看下服务器资源的情况(例如:先并发100或者200,看下服务器各项资源的波动,再决定增加多少)

(2)压测开始之前还需了解服务器的架构部署情况(可能服务A是部署在多台服务器上的,也可能会涉及到服务B,而服务B又部署在另外的服务器上的)监控到每台服务节点

(3)压测开始之前还需根据所有需要监控的服务器记录压测开始的时间(按照业务流程可能有多个运行的场景),运行的时长,以及并发数量,用于后面方便查看服务端的资源损耗和数据统计

(4)压测开始之后建议持续关注服务端(服务器/数据库)的资源损耗,如果达到预警值(80%)建议停止运行脚本,尽量避免服务崩溃

(5)如果提升了并发数性能压测结果不理想,且确定压力机终端本地资源充足,网络带宽足够的情况下,可能需要从服务端的性能损耗分析

         a.查看所有服务器节点和数据库的CPU和内存损耗情况

         b.压力机带宽不够会导致请求数无法突破,同理服务端的带宽不够也会导致请求进不来的情况

         c.数据库和服务器资源损耗,都会有一个最大的连接数设置来拦截并发场景下过多的请求,如果达到瓶颈,可能也会导致压测结果数据上不去

 

4.内网压测和外网压测

4.1 什么是内网和外网压测?

内网压测(局域网):与服务器在相同的局域网范围内做压测。

外网压测(广域网):不在和服务器在相同的网络范围内做压测。(一般压测都是在外网)

4.2 内网压测和外网压测的区别

(1)范围大小的区别

局域网(LAN,又称内网)相对于广域网(WAN又称外网)而言,主要是指在小范围内的计算机互联网络。这个“小范围”可以是一个家庭,一所学校,一家公司,或者是一个政府部门。BT中常常提到的公网、外网,即广域网(WAN);BT中常常提到私网、内网,即局域网(LAN)。

(2)IP地址的区别

广域网上的每一台电脑(或其他网络设备)都有一个或多个广域网IP地址(或者说公网、外网IP地址),广域网IP地址一般要到ISP处交费之后才能申请到,广域网IP地址不能重复。

局域网(LAN)上的每一台电脑(或其设备)都有一个或多个局域网IP地址(或者说私网、内网IP地址),局域网IP地址是局域网内部分配的,不同局域网的IP地址可以重复,不会相互影响。

(3)传输速率的区别

由于较小的地理范围的局限性,局域网(LAN)通常要比广域网(WAN)具有高得多的传输速率。例如,LAN的传输速率为10Mb/s,FDDI的传输速率为100Mb/s,而WAN的主干线速率国内仅为64kbps或2.048Mbps,最终用户的上限速率通常为14.4kbps。

(4)请求方式的区别

外网的用域名+路径的方式去请求;

内网是IP+路径或者IP+端口号+路径的方式请求接口

(5)网络请求的过程不同

外网的HTTP请求接口,可能会经过域名解析服务、路由器、运营商、再到运营商等很多的网络路由节点,再到数据通过相同的路由过程发送到终端,链路长

内网的HTTPi请求接口的过程是跳过网络层的多个解析和路由的节点,再按顺序去请求到应用层,节省了大部分的时间,完整的请求到响应的时长会更加快速文章来源地址https://www.toymoban.com/news/detail-462535.html

到了这里,关于Jmeter学习04——压测简析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • postman导入请求到jmeter进行简单压测,开发同学一学就会

    这个事情也是最近做的,因为线上nginx被我换成了openresty,然后接入层服务也做了较大改动,虽然我们这个app(内部办公类)并发不算高,但好歹还是压测一下,上线时心里也稳一点。 于是用jmeter简单压测下看看,这里记录一下。 这次也就找了几个接口来压:登录接口、登录

    2024年04月25日
    浏览(30)
  • JMeter分布式压测连接Jenkins生成HTML报告时候报错No such file or directory

    JMeter-master机器上没有该文件。从官网下载的JMeter都会有该文件,添加进去即可。

    2024年02月13日
    浏览(32)
  • 压测工具Jmeter学习

    Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器等等。 除了Jmeter外,其它常

    2024年02月10日
    浏览(27)
  • jmeter压测学习-监听器之服务器性能指标监控(PerfMon Metrics Collector)

    1.官网下载插件的jar包 Plugins Manager下载地址:Install :: JMeter-Plugins.org 2. 将下载的jar包复制到 %JMETER_HOME%libext 目录下 3. 启动 JMeter -- Options -- Plugins Manager 。(如果没将jar包放在ext目录下是没有该选项的) 4. Custom Thread Groups 插件 Custom Thread Groups插件包含Stepping Thread Group、Ultimate

    2024年04月15日
    浏览(25)
  • XXXXAPP-压测报告

    XXXXAPP-压测报告 目录 1. 测试目的 2. 测试范围 3. 环境准备阶段 3.1 测试环境信息 3.2 测试数据准备 3.3测试工具准备 4. 性能测试执行阶段 4.1理论场景设计 4.2具体实现设计 5. 性能压测结果收集情况 6. 压测详细记录 通过负载测试评估当前系统在压测环境的服务器端性能情况;

    2023年04月08日
    浏览(19)
  • 基于jmeter完成压测

    ✅作者简介:大家好,我是Cisyam,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Cisyam-Shark的博客 💞当前专栏: 程序日常 ✨特色专栏: MySQL学习 🥭本文内容:基于jmeter完成压测 🖥️个人小站 :个人博客,欢迎大家访问 📚个人知识库: 知识库

    2024年02月06日
    浏览(76)
  • jmeter随记2:压测

    简述 关于压测,jmeter更直观的作用是用来编写压测脚本【请求和压测策略】,然后在linux服务器上执行,也可以在本地执行,压测执行脚本在启动jmeter服务的时候,会打印出执行压测的命令 一、压测步骤 step1: 编写jmeter脚本,以及压测策略 a、若想压的接口很多 且都是相同域

    2024年02月15日
    浏览(24)
  • jmeter压测步骤

    参考:使用Jmeter压测的第一个接口 第一步,在测试计划里添加一个线程组(要压测的接口名称),如图所示,在测试计划里右键--添加--线程--线程组就可以了。 第二步,设置线程组参数,如下图所示。 第三步,添加请求,在线程组上右键--添加--取样器--HTTP请求,具体参数如

    2024年02月15日
    浏览(31)
  • Jmeter压测工具详解

    Apache JMetier是Apache组织开发的基于Java的压力测试工具。一款非常优秀的开源的性能测试工具。 适用的测试领域: 用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。它可以用于测试静态和动态资源,例如静态文件、 Java小服务程序、 CGI脚本

    2024年02月02日
    浏览(29)
  • jmeter性能压测

    jvm指令 jstat -gcutil -h5 -t 1 3s 发压端的tcp这么达到1000TPS jmeter的jvm的设置

    2024年04月10日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包