Am 2020-11-05 um 16:49 schrieb Jakub Bartecek:
Hi,
I did a performance test of HTTP/2 and its comparison with HTTP/1.1 and I
would like to share my results with you.

I wrote a Python script [1] to download 100 artifacts in parallel using
asynchronous HTTP client supporting both HTTP/1.1 and HTTP/2. I chose 100
artifacts [2] from Maven Central, which were downloaded when I did a clean
build of one of my projects.

All 100 artifacts were downloaded using HTTP/1.1 and also HTTP/2 and I
stored the results in this file [3]. I did 10 experiments and measured its
performance. In the middle I switch the order of HTTP/1.1 and HTTP/2
requests to avoid a possible bias. I run it from my laptop connected to 160
Mbit/s network.

The experiments showed massive performance improvements when using HTTP/2
instead of HTTP/1.1
*:*

    - *The average download time using HTTP/1.1 was 3753.7 ms and using
    HTTP/2 971.8 ms* [4]


    - *In average the artifacts were downloaded 3.86 times faster using
    HTTP/2 than using HTTP/1.1* [5]


Kuba

[1]: https://github.com/jbartece/http2performance/blob/main/http2PerfTest.py
[2]: https://github.com/jbartece/http2performance/blob/main/centralUrls.txt
[3]: https://github.com/jbartece/http2performance/blob/main/testResults.txt
[4]:
https://github.com/jbartece/http2performance/blob/main/finalResults.txt#L26
[5]:
https://github.com/jbartece/http2performance/blob/main/finalResults.txt#L32

This testing is logically wrong/incomplete. You have to download serially maven-metadata.xml, its checksum files, POM, its checkfiles and artifact itself and its checksum files. Please redo, I would to to test this too then. Enable HttpClient debug logging to see that more than just the JAR is downloaded.

Michael

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to