HTTP 2.0 之压测工具 Jmeter
年后,德国总部工业平台要做中国本地化,德国的同事过来给我们展示日志的时候,无意间看到了他们应用日志里的 HTTP/2,下意识到,原来他们都已经提供Http 2.0的服务了。
那么问题来了,除了h2load这样的压测工具,可以模拟http/2的客户端以外,作为压测工具的业界大佬,因为灵活,支持多种协议,可测场景丰富而深受我喜爱的Jmeter,是否支持http 2.0呢?回答是肯定的,因为有人(非Apache官方)已经为写好了插件,亲测可用。
下面列出这个大神的github地址,Readme文档已经很详细的介绍了如何使用该插件。
- Jmeter Http 2 插件代码的Github地址: 请点击这里
如何真的不想点进去,可以看下面的快速安装和使用步骤 :
Quick Start : 快速安装使用
1.下载alpn-boot的jar包
因为Java 8 以及以下版本不支持http 2, 你需要在maven仓库里下载alpn-boot这个jar包,并把它的配置写入到JVM_ARGS配置里。需要注意的是:下载的apln-boot的版本必须跟你的java版本有对应关系。 比如我家里的jvm是1.8.0_144,我需要对应alpn-boot和jvm版本的对照表,下载相应的apln-boot版本8.1.11.v20170118。

2. 修改jmeter.bat或者jmeter.sh文件
比如,我把alpn-booot的文件放在了lib路径下,那么在jmeter.bat文件里添加:
set JVM_ARGS=-Xbootclasspath/p:%JMETER_HOME%/lib/alpn-boot-8.1.11.v20170118.jar
对于其他mac或者linux的用户,其实操作是一样的,在jmeter.sh文件添加:
JVM_ARGS="-Xbootclasspath/p:<path.to.jar>"
3. 安装http 2的插件
- 如果以前没下载过jmeter plugin mamager的同学,需要先下载Plugins Manager JAR
- 把该文件放在lib/ext
- 重启jmeter,你将看到jmeter的插件管理中心在Options路径下
- 打开avaliable plugins这页面,找到HTTP/2 Sampler, 点击安装,等待片刻...

成功添加采样器HTTP 2 Request
成功添加HTTP 2的采样器.png尝试用HTTP 2协议给www.taobao.com发送请求

- 在View Result Tree Http2查看结果。 注意,http 2的结果要在Http 2里查看, 原因有兴趣的朋友可以看看如下:
The View Results Tree Listener isn’t fit for HTTP/2, which can send more than one request at the same time without waiting for a response. Using the regular listener means we won’t be able to see the responses of all asynchronous requests. To solve this problem, you can use the View Result Tree Http2. This specialized listener provides a way to visualize a request that has not received a response yet. These requests will be written in blue, as you can see in the image below. When the response is received, the writing will turn immediately to black, and you will be able to see the response message.

关于Http 2采样器上各个参数的含义和设置问题,还是一定要回头认真看看GitHub上的Readme,人家小哥哥写的很清楚哒。
重要的事情再说一次: GitHub Readme
以上。
本来想试试被Anoyi大神安利的压测工具: Gatling,可惜Gatling好像目前不支持Http 2,但是它用的并行框架AKKA的确很好的解决了Jmeter一个用户一个线程消耗资源的情况,但是貌似Devops更倾向用Gatling, 而专职测试的更喜欢Jmeter, 毕竟Jmeter的历史悠久,支持的协议和功能非常多。总之,很想尝试下Gatling带来的高并发的快感。
至于jmeter如何跟实时序列数据库influxdb传递实时测试数据,并把数据送到 grafana进行数据的展示,准备下周再写了。
作者:科学Jia
链接:https://www.jianshu.com/p/490ab46d8160
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
HTTP 2.0 之压测工具 Jmeter的更多相关文章
- 压测工具 jmeter入门教程及汉化修改
Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件.相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工 ...
- 压测工具-Jmeter
server压力测试首选: Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域. 1 JMet ...
- 1. 堪比JMeter的.Net压测工具 - Crank 入门篇
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- 2. 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- 3. 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识bombardier
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- 4. 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识wrk、wrk2
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- 5. 堪比JMeter的.Net压测工具 - Crank 实战篇 - 接口以及场景压测
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- 6. 堪比JMeter的.Net压测工具 - Crank 实战篇 - 收集诊断跟踪信息与如何分析瓶颈
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- 7. 堪比JMeter的.Net压测工具 - Crank 总结篇 - crank带来了什么
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
随机推荐
- 再次体会wireshark的威力!
今天一位同学给我打电话,说是重启了客户机房里的一台服务器A,重启之后此台服务器不能与B服务器通信了,要命的是A台服务器上有关键数据需要与B服务器进行通信交互.客户大发雷霆,同学的老板也发火一再催促要尽 ...
- Linux通过端口号查看使用进程-结束进程
1. 查看进程(参数带 - 与不带有区别): command [options] 例:ps -a(配合其他options参数以展示进程更多参数) ps -ef | grep 进程名(返回值是该进程的 ...
- scrapy 爬取视频
利用FilesPipeline 下载视频 1.setting.py # 保存log信息的文件名 LOG_LEVEL = "INFO" # LOG_STDOUT = True # L ...
- JPA简介
JPA的学习 JPA是Java Persistence API的简称,中文名Java持久层API.是Java EE5.0平台中Sun为了统一持久层ORM框架而制定的一套标准,注意是一套标准,而不是具体 ...
- 第02组Beta版本演示
组长博客 组名:十一个憨比 本组组员: 学号 姓名 分工 贡献比例 181700413 黄智 写Beta冲刺的四次博客,写评审表,写word,统筹规划 9% 131700309 林闽沪 代码实现,答辩 ...
- java8 LinkedHashMap 原理
LinkedHashMap 原理 基于jdk1.8 HashMap原理:http://www.cnblogs.com/zhaojj/p/7805376.html LinkedHashMap 继承Has ...
- 物联网架构成长之路(45)-容器管理平台Rancher
0.前言 按照上一篇博客,我已经把需要下载的rancher docker 依赖镜像下载上传到Harbor了. 1. 安装 执行如下,实现一键安装 docker run -d --restart=unl ...
- .NET Core 学习笔记
1. System.Composition – Using Import Attributes 截图: 2. System.Composition – Using Reflection 截图: 以后会 ...
- dedecms5.7的获取本文章的TAG
tag调用标签如下: {dede:tag row='10' getall='1' sort='month'} <li><a href='[field:link/]'>[fiel ...
- ASP.NET Core快速入门(第2章:配置管理)--学习笔记
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务9:配置介绍 命令行配置 Json文件配置 从配置文件文本到c#对象实例的 ...

