linux上用Jmter进行压测

         在上一篇中安装好了Jmeter环境,在这一篇中将主要分享如何使用jmeter在linux中进行单机压测。

1.项目部署

        在这里我们先简单部署一下测试环境,所用到的项目环境是个jar包,先在linux上home目录下新建app目录,然后通过rz命令将项目jar包上传到该目录下,然后执行命令启动项目:

nohup java -jar pinter.jar &

需要注意的点:

        尽量选linux上不常用的目录来存储项目,减少一些不必要的麻烦。

        因为用的是阿里云的服务器,项目所用到的端口一定要在安全组中开放。

2.Jmeter压测

2.1.编写脚本

        因为linux上不能编写脚本,所以进行压测的脚本需要先在本地开发调试完成,在配置好了之后上传到linux中使用,这里准备了一个小脚本,10个线程,执行3分钟,如下所示。

2.2.上传脚本

        用mkdir命令在home目录下新建scripts目录,进入scripts,使用rz命令将待压测脚本上传到当前目录下。

2.3.修改响应时间间隔

        压测的时间jmeter默认响应(打印结果)输出日志为30秒一次,可以在jmeter的bin目录下修改jmeter.properties文件中下面的值。

        

2.4.进行压测

        执行命令启动脚本:

jmeter -n -t 12_linux测试脚本.jmx -l test-10.jtl

 -n: 命令行模式 no-gui;

-t:jmx脚本路径;

-l:jtl结果文件名称,默认存放在当前路径;

         请求数据总共分2种,一种是带“+”号的为当前新增数据,带“=”号的为截止目前为止的汇总数据,请求执行效果和对应字段解释如下所示。

3.查看报告

3.1.查看聚合报告

        jmeter在linux中生成的压测报告无法在linux上直接查看,可以将生成的jtl文件通过sz命令下载到本地电脑,然后在jmeter图像界面中导入到当前脚本聚合报告中查看,可以看到tps和我们在linux上看到的基本一致,如下图所示。

3.2.生成报告

        在linux中生成的压测数据,不能直接以报表的形式展示,但是可以通过自带的命令生成美观的报告,可以将生成的报告下载到本地电脑上进行查看。

Html的报表生成步骤如下:

1、进入jmeter的bin目录下,修改reportgenerator.properties;

2、修改jmeter.reportgenerator.overall_granularity=1000(报表中数据展示间隔1秒) ;

3、创建一个存放数据报表的文件夹(我这里是在/home/scripts目录下新建了一个report目录);

4,执行命令:jmeter -g test-10.jtl -o ./report/  

        上述命令执行成功后,会将报表数据生成到report目录下,但是无法在linux中打开,将index.html文件拿到本地也无法正常查看,需要整个report目录下数据做支撑,因为不是压缩包无法直接通过sz下载,所以需要先执行压缩命令将文件进行压缩,如下所示。

#如果没有安装zip,需要先安装
yum install -y zip

zip -r report.zip report

        下载压缩文件:

sz report.zip

        在本地电脑上解压,然后打开index.html文件就可以看到很多维度的报表数据,丰富且精美,如下图所示。

4.生成报告失败原因

要想文件生成成功需要注意以下几点:

        生成报告的.jtl文件格式必须是csv,如果发现格式不对,可以在bin目录下的jmeter.properties文件中修改:

jmeter.save.saveservice.output_format=csv

        生成报告的report目录必须是空的,否则会报错,如下所示。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/624053.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Processor System Reset IP核配置详解

本文描述了如何使用Xilinx的Vivado Design Suite环境中的工具来定制和生成 Processor System Reset IP 核。Vivado Design Suite是一个强大的FPGA设计和开发环境,它允许用户定制和配置各种IP核以适应他们的特定设计需求。 以下是针对如何定制IP核的步骤的简要概述&…

c#教程——索引器

前言: 索引器(Indexer)可以像操作数组一样来访问对象的元素。它允许你使用索引来访问对象中的元素,就像使用数组索引一样。在C#中,索引器的定义方式类似于属性,但具有类似数组的访问方式。 索引器&#x…

山东齐鲁文化名人颜廷利:朱郭有文才,曲高‘菏’寡星光路

山东齐鲁文化名人颜廷利教授表示,朱郭(谐音‘祖国’)有文才,《曲高‘菏’寡》星光路… 山东菏泽歌手朱之文在2011年凭借一首《滚滚长江东逝水》一夜成名, 十多年之后的今天,菏泽市网络红人郭有才靠一首《诺…

EXECL小技巧

一、批量给某列添加单引号或者双引号 如下:D2列为需要添加引号的列,效果如下图 1.双引号 """"&D2&"""" 2.双引号后增加逗号 """"&D2&""""&&quo…

React脚手架,配置环境变量(生产模式,开发模式)

项目搭建方式:react脚手架(create-react-app) 1. 下载依赖: npm install dotenv npm install dotenv-expandnpm install dotenv-cli -S 2.配置环境变量: 项目根部录下创建文件.env .env.pro .env.dev 配置package.json - scripts…

Golang | Leetcode Golang题解之第85题最大矩形

题目: 题解: func maximalRectangle(matrix [][]byte) (ans int) {if len(matrix) 0 {return}m, n : len(matrix), len(matrix[0])left : make([][]int, m)for i, row : range matrix {left[i] make([]int, n)for j, v : range row {if v 0 {continu…

Chromium 调试指南2024 Windows11篇-断点调试入门(九)

1. 断点调试入门:认识调试界面 断点调试是开发者在解决程序问题时常用的一种调试方法,通过在代码中设置断点,可以暂停程序的执行并查看程序内部状态,帮助定位和解决问题。本文将介绍断点调试的基本界面和功能,帮助开发…

算法课程笔记——路径相关树形DP

算法课程笔记——路径相关树形DP #include<bits/stdc.h>usingnamespacestd; usingLL longlong; constintN 2005; vector<int>e[N],t; structasdf{vector<int> vec; LL val; }; vector<asdf>w[N]; LL dp[N]; intn,m,k,dep[N]{1},f[N]; voiddfs(in…

【ubuntu20.04运行python文件时,报错No module named ‘rospkg’】

**问题原因&#xff1a;**一般来说&#xff0c;并不是真的缺少rospkg&#xff0c;而是系统中存在多个python版本导致的混乱 检查python版本 Ubuntu20.04 —— pyhon3.8 sudo apt-get install python3.8最新版本&#xff0c;如下图所示 查看python3.8的位置 whereis python…

【Redis】Redis 主从集群(一)

为了避免 Redis 的单点故障问题&#xff0c;可以搭建一个 Redis 集群&#xff0c;将数据备份到集群中的其它节点上。若一个 Redis 节点宕机&#xff0c;则由集群中的其它节点顶上 1.主从集群搭建 Redis 的主从集群是一个“一主多从”的读写分离集群。集群中的 Master 节点负责…

OBS插件--源录制

源录制 将应用这个滤镜的源录制成视频保存下来&#xff0c;可以选择音轨&#xff0c;也可以针对应用此滤镜的源单独的推流等。 如果在直播或录制视频的过程中场景里面布置了多个源&#xff0c;而只想保存其中一个源的视频或音频这个插件非常使用。 下面截图演示下操作步骤&a…

03-数据结构(一)

链接&#xff1a;C# 数据结构_哔哩哔哩_bilibili https://www.bilibili.com/video/BV1a541147Nk/?spm_id_from333.337.search-card.all.click&vd_source6eb7d966aa03ff5cb02b63725f651e68 链接&#xff1a;使用 C#.Net 学习掌握数据结构 (更新中)_哔哩哔哩_bilibili 一…

企业安全必备利器:专业级加密软件介绍

随着信息技术的迅猛发展&#xff0c;数据安全问题日益凸显&#xff0c;专业级加密软件应运而生&#xff0c;成为保护数据安全的重要工具。本文将对专业级加密软件进行概述&#xff0c;分析其特点、应用场景及分享。 一、专业级加密软件概述 专业级加密软件是指那些采用高级加密…

Spring Boot集成Druid快速入门Demo

1.什么是Druid&#xff1f; Druid连接池是阿里巴巴开源的数据库连接池项目。Druid连接池为监控而生&#xff0c;内置强大的监控功能&#xff0c;监控特性不影响性能。功能强大&#xff0c;能防SQL注入&#xff0c;内置Loging能诊断Hack应用行为。 2.mysql环境搭建 第一个mysql数…

Java线程池:当核心线程数为 0 时,任务来了的执行流程

先说结论&#xff1a;创建一个临时线程直接执行 ThreadPoolExecutor.excute() public void execute(Runnable command) {if (command null)throw new NullPointerException();int c ctl.get();if (workerCountOf(c) < corePoolSize) {if (addWorker(command, true)) retu…

石墨烯材料商汉烯科技授权世强硬创,代理产品具备高导热/导电特点

近日&#xff0c;武汉汉烯科技有限公司&#xff08;下称“汉烯科技”&#xff0c;英文&#xff1a;HANXI TECH&#xff09;与世强先进&#xff08;深圳&#xff09;科技股份有限公司&#xff08;下称“世强先进”&#xff09;达成授权代理合作&#xff0c;面向锂电新能源、电子…

Node.js初步学习

1.什么是Node.js Node.js是一个跨平台Javascript运行环境&#xff0c;使开发者可以搭建服务器端的Javascript应用程序。 编写后端程序&#xff0c;提供网页资源浏览功能等等&#xff1b; 前端工程化&#xff1a;为后续学习vue和react等框架做铺垫&#xff1b;前端工程化是指…

海思Hi3065H 200MHz 高性能 RISCV32 A² MCU

这是一款海思自研的RISCV32内核的高性能实时控制专用MCU&#xff0c; 具有高性能、高集成度、高可靠性、易开发的特点&#xff0c;同时还有嵌入式AI能力。 CPU • RISC-V200MHzFPU 存储 • Up to 152KB Code Flash • 8KB Data Flash • 16KB SRAM 个人认为这是MCU梯队非常…

精英都是时间控,职场精英的完美一天!

如何超高效使用24小时 每个人的一天都只有24小时&#xff0c;使用时间的方法将决定整个人生。时间管理术并不提倡把自己忙死榨干&#xff0c;而是通过在合适的时间做合适的事情&#xff0c;把大脑机能发挥到极致&#xff0c;从而提高效率&#xff0c;节省下更多时间用于生活与…

iOS xib知识总结

一、bug总结 1.could not insert new outlet connection 解决办法&#xff1a;操作步骤就是选中出问题的.m和.h文件&#xff0c;点删除键&#xff0c;然后选“Remove Reference”&#xff0c;这样就不会真正删除文件。接着选“File -> Add Files to …”菜单&#xff0c;在…