Chrome back and forward button performance to improve in 2020 - harlan4096 - 01 March 19
Quote:
Google is working on a new cache for its Chrome browser to improve the performance of back and forward operations on the desktop and on mobile.
Called bfcache, short for back/forward cache, it is designed to cache pages in memory when users navigate to another page, e.g. by activating links, entering URLs manually, or through other means.
The cache will store a copy of the page the user left, including JavaScript and the DOM state, in order for Chrome to load it from memory when the user decides to use the back or forward button in the browser.
It is like putting pages into hibernation in memory to wake them up when the page is revisited during the session. Chrome will store a finite number of entries in the new cache, likely to avoid too big of an impact on the browser's memory use.
Chrome caches content already so that the content loads faster than on first visit of a a page not visited previously.
The current implementation requires Chrome to parse and render the page again and perform other computations to display the page again to the user.
Basically, the only thing that really changes right now when accessing previously visited pages is that Chrome does not need to establish as many networking connections if cached content is available.
It may come as a surprise to some, but Chrome is trailing Firefox and Safari in this regard. The two web browsers support similar functionality, Mozilla even calls it bfcache as well, for over a decade.
Back and forward operations represent significant activity on the desktop and mobile according to Google; Google metrics indicate that desktop Chrome users revisit 10% of pages while mobile Chrome users 19%. Making back and forward operations faster is therefor beneficial to the user experience on desktop and on mobile.
Google published two videos that demonstrate the difference between the performance of back and forward buttons in current versions of Chrome and in prototypes that use an early version of bfcache already.
|