Google search results are getting faster than you can say ‘Google it’. According to IIya Grigorik, a developer advocate at Google, when you tap on a Google Search result after performing a mobile search, the page will now load 100-150 milliseconds faster in Chrome for Android.
No ad to show here.
This is due to a “reactive prefetch”, that allows browsers begin to fetching not only the destination pages that are being accessed, but they also are informed of other critical resources that need to be fetched in parallel “to speed up rendering”.
Grigorik explains: “As the search results page is unloaded, the browser begins fetching the hinted resources in parallel with the request for the destination page. The net result is that the critical resources are fetched much sooner, allowing the browser to render the destination page 100-150 milliseconds earlier”.
Read more: YouTube’s 2014 Rewind puts a fresh spin on the year’s best video moments
This is currently happening only on Chrome on Android. The reason for this is that Google Chrome on Android is the only browser that supports dynamically inserted prefetch hints and reliably allows prefetch requests to persist across navigations. Google hopes that once these features become available on other browsers it can add support for other browsers.
Grigorik noted in an explanation on his Google+ page that Search and Chrome aren’t “speculatively prefetching” resources, they are instead waiting for user clicks, which tell browsers other resources that need to be fetched, hence the “reactive” term being associated.
Grigorik further explains the “reactive prefetch”:
“This is a powerful pattern and one that you can use to accelerate your site as well. The key insight is that we are not speculatively prefetching resources and do not incur unnecessary downloads. Instead, we wait for the user to click the link and tell us exactly where they are headed, and once we know that, we tell the browser which other resources it should fetch in parallel – aka, reactive prefetch”.
The way it unfolds, as explained by Grigorik, is that to invoke the prefetch logic Google needs a browser API that allows it to do this and once invoked, dynamically inserts prefetch hints into the search results page.