Quando il vostro sito web serve visitatori da tutto il mondo, i tempi di caricamento lenti e l’alta latenza possono davvero rovinare la loro esperienza. Che si tratti di un blog personale, di un negozio di e-commerce o dell’hosting di un’applicazione, la velocità e la reattività del sito web possono rendere difficile l’esperienza dell’utente.

Gli utenti insoddisfatti non rimangono a lungo. Cosa fare per migliorare la loro esperienza?

Fortunatamente esistono strumenti potenti per migliorare in modo significativo le prestazioni dei siti web e uno dei più efficaci è l’Edge Caching.

Se tempi di caricamento infiniti o la reattività rallentata del vostro sito WordPress vi hanno mai creato problemi, questa guida fa al caso vostro. Esploriamo il mondo dell’Edge Caching e scopriamo come ottimizzare WordPress.

Cos’è l’Edge Caching?

Che cos’è esattamente l’edge, il “margine”, e come influisce sulle prestazioni di un sito web?

L’edge computing consiste nel ridurre la distanza fisica tra un client (i visitatori del vostro sito web) e il server di origine (dove è ospitato il vostro sito web).

Molte CDN utilizzano i server edge per raggiungere questo obiettivo. In genere, i CDN funzionano distribuendo data center centralizzati in tutto il mondo. Tuttavia, molti di questi data center sono ancora geograficamente lontani dalla maggior parte degli utenti.

L’edge è il perimetro esterno di un CDN o l’infrastruttura di rete più vicina agli utenti finali, dove vengono collocati gli edge server, di solito in punti fisici di scambio internet dove si collegano ISP e CDN, per colmare questa distanza.

L’Edge Caching è una tecnica potente che sfrutta questo vasto ponte di reti per archiviare copie dei contenuti di un sito web più vicino agli utenti, riducendo così il tempo necessario per recuperare i dati dal server di origine.

Come funziona l’Edge Caching

Quando un utente richiede un contenuto da un sito web, come immagini, video o pagine web, la richiesta viene solitamente indirizzata al server edge più vicino piuttosto che direttamente al server di origine.

L’Edge Caching funziona memorizzando i contenuti statici e dinamici in questi server edge. I contenuti statici, come immagini, file CSS e JavaScript, rimangono invariati per tutti gli utenti e possono essere memorizzati nella cache per lunghi periodi. I contenuti dinamici possono cambiare frequentemente e richiedono strategie di caching più accurate.

Mettendo in cache i contenuti nell’edge, le richieste successive dello stesso contenuto possono essere servite direttamente dall’edge server, evitando di doverlo recuperare dal server di origine.

Oltre a ridurre il carico sul vostro server, questo riduce anche la distanza che i dati devono percorrere, diminuendo i tempi di caricamento, riducendo la latenza e migliorando le prestazioni complessive.

L’Edge Caching è particolarmente vantaggioso per i siti web con un pubblico globale. Sfruttando i server edge di una CDN ampiamente distribuiti, i vostri utenti in tutto il mondo possono accedere ai contenuti in modo rapido e affidabile.

Quali siti web beneficiano dell’Edge Caching?

L’Edge Caching è utile per una serie di siti web, dai semplici siti statici alle applicazioni completamente interattive. Analizziamo nel dettaglio i tipi di siti web che possono beneficiare delle prestazioni notevolmente migliorate offerte dall’Edge Caching.

Siti statici

I siti statici, che consistono in contenuti fissi che cambiano raramente, sono i candidati ideali per l’Edge Caching.

Questi siti web includono tipicamente blog, portfolio, landing page e siti web informativi che non fanno uso di contenuti dinamici. Contengono HTML, CSS, risorse come immagini e script lato client come JavaScript.

Sebbene l’Edge Caching funzioni per alcuni tipi di contenuti dinamici, richiede una configurazione un po’ più complessa. La natura prerenderizzata dei siti web statici si adatta molto bene all’Edge Caching, poiché i file della cache rimangono aggiornati per settimane o mesi.

L’Edge Caching elimina la necessità di recuperare ripetutamente i contenuti invariati dal server di origine, garantendo un accesso immediato alle risorse in cache e un’esperienza di navigazione più fluida.

Inoltre, i siti statici utilizzano pochissimo carico sul server o larghezza di banda, per cui il caching e il servizio sono molto più veloci e convenienti rispetto ai siti web che utilizzano molti script lato server o che fanno frequenti chiamate al database.

Applicazioni interattive

Per i siti web che si basano molto su applicazioni interattive o che offrono contenuti dinamici, come le piattaforme di e-commerce o i social network, l’Edge Caching svolge un ruolo importante nell’ottimizzazione delle prestazioni.

I metodi di caching tradizionali sono spesso meno efficaci quando si tratta di contenuti dinamici e personalizzati. Per molto tempo è stato possibile memorizzare nella cache solo contenuti statici come immagini e HTML.

L’Edge Caching ha dato una svolta alla situazione, poiché gli script stessi possono essere distribuiti dai server edge della CDN.

Un esempio è rappresentato dai Cloudflare Workers, funzioni Javascript che vengono eseguite sul CDN di Cloudflare. In questo modo il codice dinamico che risponde agli input dell’utente può essere eseguito sui server edge e raggiungere istantaneamente gli utenti di tutto il mondo.

cloudflare workers
I Cloudflare Workers consentono l’esecuzione di codice dinamico sui server edge.

Grazie a questo, è possibile offrire ai visitatori un’esperienza senza soluzione di continuità senza compromettere l’interattività.

Siti web esigenti e ad alte risorse

I siti web che gestiscono volumi di traffico elevati o applicazioni ad alta intensità di risorse, come le piattaforme di streaming o i portali di gioco online, possono trarre notevoli benefici dall’Edge Caching.

Questi siti web servono spesso file di grandi dimensioni, come video, flussi audio o immagini ad alta risoluzione, che possono mettere a dura prova i server di origine e la larghezza di banda della rete, causando buffering e latenza.

L’Edge Caching alleggerisce il carico dei server memorizzando e servendo questi file di grandi dimensioni dagli edge server più vicini ai vostri visitatori. Inoltre, la natura distribuita dei server edge permette di gestire grandi picchi di traffico e di scalare con la crescita della base di utenti.

Siti di e-commerce

Nei negozi di e-commerce, ogni secondo può fare la differenza nel trattenere o perdere un potenziale cliente, quindi è meglio non sprecarne nemmeno uno.

L’Edge Caching funziona bene in questo caso: memorizza nella cache i contenuti dinamici, come gli elenchi dei prodotti, le informazioni sui prezzi e le sessioni degli utenti, che richiedono una consegna veloce e affidabile. Inoltre, il caching delle pagine dei prodotti, delle immagini e di altre risorse a cui si accede di frequente viene effettuato sui server edge.

Purtroppo, i siti web di e-commerce sono spesso oggetto di attacchi DDoS, che possono essere devastanti. Grazie agli edge server e ai CDN nel loro complesso, la tecnologia di bilanciamento del carico distribuisce l’ondata di traffico dannoso su centinaia di server, in modo che i vostri clienti legittimi possano continuare a fare acquisti.

Come bonus aggiuntivo, l’occasionale picco di traffico festivo sarà gestito senza problemi.

Che abbiate una piccola boutique o siate parte di un grande mercato, l’Edge Caching vi offre un’esperienza di acquisto sicura e senza interruzioni, non lenta e frustrante.

Siti di streaming multimediale

Streaming dal vivo, streaming video, streaming musicale: tutto ciò è estremamente impegnativo per i server.

E non c’è niente di più frustrante per i vostri visitatori che vedere la loro canzone preferita o un video che stanno apprezzando in pausa per il buffering. Una certa latenza può essere accettabile con un sito web tipico, ma non quando si tratta di streaming multimediale.

L’Edge Caching è essenziale per offrire una riproduzione fluida e ininterrotta. I file video e audio non cambiano spesso, quindi possono essere memorizzati nella cache dei server edge, molto più vicini ai visitatori. Questo è particolarmente importante per i video ad alta definizione, poiché sono molto impegnativi e la congestione della rete è un grosso problema.

Anche i contenuti live possono trarre vantaggio dalla cache edge. Anche se può essere difficile memorizzare nella cache i contenuti in tempo reale, gli utenti di tutto il mondo possono connettersi all’edge server più vicino a loro ed evitare di sovraccaricare il vostro server di origine anche quando gli spettatori raggiungono le migliaia.

Con l’Edge Caching, i siti di streaming multimediale possono offrire un’esperienza visiva di alto livello che mantiene il pubblico coinvolto e lo fa tornare.

Piattaforme di gioco

Proprio come lo streaming multimediale, il gioco è un’esperienza in cui la latenza non è accettabile: i vostri giocatori non resteranno se il gioco è soggetto a lag e poco reattivo.

Questo è particolarmente vero per i giochi multiplayer, dove anche lievi intoppi possono rovinare seriamente il divertimento di qualcuno.

Sebbene una parte della responsabilità ricada sugli sviluppatori, che devono ottimizzare il gioco e non effettuare chiamate di rete non necessarie, è altrettanto importante utilizzare un CDN con molti server periferici per far funzionare il gioco senza intoppi.

I server edge possono essere utilizzati per memorizzare nella cache risorse come file grafici e audio e trasmetterli ai giocatori non appena li raggiungono. Possono anche memorizzare nella cache i file di aggiornamento imminenti o, in alcuni casi, l’intero file di gioco.

Inoltre, i server di gioco sono un altro grande bersaglio degli attacchi DDoS e i server edge aiutano a scaricare il traffico dannoso che potrebbe arrivare, o a scalare rapidamente quando si verifica un improvviso afflusso di nuovi giocatori.

Piattaforme di apprendimento online

I sistemi di gestione dell’apprendimento e altri siti web educativi contengono molti tipi di contenuti che possono essere messi in cache.

Immagini, video, audio, giochi interattivi e dimostrazioni, live stream, quiz e altro materiale interattivo possono essere memorizzati nella cache per essere consegnati agli studenti in modo più efficiente.

La distribuzione su server edge globali è molto utile anche quando si registra un alto volume di iscrizioni di studenti. Un LMS lento e poco performante rende l’esperienza di apprendimento dei vostri studenti pessima.

Blog, notizie e siti web informativi

I blog e i siti web informativi funzionano particolarmente bene con l’Edge Caching perché utilizzano molti contenuti statici. Anche se di tanto in tanto vengono aggiornati sia articoli che altre risorse, è abbastanza raro che la cache rimanga buona per molto tempo.

Mettendo in cache gli articoli, le immagini e i contenuti multimediali a cui si accede di frequente su server edge situati più vicini agli utenti, i blog possono ridurre i tempi di caricamento e migliorare la reattività complessiva. In questo modo i lettori possono sfogliare il vostro catalogo di articoli senza interruzioni o ritardi.

La popolarità dei blog in tutto il mondo rende l’Edge Caching una parte fondamentale per mantenere l’accessibilità globale anche durante i picchi di traffico. Non si sa mai quando un articolo diventerà virale.

Quando non usare l’Edge Caching

Sebbene l’Edge Caching offra numerosi vantaggi per l’ottimizzazione delle prestazioni dei siti web, ci sono alcuni scenari in cui potrebbe non funzionare molto bene.

Contenuti altamente dinamici o in tempo reale

Sebbene l’Edge Caching sia eccellente nell’ottimizzare la distribuzione di contenuti statici e persino di alcuni contenuti dinamici, ci sono dei limiti quando si tratta di memorizzare nella cache contenuti altamente dinamici, in particolare quelli che cambiano in tempo reale.

I contenuti che si aggiornano frequentemente o che sono personalizzati per ogni utente potrebbero non essere adatti al caching edge.

I moderni CDN come Cloudflare hanno introdotto funzioni che possono gestire alcuni tipi di contenuti dinamici in modo più efficace, come l’esecuzione di codice dagli stessi server edge. Ma non tutto è memorizzabile nella cache, almeno senza una grande abilità, conoscenze avanzate e una complicata configurazione del CDN.

Nei casi in cui memorizzare in cache non è fattibile o pratico, si può invece sfruttare la cache del browser, ottimizzare le risorse per ridurre le dimensioni dei file e implementare un codice più efficiente per mantenere bassi i tempi di risposta del server.

Contenuti personalizzati

L’Edge Caching non è adatto a fornire contenuti personalizzati per i singoli utenti. Uno dei principali vantaggi del caching è che serve i contenuti di frequente accesso dai server edge in modo che le persone di tutto il mondo possano scaricarli rapidamente. Se lo vedrà solo una persona, memorizzarlo nella cache non ha molto senso.

Le raccomandazioni personalizzate sui siti web di e-commerce, i feed di notizie personalizzati o le dashboard specifiche per l’utente non possono essere messi in cache perché si basano su dati o interazioni in tempo reale.

Invece di affidarvi alla cache, potete implementare strategie di distribuzione dei contenuti dinamici come lo scripting lato client, la cache del browser, il prefetching dei contenuti e la compressione dei dati per ottimizzare la distribuzione dei contenuti personalizzati.

Evitare regole di caching complesse

L’implementazione dell’Edge Caching può introdurre un’ulteriore complessità, soprattutto se il vostro sito web dispone già di regole di caching complesse.

Ad esempio, l’Edge Caching può essere difficile da configurare o portare a risultati inaspettati se utilizzato insieme a regole esistenti come intestazioni di controllo della cache personalizzate, regole di invalidazione della cache o di bypass della cache.

Ciò non vuol dire che sia impossibile. È solo che richiede uno sviluppatore esperto per essere configurata correttamente. Configurazioni di cache non corrispondenti tra il server di origine e gli edge server possono portare a conflitti di cache o alla visualizzazione di contenuti non aggiornati.

A seconda della complessità dell’architettura di caching esistente, incorporare l’Edge Caching potrebbe essere un compito non indifferente.

File molto grandi

L’Edge Caching è ottimizzato per la distribuzione di file di piccole e medie dimensioni, spesso statici. A seconda della capacità dei server, potreste avere difficoltà a memorizzare nella cache file molto grandi, come video ad alta definizione, download di software o grandi set di dati.

Questo dipende molto dal CDN che utilizzate. Se i server edge faticano a consegnare file multimediali di grandi dimensioni, è possibile che i file più importanti del sito web vengano eliminati dalla cache o che le prestazioni siano scarse a causa dell’elevata larghezza di banda e dell’utilizzo delle risorse necessarie per consegnare file enormi a centinaia di utenti.

Se il file viene aggiornato di frequente, si verificheranno anche problemi di invalidazione della cache, in quanto le versioni obsolete devono essere eliminate e aggiornate su tutti gli edge server. Questo può essere un processo lento e far sì che gli utenti si trovino di fronte a contenuti obsoleti.

Al contrario, potreste voler bypassare la cache edge in modo che gli utenti scarichino dal server di origine, mettere parzialmente in cache parte del contenuto del file oppure, per siti di streaming video o simili in cui è necessario un CDN, creare una configurazione CDN specializzata che ottimizzi la distribuzione di file di grandi dimensioni.

Problemi di sicurezza e privacy

Se da un lato l’Edge Caching può migliorare le prestazioni di un sito web, dall’altro introduce potenziali problemi di sicurezza e di privacy, in particolare quando vengono memorizzati nella cache contenuti autenticati, personalizzati o privati.

La memorizzazione nella cache di informazioni sensibili aumenta il rischio di accesso non autorizzato e di violazione dei dati. Più copie ci sono, più è probabile che vengano scoperte.

La memorizzazione nella cache dei contenuti può anche sollevare problemi con leggi come il GDPR, che richiede l’eliminazione di tutte le copie memorizzate delle informazioni degli utenti su richiesta.

I server edge aumentano la superficie di attacco del vostro sito web e dei suoi dati e possono potenzialmente portare a vulnerabilità di sicurezza come il cache poisoning.

Tutto ciò può essere mitigato crittografando tutti i contenuti privati che passano attraverso la cache, aggiungendo politiche di invalidazione della cache per eliminare i dati obsoleti e inutilizzati, oppure evitando di memorizzare nella cache i dati sensibili.

Altre considerazioni

Infine, per gli utenti di Kinsta, l’Edge Caching non è sempre compatibile con alcune impostazioni particolari.

  • L’Edge Caching non funziona bene con la geolocalizzazione se non su base nazionale. La geolocalizzazione basata su stati e città non funziona correttamente e le aree vicine ai confini nazionali possono funzionare in modo insolito.
  • Le esclusioni personalizzate aggiunte tramite Advanced Site Cache non funzionano.
  • Il rilevamento degli agenti utente per visualizzare siti diversi per mobile o desktop non funziona con l’Edge Caching. In alternativa si può utilizzare la funzione Mobile Caching di Kinsta.
  • La protezione con password di Kinsta non è compatibile con l’Edge Cache.
  • L’Edge Cache di Kinsta e l’Automatic Platform Optimizations (APO) di Cloudflare non sono compatibili.
  • L’Edge Cache non è compatibile con il blocco dell’IP e della geolocalizzazione.

Indipendentemente dall’infrastruttura del vostro sito web, l’Edge Caching può entrare in conflitto con determinate impostazioni. Dopo aver configurato un CDN o aver abilitato l’Edge Caching, è bene testare il vostro sito web e tutte le applicazioni presenti per verificare che tutto funzioni correttamente.

Come funziona l’Edge Caching in WordPress

L’implementazione dell’Edge Caching nell’ambiente WordPress presenta considerazioni e sfide particolari.

  • I siti web WordPress servono per lo più risorse statiche e contenuti dinamici, come piccoli script lato server e chiamate al database – candidati perfetti per l’Edge Caching.
  • Tuttavia, la natura dinamica e in costante aggiornamento di WordPress fa sì che i contenuti possano talvolta diventare obsoleti. Per evitarlo, sono necessari meccanismi di cancellazione adeguati come Cloudflare APO e l’invalidazione della cache. È anche possibile cancellare manualmente l’Edge Cache con Kinsta se si nota un problema.
  • I temi e i plugin di WordPress possono introdurre ulteriori complessità. Alcuni plugin che generano contenuti dinamici, aggiungono contenuti personalizzati o autenticati o si basano sull’elaborazione lato server possono essere incompatibili con l’Edge Caching.

In generale, WordPress e l’Edge Caching lavorano bene insieme per migliorare le prestazioni, ma tenete presente queste considerazioni e assicuratevi di testare a fondo tutti i plugin o i temi che aggiungono contenuti dinamici.

Edge Caching con Kinsta

Gli utenti di Kinsta beneficiano di una caratteristica non comune, ovvero la possibilità di attivare gratuitamente l’Edge Caching. Alcune delle caratteristiche:

  • Kinsta si integra con Cloudflare e i suoi oltre 260 data center per rendere gratuito l’Edge Caching per qualsiasi piano. Inoltre, non è necessario un plugin per attivarlo: basta un clic nella dashboard di MyKinsta.
  • La cache mobile è supportata se si creano pagine separate per gli utenti mobili.
  • Si può cancellare la cache su richiesta se si notano delle risorse obsolete che devono essere eliminate, anche se di solito non è necessario visto che Kinsta cancella automaticamente la cache edge ogni volta che si aggiorna una pagina.
  • L’Edge Cache è automaticamente esclusa per le pagine private/personalizzate come il carrello di WooCommerce, le aree private del profilo di BuddyPress o qualsiasi altro luogo in cui un utente debba effettuare il login. A seconda della configurazione, potrebbe essere necessario escludere altre pagine; il supporto di Kinsta può aiutarvi a configurarle.

Come nota finale, l’Edge Cache di Kinsta non serve risorse statiche come immagini o file CSS. Questo viene gestito dal CDN di Kinsta.

In generale, l’Edge Caching è facile da usare con Kinsta. È gratuito per tutti e attivarlo è facile, basta fare clic su un pulsante. Non c’è nessuna configurazione complicata né plugin necessari.

Come attivare l’Edge Caching

Ora che sapete perché l’Edge Caching è così importante, vi mostriamo due metodi per farlo funzionare sul vostro sito.

Abilitare l’Edge Caching in MyKinsta

Abilitare l’Edge Caching in MyKinsta è semplice: basta fare clic su un pulsante.

Edge Caching in mykinsta
Attivare l’Edge Caching in MyKinsta è semplice.
  • Passo 1: accedete alla dashboard di MyKinsta e cliccate sul sito che volete modificare nella sezione Siti WordPress.
  • Fase 2: individuate Edge Caching nell’elenco delle impostazioni a sinistra.
  • Fase 3: potreste scoprire che l’Edge Caching è già abilitato poiché Kinsta sta introducendo l’Edge Caching automatico per tutti i siti. In caso contrario, cliccate sul pulsante nero Abilita in alto a destra.
  • Fase 4: se avete aggiunto delle regole di cache personalizzate, riceverete un’altra richiesta per confermare che funzionino con l’Edge Caching. Cliccate su Abilita Edge Cache una volta pronti.
  • Fase 5: se inviate gli utenti mobili a una pagina separata, cliccate su Abilita nella casella Cache mobile per attivarla.

E questo è tutto! L’Edge Cache ora funziona sul vostro sito.

Potete anche cancellarla manualmente; cliccate sul pulsante Cancella cache in fondo alla pagina oppure inserite un URL da cancellare e cliccate su Cancella cache URL.

Abilitare l’Edge Caching in Cloudflare

L’Edge Caching di Kinsta sfrutta già la tecnologia Cloudflare, quindi non è necessario abilitarlo se avete un account Kinsta.

Anche Cloudflare offre l’Edge Caching per impostazione predefinita, che potete disattivare selettivamente utilizzando una regola di bypass. Ma ci sono alcune impostazioni che potete modificare, come il TTL della cache edge (per quanto tempo il server edge conserva i suoi file).

Se avete già impostato un’intestazione di controllo della cache, questo potrebbe non essere necessario. Inoltre, è meglio consultare uno sviluppatore prima di modificare le impostazioni della cache, a meno che non sappiate già cosa fare, perché possono essere molto delicate.

  • Passo 1: accedete al vostro account Cloudflare e accedete alla dashboard.
  • Fase 2: cliccate su Rules > Page Rules, quindi su Create Page Rule.
  • Fase 3: inserite le pagine che desiderate sottoporre a caching edge nel campo URL (obbligatorio). Usate il simbolo del carattere jolly (*) per applicare questa impostazione a più di una pagina. Ad esempio, “example.com/*” si applica a tutte le pagine del vostro sito. Fate attenzione perché non tutte le pagine sono adatte alla cache.
  • Passo 4: nel menu a tendina Pick a Setting , selezionate Edge Cache TTL e scegliete quanto tempo deve durare la cache prima di scadere.
  • Fase 5: se volete memorizzare nella cache anche le risorse dinamiche, cliccate su Add a Setting, aggiungi l’impostazione Cache Level e impostatela su Cache Everything.

Nota: Cache Everything non dovrebbe essere utilizzata per le pagine che richiedono un login. Potete creare una nuova regola e impostarla su Bypass per le pagine sensibili. Assicuratevi che la regola Bypass sia collocata sopra la regola Cache Tutto.

Regole di pagina dell'Edge Caching
Come impostare una regola di cache anche in Cloudflare.

In alternativa, potete utilizzare una regola di cache.

  • Passo 1: accedete alla dashboard di Cloudflare.
  • Fase 2: andate su Caching > Cache Rules e cliccate sul pulsante blu Create Rule.
  • Fase 3: assegnate un nome alla regola, quindi cercate When incoming requests match…. Nel menu a tendina Field, cliccate su URI Path, lasciate l’Operator su equals e digitate “/” nella casella Value. In questo modo la regola verrà applicata a tutte le pagine, ma anche in questo caso potrebbe non essere appropriata. Personalizzate questa regola in base alla vostra infrastruttura.
  • Fase 4: impostate Edge TTL su un valore appropriato per il vostro sito web. Se volete impostarlo manualmente, cliccate su Ignore cache-control header and use this TTL.
  • Passo 5: cliccate su Deploy una volta finito.
impostazione del time-to-live di input
Impostazione del time-to-live (TTL) di input in Cloudflare.

Riepilogo

L’Edge Caching è uno strumento potente per garantire tempi di caricamento più rapidi, creare una migliore esperienza utente e, in definitiva, ottimizzare le prestazioni di WordPress. Sia le risorse statiche che quelle dinamiche vengono memorizzate nella cache dei server edge, per poi essere distribuite agli utenti di tutto il mondo.

Edge Caching è facile da attivare, gestire e integrare con il CDN Kinsta. Se desiderate verificare la velocità delle pagine con Edge Caching su Kinsta, abbiamo moltissimi dati da mostrarvi. Provate Edge Caching su Kinsta oggi stesso!
Jeremy Holcombe Kinsta

Content & Marketing Editor presso Kinsta, web developer di WordPress e content writer. Al di fuori di tutto ciò che riguarda WordPress, mi piacciono la spiaggia, il golf e il cinema. Ho anche i problemi di tutte le persone più alte della media ;).