jmeter使用入门(+influxdb+grafana)

目录

一、jmeter实际模拟一个http请求

1、背景

2、具体步骤

二、jmeter发送wss(websocket)请求

三、jmeter的可视化—— +influxdb+grafana

0、准备

1、安装influxdb

2、jmeter通过Backend Listener连接influxdb

2、安装grafana

3、查看执行效果

四、jmeter安装常用插件

1、安装插件管理器

2、配置udp请求

五、Linux下的非GUI模式压测

六、Jmeter分布式压测

七、常用工具收藏


官网: Apache JMeter - Download Apache JMeter

一、jmeter发送http请求

以后就可以用jmeter来压测接口了,而且是从前端http接口层面的压测。

1、模拟一个前端请求

1.1、背景及诉求

背景很简单就是想用jmeter模拟一个实际业务中用到的http请求,对应功能点如下。

其对应的接口,请求时候所带的cookie、参数、payload等都可以通过开发者工具中看到。

注:网上请求百度的case很多了,没什么可说的。我们贴合实际业务场景,直接去请求saas软件的一个实际业务接口。这种情况需要考虑登录态(cookie)等问题也更贴合实际,为此有必要专门演示一把。

1.2、具体步骤

打开浏览器调试工具,打开jmeter。

(1)利用jmeter的 import from cURL进行导入。

①调试工具中选中目标接口→右键→copy→copy as cURL

 注:其copy下来的其实是如下一串结果。按理来说应该是包括所有的必要信息了才是。

curl 'https://testgateway.qidian.qq.com/v1/interface/inner/cloudcc_303213' \
  -H 'authority: testgateway.qidian.qq.com' \
  -H 'accept: application/json, text/plain, */*' \
  -H 'accept-language: zh-CN,zh;q=0.9' \
  -H 'content-type: application/json' \
  -H 'cookie: login_url=https%3A%2F%2Foaconsole.qidian.qq.com%2Flogin%2F%3Fshow_type%3Dqa%26source%3Dworkbench; d2=Tcxl6Jtcmi8MwUIZvsayrx7yxmoeO0z6CGTBYhD59zvH1JjuFqQBzAzSLoG50Z0W93RXa1giPvYP14sswnxOMGCYLgR0SygSguzlcjr14zu8pEnRkRQ3D3Cna19tOi0ooGy0RZeBvn3mrBjaKGFewVadcAnb2xu6lx18ZBN8Z4YM0l8XeBecL+E1W2NOnNQud44gYmp6nLzJg/nQbq0WGoAZ31YcIF4zkS3XFQ+Ip3OhDsTSJvT78g==; corp_uin=2852199388; aid=3007442117; aid_skey=belsR+0zPsl3noSHqgbQUEcY2xngQtQ+yrunvtMpyDtEhJnCOJ3oVymCaaWPnUvZsJpG42neuoazR48ylhQFwPrerrlH2OoL19oEADpcGL6xGGVXQj1XUvnjlNyjWbovPHqfPXzY+De61sTHYYJTvdl3jVoo2FmIkUc6zriSQ3Q=; login_type=workbench; source=workbench; logout_type=workbench; qd_admin_is_web=yes; qd_aid_encode=bfbf632e80afd3bb63602fe46a812976; qdui_loginaccount=fy@2852199388.qidian; _qddaz=QD.801755194539948; __qidianid=e90872176fae3c53cec8df003802269745d3f01d; XSRF-TOKEN=31215d2f6c088e58e22172ff18efa52a09516396; _bqqcsrf=31215d2f6c088e58e22172ff18efa52a09516396; _bqq_csrf=31215d2f6c088e58e22172ff18efa52a09516396' \
  -H 'origin: https://oaadmin.qidian.qq.com' \
  -H 'referer: https://oaadmin.qidian.qq.com/' \
  -H 'sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="102", "Google Chrome";v="102"' \
  -H 'sec-ch-ua-mobile: ?0' \
  -H 'sec-ch-ua-platform: "macOS"' \
  -H 'sec-fetch-dest: empty' \
  -H 'sec-fetch-mode: cors' \
  -H 'sec-fetch-site: same-site' \
  -H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.61 Safari/537.36' \
  -H 'x-gseq: 1655199907746' \
  -H 'x-requested-with: XMLHttpRequest' \
  -H 'x-xsrf-token: 31215d2f6c088e58e22172ff18efa52a09516396' \
  --data-raw '{"label_data":{"rpt_label_item":[],"bool_is_solved":false,"str_summary":"shuozhuosummery"},"session_head":{"uint32_channel_type":4,"uint64_kfuin":2852199388,"uint64_kfextuin":3007442117,"str_visitid":"894554834464981"},"_bqq_csrf":"31215d2f6c088e58e22172ff18efa52a09516396","_t":"1655199907746"}' \
  --compressed

②利用jmeter的导入工具直接导入cURL

将前面复制的结果直接粘贴到方框中→Create Test Plan

注:这个导入后其实就把大部分信息都导入进去了。例如header里面的大部分信息、协议/域名ip、http请求方式、路径等;另外payload参数其实也被导入进去了。如下:

③添加cookie

浏览器中右键copy as value复制cookie至剪切板→ jmeter中 选中HTTP HeaderManager → 点击右侧下方的“从剪贴板添加”→之后就可以在上面的<名称,值>中看到对应的添加项了。

注:之所以有这个问题是因为下图中确实没有cookie,按理来说上面复制的cURL是包括cookie信息的,但是这里确实没有被解析出来,所以我们需要额外添加一把。 感觉应该是jmeter有bug。

值得注意的是:默认的解析可能是有问题的。例如我这里就被解析成如下形式了。注:再一次感觉jmeter有bug。

其实很简单就是开发者工具里面看到的<key,value>保持一致就好了。

④执行

点击如下run按钮→按照提示保存对应的.jmx文件。

 ⑤查看具体请求的结果

好的,下面我会为您详细讲解 jmeter+influxdb+grafana 的监控实例。 首先,JMeter 是一个用于性能测试的工具,可以进行压力测试、负载测试、功能测试等。它可以模拟多种不同的用户行为,以便评估系统的性能和稳定性。 InfluxDB 是一个高性能的时序数据库,可以存储和查询大量的时间序列数据。它具有高度可扩展性和灵活性,可以轻松地处理海量数据。 Grafana 是一个流行的开源数据可视化工具,可以连接多种数据源并将其可视化。它提供了灵活的图表和仪表板,可以帮助用户更好地理解数据。 下面是 jmeter+influxdb+grafana 监控实例的具体步骤: 1. 安装 InfluxDBGrafana 在官网下载最新版的 InfluxDBGrafana,然后按照官方文档进行安装和配置。 2. 配置 InfluxDB 数据库 在 InfluxDB 中创建一个新的数据库,并为其设置一个名称和一个保存策略。保存策略可以指定数据的保存时间和数据的复制系数。 3. 配置 JMeter 插件 在 JMeter 中安装 InfluxDBGrafana 插件,然后配置插件以连接到 InfluxDB 数据库。 4. 在 JMeter 中添加聚合器 在 JMeter 中添加聚合器,以便收集数据并将其发送到 InfluxDB 数据库中。 5. 创建 Grafana 仪表板 在 Grafana 中创建一个新的仪表板,并添加一个新的数据源。选择 InfluxDB 数据库作为数据源,并输入数据库的详细信息。 6. 创建 Grafana 图表 在 Grafana 中创建一个新的图表,并选择要显示的数据。可以使用不同的图表类型和样式来显示数据。 7. 测试 JMeter 脚本 使用 JMeter 运行测试脚本,并在 Grafana 中查看结果。可以使用 Grafana 的仪表板和图表来分析数据,识别瓶颈和优化性能。 以上就是 jmeter+influxdb+grafana 监控实例的具体步骤。希望可以对您有所帮助。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

焱齿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值