First of all, I have just started to test Caddy and I am very pleased with its ease to configure. Well done.
I wanted to test the speed difference between HTTP/1 and HTTP/2 and for that purpose, I created a html file with about 100 pictures of about 150 K each. I was expecting a speed increase with HTTP/2 as all requests are sent simultaneously compared at maximum 6 at a time with HTTP/1. At least this is my understanding of one of the key features of H2.
Results in developer console (FF and Chrome, caching disabled) are a bit puzzling. Requests are sent synchronously as expected in H2 but the content download time are way higher than with H1. About 10 times slower, resulting in a similar total load time for H1 and H2 for the whole page. My Caddyfile is pretty standard and very basic (v0.10.10)
Results (download time in green)
HTTP∕1
HTTP∕2
Caddy file used for the test:
example.com {
root /var/www
}
caddy server is launched as a systemd service with:
caddy -log stdout -agree=true -conf=/etc/caddy/Caddyfile -root=/var/tmp
Any thoughts?
edit:
FF and Chrome seem to handle H2 differently , but the final download time are similar. Here is an extract from HAR file from FF and Chrome for the same url:
FF
"timings": {
"blocked": 0,
"dns": 0,
"connect": 0,
"send": 0,
"wait": 40,
"receive": 1217
}
Chrome
"timings": {
"blocked": 12.921664999001198,
"dns": -1,
"ssl": -1,
"connect": -1,
"send": 1.1470000008557992,
"wait": 1105.3009999995993,
"receive": 37.61300000041956,
"_blocked_queueing": 7.665000000997679
}