Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-users] Server Hint vs Server Push

Hi,

There is an interesting answer from Simon Bordet on stackoverflow regarding server push exchanges: http://stackoverflow.com/questions/29352282/do-browser-cancel-server-push-when-resource-is-in-cache/29354100#29354100

So, server starts pushing some resources that could be already in the client cache. When the browser detects the promised push is related to a cached value, it cancels  it, possibly after that the transfers starts. We can say that's the most efficient way to reduce latency and consequently to improve user experience.

Another technique is server-hints, which let the browser check if the resources referenced in the link header's page exist in the cache before loading it.  We can't say that it's faster than server-push because additional exchange are required before the resource transfer starts. However it still very fast with HTTP/2 because the browser takes advantage from multiplexing. Moreover, it consumes only the bandwidth it really needs and should consume less CPU cycles than server push which often needs to perform a push cancellation.

Do you consider that server-hints are absolete considering server-push capacity? I'm not convinced of that since an overhead is associated to server-push. HTTP/2 wants to optimize data transfer and consequently improve our battery life, which is not the case if our devices consume more bandwidth and CPU than necessary.

In practice, we really need to compare the two techniques in real life project to see how server-push is faster that server-hints and how server-hints is economical comparing to server-push, but before this I want to know your opinion.

Thanks!


--
Guillaume DROUET

Back to the top