![Chrome: prefetching e preloading. Differenze e utilizzo per velocizzare la navigazione Chrome: prefetching e preloading. Differenze e utilizzo per velocizzare la navigazione](https://cdn.ilsoftware.it/54YgS4yZn7GYMPK9coH9NyEfROw=/1120x700/filters:format(webp)/https://www.ilsoftware.it/app/uploads/2023/05/img_24681.jpg)
Gli sviluppatori di browser come Chromium (da cui sono derivati altri progetti indipendenti) e Chrome sono da tempo alla ricerca di soluzioni per velocizzare il caricamento delle pagine Web.
Per esortare chi sviluppa e gestisce i siti Web a realizzare pagine veloci, in grado di offrire una buona esperienza d’uso per gli utenti, Google ha messo a punto il sistema Web Vitals. Nonostante sia un sistema ancora migliorabile e abbia ripetutamente evidenziato comportamenti a dir poco discutibili nella valutazione di alcune tipologie di pagine, i Web Vitals di Google hanno contribuito a infondere la consapevolezza sull’importanza di realizzare siti che rispettano l’utente e non causano problemi durante la navigazione. I Web Vitals, tra l’altro, sono diventati un fattore di ranking.
Sull’altro versante, ovvero lato client, da tempo Chromium e Chrome usano un meccanismo di prefetching chiamato NoState Prefetch che provvede a precaricare alcune risorse senza però eseguire codice JavaScript o effettuare il rendering delle pagine. L’obiettivo è seguire i link che l’utente verosimilmente consulterà e avvantaggiarsi con il caricamento delle pagine successive in modo da ridurre i tempi di visualizzazione nel browser.
La funzione di prefetching è stata aggiunta con il rilascio di Chrome 63 a fine 2017 ma ha lo svantaggio di sprecare risorse macchina e banda di rete nel momento in cui l’utente non visitasse le pagine Web che vengono precaricate.
Gli utenti di Chrome possono disattivare il prefetching delle pagine digitando chrome://settings/cookies
nella barra degli indirizzi quindi disabilitando l’opzione Le pagine vengono precaricate per velocizzare la navigazione e la ricerca.
Con Chrome 103 Google ha iniziato a introdurre il supporto per il prerendering ovvero per il caricamento anticipato di tutte le risorse che compongono una pagina Web, script compresi.
La nuova funzione si chiama Prerender2 ed è per il momento attivabile su richiesta digitando chrome://flags
, cercando Prerender2 e attivando le tre impostazioni Prerender2, Omnibox trigger for Prerender2 e Prerender search suggestions.
Per Google è un po’ un “ritorno al passato” perché agli albori di Chrome era stata presentata una funzione simile (non per niente la nuova implementazione si chiama appunto Prerender2) ma era stata accantonata per via dei problemi di performance, privacy e sicurezza che introduceva.
La nuova soluzione aspira a mettere da parte tutti i problemi sperimentati a suo tempo e a rendere istantaneo il caricamento delle pagine Web, prima sui dispositivi Android e poi su desktop. Il prerendering, inoltre, viene attivato anche nel momento in cui l’utente digita una ricerca nella barra degli indirizzi di Chrome oppure comincia a digitare un URL: in questo modo il browser può avvantaggiarsi e precaricare il contenuto delle pagine che verosimilmente verranno consultate.
La nuova funzionalità è al momento in fase di test. Da verificare, infatti, quale sarà l’effettivo impegno di risorse.