The steps of the description: 1.My server has supported HTTP2, and I can get http/2 response header with firefox browser, chrome, curl and so on, but jmeter failed; 2.Select protocol: https 3.send http request to server who has supported http2 4.we get: Response headers: HTTP/1.1 200 OK 5.In fact, I want to get Response headers: HTTP/2 200 OK
*** Bug 59955 has been marked as a duplicate of this bug. ***
JMeter relies on external code to implement protocols such as HTTP. It will be possible to add HTTP2 only once there is a suitable implementation.
See https://github.com/http2/http2-spec/wiki/Implementations Http2 adoption will increase this year, if we don't do anything to prepare it, it could hamper JMeter's future
For what it is worth to you HttpCore (the library JMeter already makes use of albeit through HttpClient 4.x) now has a fairly feature complete HTTP/2 support. I would be more than willing to help first users of the new transport. Oleg
Great news. What are the prerequisites to use http/2 with httpcore? Are there any examples available on how to use it?
HttpCore has no dependencies besides JRE 1.7 Examples can be found here HTTP/1.1: https://github.com/apache/httpcore/tree/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples HTTP/2: https://github.com/apache/httpcore/tree/trunk/httpcore5-h2/src/examples/org/apache/hc/core5/http/examples Oleg
Thanks Oleg for your help. Besides the sampling, an important feature to consider is the recording of such traffic. Do you have some guidelines on how to umplement this ? Thanks
This very much depends on what kind of information you would like to record. If what you want to capture are HTTP/2 frames HttpCore exposes a listener interface one can use to intercept every HTTP/2 frames transferred by a HTTP/2 connection. See https://github.com/apache/httpcore/blob/trunk/httpcore5-h2/src/examples/org/apache/hc/core5/http/examples/Http2MultiStreamExecutionExample.java#L80 Oleg
Do we have any schedule of the new feature? I am looking forward the beta version for this feature and I will join the test when it ready.
Hi, I am interested in working on this issue since I have some prior experience of HTTP/2 protocol. Is there anyone already working on this?
Hello, Thanks for proposing your services. No work is started yet , we were discussing possible implementations tobade code on. Mainly: - netty - hc5 which is still in alpha - jetty If you're already comfortable with http2 , your opinions are quite welcome and we'll be happy to help and merge your code. Regards
Apache JMeter is a load testing tools aimed at testing different protocols as per: https://jmeter.apache.org HTTP/2 is being actively deployed and we need to support it. The project will have to handle the following items: Trial the java libraries that provide HTTP/2 support: Jetty client library Netty client library HC5 client library Any other possible option The selection criterias will have to take into account: Possibility to record protocol Performance Maintainbility Community Once the library is chosen the implementation can start and must provide: Recording Feature (The component that records from browser and creates the Test Plan) as per this bugzilla https://bz.apache.org/bugzilla/show_bug.cgi?id=60464 Sampling (The component that sends the requests to server) Listener (The component that receives the sampler results) will have to be modified to handle asynchronous samplers Backward compatibility must be carefully analyzed and only broken if there is no other possibility.
*** Bug 63416 has been marked as a duplicate of this bug. ***
Hi Philippe, Do we have any implementations to performance test HTTP/2 protocol. Thanks
Hi Philippe, HTTP/2 is very pop(Google,Alibaba and so on) now. HttpClient5 and JDK 11 is support HTTP/2 protocal. Is it time to plan and implement completement ? Thanks
This issue has been migrated to GitHub: https://github.com/apache/jmeter/issues/4023