Come impostare e configurare la cache Redis su WordPress

Rifat Tutorial WordPress Sep 19, 2023

WordPress funziona come un sistema di gestione dei contenuti (CMS) open source, facilitando la gestione dei contenuti senza la necessità di acquisire competenza in qualsiasi linguaggio di scripting web. Attraverso la semplice aggiunta di testi, immagini e video è possibile costruire e successivamente pubblicare un sito web o un blog su Internet. La base operativa di WordPress risiede in PHP e in un database MySQL.

Nel processo di creazione di un sito Web basato su WordPress, l'incorporazione di temi e plug-in è un luogo comune per personalizzare gli attributi del contenuto e l'estetica visiva. Ciò facilita il progressivo aumento delle funzionalità del sito web attraverso componenti supplementari, comprese estensioni di terze parti come SEO e analisi. Le interdipendenze di questi temi e plugin trovano il loro repository all'interno di un database MySQL che funge da host per il contenuto della pagina web.

Al contrario, Redis costituisce un repository di strutture dati in memoria open source, pronto a funzionare come un sistema di caching. Questo software funziona come servizio in background, facilitando la memorizzazione nella cache e la conservazione dei dati nella memoria del sistema. Di conseguenza, questo stratagemma contribuisce ad aumentare i tempi di risposta del server e la velocità complessiva del sito web.

La prossima guida didattica è progettata per impartire le conoscenze necessarie per l'istituzione e la configurazione della cache degli oggetti Redis all'interno del tuo sito Web o blog WordPress. Tuttavia, prima di approfondire i dettagli della configurazione, è giustificata un’esplorazione dei meccanismi operativi di WordPress e Redis, insieme alla logica del loro utilizzo simbiotico.

Create Amazing Websites

Con il miglior generatore di pagine gratuito Elementor

Parti ora

Come funziona Redis

Considera uno scenario in cui un'applicazione web è operativa su un server, utilizzando un database come MySQL per il suo funzionamento. L'applicazione web richiede il recupero di record specifici da questo database. L'esecuzione di tali interrogazioni è accompagnata da un notevole ritardo temporale nella fornitura delle registrazioni richieste. È interessante notare che periodi di attesa prolungati, superiori a un minuto, per il recupero dei dati possono potenzialmente portare a un'esperienza utente non ottimale.

Vale la pena notare, tuttavia, che Redis offre una soluzione volta a migliorare la velocità e l'efficienza di tali operazioni di elaborazione dei dati. Attraverso l'utilizzo di Redis, esiste la possibilità di archiviare i dati che sono stati elaborati tramite una query del database MySQL all'interno di un'istanza di cache Redis dedicata. Questa memorizzazione strategica consente il recupero diretto dei dati dalla memoria del server, evitando così la necessità di percorrere l'intero percorso per tornare al database.

La meccanica operativa prevede che il web server si interfaccia con Redis per accertare la disponibilità dei dati desiderati. Di conseguenza, nei casi in cui una richiesta successiva rispecchia una transazione di query precedente, l'oggetto Redis, che risiede nella cache degli oggetti, interviene per soddisfare la richiesta, annullando così la necessità di interagire nuovamente con il server MySQL.

Nei casi caratterizzati dall'orchestrazione di una vasta gamma di server Web, che rappresentano una flotta su larga scala che comprende numerose unità, l'integrazione di una singola cache Redis può aggregare abilmente richieste e risposte provenienti da questi server Web. Questa configurazione elimina di fatto la necessità che ogni singolo server web intraprenda l'intero percorso verso il database durante ogni istanza di operazione.

Perché integrare Redis con WordPress

Abilitare Redis Cache all'interno dell'installazione WordPress Core offre il vantaggio di accelerare la distribuzione dei contenuti ai client. Dato l'ampio utilizzo da parte di WordPress delle ricerche di query MySQL, il degrado delle prestazioni diventa evidente durante le istanze ad alto traffico.

In tali circostanze, la cache Redis assume un ruolo fondamentale, affrontando in modo efficace questo scenario. Funzionando come un database di coppie chiave-valore basato sulla memoria, Redis conserva tutti i dati corrispondenti all'interno della memoria, fornendo così una rapida soluzione di caching lato server su misura per WordPress.

Stabiliremo una cache degli oggetti Redis, una misura ideata per affinare l'utilizzo del database WordPress. Questa cache di oggetti Redis funge da repository per gli output memorizzati nella cache derivati ​​da query specifiche dirette al server MySQL. Di conseguenza, quando altri utenti accedono a post o articoli identici, la cache degli oggetti soddisfa prontamente le loro richieste, ovviando alla necessità di interrogare il server MySQL.

Pertanto, l’invocazione ricorrente del database MySQL di WordPress viene mitigata tramite la memorizzazione nella cache di query complesse, facilitando la consegna dei risultati memorizzati nella cache per successive richieste simili. Questa strategia evita un ulteriore viaggio di andata e ritorno al server MySQL, aumentando di conseguenza i tempi di risposta del server e la velocità complessiva del sito.

Prerequisiti per l'attività

Per procedere con le istruzioni descritte in questa guida, è fondamentale possedere un sito Web WordPress operativo ospitato su un server remoto. La logica alla base di questa necessità deriva dal fatto che l'ottimizzazione di un sito ospitato localmente sul tuo personal computer non è fattibile, data la natura del rendering lato server di WordPress. Di conseguenza, nasce l’imperativo di ospitare WordPress su un server remoto, prerequisito per la configurazione di una cache Redis nonché per il miglioramento del tempo di risposta del server e della velocità complessiva del sito. È di fondamentale importanza notare che una comprensione fondamentale dell'utilizzo di WordPress è indispensabile per interagire in modo efficace con i contenuti di questo tutorial.

Installazione di WordPress con il server AWS EC2

All'interno di questa guida didattica, ho stabilito un'installazione di WordPress utilizzando la piattaforma Amazon Web Services (AWS). Di seguito sono presentate sintetiche istruzioni procedurali che delineano il processo per la sua configurazione. Inizialmente è imperativo accertarsi del possesso di un account AWS attivo; è interessante notare che un account di livello gratuito è sufficiente ai fini di questa esemplificazione.

Procedi ad accedere alla console AWS e naviga verso il servizio Amazon Elastic Compute Cloud (EC2), effettuando successivamente il lancio di un'istanza virtuale. Successivamente, all'interno dell'AWS Marketplace, conduci una ricerca diligente dell'applicazione WordPress. È opportuno sottolineare che la configurazione attuale rimane idonea per la categoria del livello gratuito. Di conseguenza, opta per l’iterazione di WordPress con pacchetto Bitnami, che opera sull’architettura del server HTTP Apache.

Seleziona un tipo di istanza AWS appropriato. Per questo scenario specifico, opta per il tipo di istanza micro t2, che si qualifica per l'idoneità al livello gratuito. Successivamente, procedere al pulsante "Rivedi avvio" e, una volta verificato, eseguire l'avvio dell'istanza.

Genera una nuova coppia di chiavi per stabilire una connessione sicura tra questo server e un computer locale. Assicurati che la coppia di chiavi scaricata proveniente da questo processo venga conservata prima di avviare le istanze.

Sii paziente mentre AWS inizializza e avvia il lancio dell'istanza. Per accedere alle istanze avviate, è sufficiente fare clic sull'identificatore di lancio fornito come indicato di seguito.

Dopo la conferma dello stato operativo dell'istanza e la corretta configurazione di WordPress, l'indirizzo IP assegnato diventa evidente. Per accedere al blog WordPress di recente creazione, è sufficiente inserire l'indirizzo IPv4 pubblico designato in un browser web. Per gli ambienti di produzione è sufficiente l'utilizzo diretto del nome di dominio.

Accesso al server tramite PuTTY

Inizia procurandoti l'applicazione PuTTY, un client open source che facilita le funzionalità Secure Shell (SSH) e telnet sulla piattaforma Windows. Dopo l'acquisizione, procedi con l'installazione di PuTTY sul tuo computer.

Dopo aver installato con successo PuTTY, individua l'utilità PuTTYgen nella directory del tuo computer e avviane l'avvio. Questa fase prevede la conversione della coppia di chiavi precedentemente generata in un file di chiave pubblica-privata. All'interno dell'interfaccia PuTTYgen, caricare la chiave designata, avviare il processo di generazione della chiave e successivamente conservare la chiave privata generata.

Successivamente a questa procedura, avviare l'applicazione PuTTY e inserire il nome host o il nome di dominio del server pertinente. Naviga attraverso l'interfaccia fino alla sezione "Sessione" e fornisci l'indirizzo IP o il nome di dominio associato, se ne è configurato uno.

Un'ulteriore configurazione è garantita nel menu "Connessioni", in particolare nella sottosezione "SSH", e successivamente "Autenticazione". Qui deve essere caricata la chiave SSH salvata di recente. Una volta configurata, la connessione può essere stabilita selezionando l'opzione 'Apri'.

Una volta stabilita la connessione, verrà presentata un'interfaccia terminale. Inserisci "bitnami" come credenziale di accesso. È interessante notare che "bitnami" è il nome utente predefinito prescritto durante l'installazione di WordPress. Se sono state implementate modifiche al nome utente, inserire di conseguenza il nome utente modificato. Questa interfaccia terminale fornisce una piattaforma interattiva per introdurre librerie ed estensioni aggiuntive per migliorare la funzionalità del server WordPress.

Aggiunta di Redis al server root

Ora che WordPress viene eseguito sullo stesso server root, è necessario aggiungere Redis. Esegui il comando seguente sul terminale PuTTY a cui abbiamo appena effettuato l'accesso per eseguire questa operazione.

sudo apt install redis

Di conseguenza, Redis verrà installato su questo indirizzo IP. Puoi riavviarlo con sudo systemctl restart redis.service per consentire la configurazione di tutto. Eseguiamo per vedere se il server Redis è attivo e funzionante.

sudo systemctl status redis

Redis è configurato correttamente sul nostro server. Puoi osservare che non abbiamo ancora alcuna chiave di cache Redis registrata eseguendo redis-cli e il comando keys * .

Ora che tutto è configurato, dobbiamo andare su WordPress wp-admin e aggiungere un plugin Redis. Di conseguenza, devi solo inserire il tuo indirizzo IP o nome di dominio e wp-admin come mostrato di seguito.

your-ip-address/wp-admin

Vai all'istanza in esecuzione su AWS, fai clic con il pulsante destro del mouse su "Monitoraggio e risoluzione dei problemi", quindi inserisci le informazioni di accesso wp-admin. Registro di sistema, per favore. Per accedere a wp-admin, riceverai le informazioni di accesso Bitnami WordPress predefinite. E sei arrivato al dashboard amministrativo.

Aggiungi Redis a WordPress


Prima di configurare Redis è necessario procedere con l'installazione e l'attivazione del plugin Query Monitor .

Il plugin Query Monitor facilita il debug di vari aspetti, tra cui query di database, errori PHP, hook e azioni, blocchi all'interno dell'editor di blocchi, script e fogli di stile accodati, chiamate API HTTP e altro ancora. Inoltre, offre la possibilità di visualizzare un conteggio completo delle query del database organizzate dai singoli plugin.

Per avviare questo processo, vai alla home page del tuo sito web e accedi al menu Query Monitor.

In questo modo verrà avviata la dashboard di Query Monitor.

Successivamente, indirizza la tua attenzione sulle metriche ottenute da questa particolare pagina. In particolare, si tratta di una pagina web relativamente semplice, osservabile con un conteggio cumulativo di 23 query di database, eseguite in soli 0,0013 millisecondi.

Una volta completato questo passaggio preliminare, procedi con l'introduzione di un nuovo plugin. Come esempio illustrativo, cerca "Redis" e opta per il plug-in specifico " Redis Object Cache ".

Dopo la selezione procedere con l'installazione e l'attivazione del plugin. Procedi quindi alla sezione delle impostazioni Redis nel menu della dashboard. A questo punto diventa imperativo abilitare la funzionalità Object Cache.

Seguendo queste istruzioni, Redis verrà configurato utilizzando le impostazioni predefinite.

Verifica

Nel contesto dell'ottimizzazione del sito web, quando si accede a un blog sul tuo sito web, come il blog WordPress "ciao mondo" predefinito, i risultati di questa richiesta vengono archiviati nel datastore Redis.

Successivamente, accedere al terminale e avviare Redis Command Line Interface (CLI) utilizzando il comando " redis-cli " insieme ai tasti specificati (indicati come *). A questo punto, noterai che Redis ha debitamente registrato le nuove chiavi WordPress (wp).

Questa configurazione completa la configurazione di Redis per scopi di memorizzazione nella cache all'interno dell'ambiente WordPress.

Per testimoniare gli effetti, procedi ad aggiornare la home page che hai inizialmente caricato, utilizzando contemporaneamente Query Monitor.

L'osservazione risultante rivela un notevole miglioramento: la pagina ora si carica con sole tre query di database, ciascuna completata in una velocità estremamente rapida di 0,0003 millisecondi. Questa ottimizzazione ha sostanzialmente alleviato il carico cumulativo sul tempo di elaborazione delle query del nostro database. Le suddette query vengono ora sistematicamente archiviate in memoria, riducendo così la frequenza delle chiamate dirette al database MySQL. Questa orchestrazione contribuisce collettivamente a migliorare la reattività del backend nel soddisfare le richieste in arrivo.

Avvolgendo

Questo sarà fondamentale per rendere il tuo sito web più veloce se gestisci un sito web di grandi dimensioni come Woo-Commerce. Inoltre, memorizzando nella cache i processi ad uso intensivo del database, il sito Web sarà più resiliente.

Anche quando più persone effettuano ordini, utilizzano comunque la cache per recuperare i dati. Verranno utilizzate meno risorse e l'esperienza di backend sarà più rapida.

Redis memorizza nella cache solo oggetti e query di database. Ciò significa che puoi continuare a utilizzare altri plugin di cache per memorizzare nella cache le tue pagine e velocizzare il tuo sito web, come Cache Enabler e WP Cloudflare .

Divi WordPress Theme