- Chrome is taking 618ms to load / vs 412 ms on FF.
- FF loads all the .css & .js at 320ms as well as first 8 imgs
- CH loads all the .css & .js at ~600ms as well as first 8 imgs
Before chalking up the advantage to dependency-based prioritization (which may be a good thing-I don't know) I would first explain why fetching "/" is so much slower on chrome.
Might be worth re-running the tests without the block so the graphs can line up better and we don't need to subtract the 200ms? As you well know, implications of latency or packet loss are hard to extrapolate on real-world rendering.
(I work on PageSpeed, and we need to run tests like this often.)
In case of the benchmark, I run the server as a VM instance on the client machine so that the results would be reproducible (with network latency added by `tc qdisc` command).
PS. PageSpeed is a really nice service; and I agree that it is a useful tool for evaluating the speed in the real-world.
To actually minimize latency the server should understand what resources the HTML file is dependent on, and eagerly send those in addition to the request resource. i.e.
client: send me index.html and dependent resources
server: here is index.html, along with
other initial resources you didn't ask
for but will need
This avoids the latency of the second round-trip time to ask for dependent resources. Does anyone know if HTTP/2 allows for a scheme like this?