LiteSpeed Cache: Ottimizzazione Database e Object Cache
Il database è il cuore di ogni sito WordPress. Ogni pagina visualizzata richiede decine di query SQL per recuperare contenuti, impostazioni, metadati e opzioni. Con il passare del tempo, il database accumula dati obsoleti, tabelle frammentate e overhead che rallentano progressivamente le query. L’ottimizzazione del database e l’implementazione di un Object Cache sono due strategie complementari che possono ridurre drasticamente il tempo necessario per generare le pagine.
LiteSpeed Cache include strumenti integrati sia per la pulizia del database che per l’Object Cache, rendendo superflua l’installazione di plugin dedicati come WP-Optimize o Redis Object Cache. In questa guida vedremo come configurare entrambe le funzionalità per ottenere il massimo delle prestazioni.
Perché il Database Rallenta nel Tempo
Un’installazione WordPress fresca ha un database snello e veloce. Ma nel corso dei mesi e degli anni, il database accumula:
- Revisioni dei post: WordPress salva automaticamente una revisione ogni volta che modifichi un articolo. Un articolo modificato 50 volte ha 50 revisioni nel database
- Auto-draft: bozze automatiche create mentre scrivi, che non vengono mai cancellate
- Commenti spam e nel cestino: commenti che occupano spazio inutilmente
- Transient scaduti: dati temporanei nella tabella
wp_optionsche non vengono puliti automaticamente - Tabelle orfane: tabelle create da plugin disinstallati che non vengono rimosse
- Dati di post nel cestino: articoli, pagine e prodotti cancellati che restano nel database
- Overhead delle tabelle: frammentazione causata da frequenti inserimenti e cancellazioni
Un database con questi problemi può essere 2-5 volte più grande del necessario, con query che impiegano 2-3 volte più tempo del dovuto.

Pulizia del Database con LiteSpeed Cache
LiteSpeed Cache offre un set completo di strumenti per la pulizia del database. Vai su LiteSpeed Cache > Database per accedere a queste funzionalità.
Le operazioni disponibili sono:
Clean All Post Revisions: elimina tutte le revisioni dei post. Questa è solitamente l’operazione più impattante, poiché le revisioni possono occupare una porzione significativa del database. Su un sito con centinaia di articoli, non è raro trovare migliaia di revisioni.
Clean All Auto Drafts: elimina le bozze automatiche create da WordPress. Queste sono copie temporanee create durante la scrittura che dovrebbero essere cancellate automaticamente ma spesso non lo sono.
Clean All Trashed Posts: svuota il cestino dei post, delle pagine e dei prodotti WooCommerce.
Clean Spam Comments: elimina tutti i commenti marcati come spam. Se usi Akismet o un altro plugin anti-spam, questi commenti si accumulano rapidamente.
Clean Trashed Comments: elimina i commenti nel cestino.
Clean Expired Transients: rimuove i transient scaduti dalla tabella wp_options. I transient sono dati temporanei utilizzati da WordPress e dai plugin per il caching interno. Quelli scaduti sono completamente inutili e rallentano le query sulla tabella wp_options.
Optimize Tables: defragmenta le tabelle del database, recuperando lo spazio inutilizzato e migliorando le prestazioni delle query. È l’equivalente di un OPTIMIZE TABLE SQL.
Pulizia Automatica Programmata
Invece di eseguire la pulizia manualmente, puoi programmarla per essere eseguita automaticamente. In LiteSpeed Cache > Database > DB Optimization Settings, configura:
Revisions Max Number: il numero massimo di revisioni da mantenere per ogni post. Impostare su 5 è un buon compromesso: mantieni le ultime 5 revisioni per sicurezza ed elimini tutte le precedenti.
Revisions Max Age: l’età massima delle revisioni in giorni. Le revisioni più vecchie di questo limite vengono eliminate. 30 giorni è un valore ragionevole.
Puoi anche configurare il cron per eseguire automaticamente la pulizia a intervalli regolari. Questo mantiene il database snello senza intervento manuale.
Importante: Backup Prima della Pulizia
Prima di eseguire qualsiasi operazione di pulizia sul database, crea sempre un backup. Le operazioni di pulizia sono irreversibili: una volta eliminate le revisioni o i transient, non è possibile recuperarli senza un backup.
Puoi creare un backup del database tramite:
- Il pannello di controllo dell’hosting (Plesk, cPanel)
- WP-CLI:
wp db export backup.sql - phpMyAdmin: esporta tutte le tabelle
- Un plugin di backup come UpdraftPlus

Object Cache: Cos’è e Come Funziona
L’Object Cache è un sistema di caching che memorizza i risultati delle query al database in un archivio veloce (in memoria), evitando di interrogare il database per dati già recuperati di recente. È diverso dalla cache delle pagine: mentre la cache delle pagine memorizza l’intera pagina HTML generata, l’Object Cache memorizza i singoli risultati delle query SQL.
Perché è importante? Anche con la cache delle pagine attiva, non tutte le richieste vengono servite dalla cache. Le pagine dinamiche, le richieste AJAX, le pagine con contenuto personalizzato e le pagine del pannello di amministrazione generano query al database. L’Object Cache velocizza tutte queste richieste.
WordPress ha un sistema di Object Cache integrato, ma per impostazione predefinita utilizza una cache in memoria che vive solo per la durata della singola richiesta PHP. Questo significa che ogni nuova richiesta deve rieseguire tutte le query. Un Object Cache persistente (come Redis o Memcached) mantiene i risultati delle query tra una richiesta e l’altra, eliminando query ripetitive.
Redis vs Memcached
LiteSpeed Cache supporta due backend per l’Object Cache:
Redis:
- Supporta strutture dati complesse (liste, set, hash)
- Persistenza opzionale: i dati sopravvivono al riavvio del server
- Supporta le transazioni
- Può essere configurato con eviction policies sofisticate
- Leggermente più lento di Memcached per operazioni semplici
Memcached:
- Più semplice e leggero
- Leggermente più veloce per operazioni get/set semplici
- Multi-threaded nativamente
- Nessuna persistenza: i dati vengono persi al riavvio
- Supporto nativo per la distribuzione su più server
Per la maggior parte dei siti WordPress, Redis è la scelta consigliata. La persistenza dei dati significa che dopo un riavvio del server Redis, la cache non deve essere completamente ricostruita. Inoltre, Redis è più versatile e supportato da un ecosistema più ampio di plugin WordPress.
Configurazione dell’Object Cache
Per configurare l’Object Cache in LiteSpeed Cache:
- Verifica che il tuo hosting abbia Redis o Memcached installato. Puoi verificarlo dalla sezione LiteSpeed Cache > Cache > Object: il plugin ti dirà se i backend sono disponibili
- Vai su LiteSpeed Cache > Cache > Object
- Imposta Object Cache su “On”
- Seleziona il Method: Redis o Memcached
- Configura l’Host: solitamente
127.0.0.1(localhost) o il percorso del socket Unix - Configura la Port: 6379 per Redis, 11211 per Memcached (valori predefiniti)
- Salva le impostazioni
Dopo l’attivazione, LiteSpeed Cache creerà il file wp-content/object-cache.php (il “drop-in” di WordPress per l’Object Cache). Questo file intercetta tutte le chiamate al sistema di cache interno di WordPress e le reindirizza a Redis/Memcached.
Parametri Avanzati dell’Object Cache
Persistent Connection: attiva. Mantiene la connessione a Redis/Memcached aperta tra le richieste, evitando l’overhead di stabilire una nuova connessione per ogni richiesta PHP.
Cache WP Admin: attiva se lavori frequentemente nel pannello di amministrazione. Velocizza il caricamento delle pagine admin cachando le query ripetitive. Disattiva se riscontri problemi con l’aggiornamento dei contenuti nel backend.
Store Transients: attiva. Sposta i transient dal database a Redis/Memcached, alleggerendo la tabella wp_options e velocizzando le query.
Database ID: se hai più siti WordPress sullo stesso server che condividono la stessa istanza Redis, assegna un Database ID diverso a ciascun sito per evitare conflitti. Redis supporta 16 database (0-15).
Global Groups e Non-Persistent Groups: configurazioni avanzate che determinano quali gruppi di dati vengono cachati e quali no. I valori predefiniti sono adeguati per la maggior parte dei siti.

Impatto dell’Object Cache sulle Prestazioni
L’impatto dell’Object Cache dipende dalla complessità del sito:
Blog semplice: miglioramento del 10-20%. Un blog con pochi plugin e contenuti semplici non genera molte query ripetitive.
Sito aziendale con molti plugin: miglioramento del 20-40%. Ogni plugin aggiunge query al database, e l’Object Cache le riduce significativamente.
E-commerce WooCommerce: miglioramento del 30-50%. WooCommerce è noto per l’elevato numero di query al database, specialmente per il catalogo prodotti e le variazioni.
Sito BuddyPress/bbPress: miglioramento del 40-60%. Le community generano un volume enorme di query per profili utente, attività, notifiche e messaggi.
Questi miglioramenti si riferiscono al tempo di generazione della pagina (TTFB), non al tempo di caricamento complessivo percepito dall’utente. L’Object Cache è particolarmente efficace per le pagine non cachate (pagine dinamiche, backend, richieste AJAX).
Monitoraggio dell’Object Cache
Per verificare che l’Object Cache funzioni correttamente e sia efficace:
Dashboard LiteSpeed Cache: mostra statistiche sull’Object Cache, incluso il rapporto hit/miss.
Redis CLI: se hai accesso SSH, puoi monitorare Redis con il comando redis-cli info, che mostra statistiche dettagliate su memoria utilizzata, chiavi totali, hit e miss.
Query Monitor: il plugin Query Monitor mostra quali query vengono servite dall’Object Cache e quali dal database. È uno strumento prezioso per il debug delle prestazioni.
Un buon rapporto hit/miss è superiore all’80%. Se il rapporto è inferiore, potrebbe significare che la cache è troppo piccola o che il TTL è troppo breve.
Ottimizzazione della Tabella wp_options
La tabella wp_options è una delle più critiche per le prestazioni di WordPress. Viene interrogata in ogni singola richiesta, spesso più volte. Con il tempo, questa tabella può crescere enormemente a causa di:
- Transient accumulati (il problema più comune)
- Opzioni di plugin disinstallati che non vengono rimosse
- Opzioni autoloaded che non dovrebbero esserlo
LiteSpeed Cache risolve il problema dei transient spostandoli nell’Object Cache. Per le opzioni orfane, dovrai intervenire manualmente o con un plugin dedicato come Advanced Database Cleaner.
Per verificare lo stato della tua tabella wp_options, puoi eseguire questa query SQL (tramite phpMyAdmin o WP-CLI):
SELECT COUNT(*) FROM wp_options WHERE autoload = yes;
SELECT SUM(LENGTH(option_value)) FROM wp_options WHERE autoload = yes;
Se il numero di opzioni autoloaded supera 500 o la dimensione totale supera 1MB, la tabella ha bisogno di ottimizzazione.
Combinare Cache Pagina, Object Cache e Pulizia Database
Per ottenere il massimo delle prestazioni, tutte e tre le strategie devono lavorare insieme:
- Cache delle pagine: elimina la necessità di generare la pagina per la maggior parte dei visitatori
- Object Cache: velocizza la generazione delle pagine quando la cache non è disponibile (prima visita, pagine escluse, contenuto dinamico)
- Database pulito: assicura che quando il database viene effettivamente interrogato, le query siano il più veloci possibile
Ogni strato riduce il carico sullo strato sottostante. La cache delle pagine riduce le richieste all’Object Cache, l’Object Cache riduce le query al database, e un database pulito rende le query rimanenti più veloci.
Conclusione
L’ottimizzazione del database e l’Object Cache sono interventi “sotto il cofano” che non sono visibili dall’utente finale ma hanno un impatto significativo sulle prestazioni complessive del sito. LiteSpeed Cache rende questi interventi accessibili anche a chi non ha competenze di amministrazione database, fornendo strumenti semplici e sicuri per mantenere il database efficiente e per implementare un Object Cache persistente.
Serie Completa: LiteSpeed Cache per WordPress
- Installazione e Configurazione
- Configurazione Cache
- Ottimizzazione CSS e JavaScript
- Ottimizzazione Immagini e WebP
- Lazy Load e Placeholder
- CDN e QUIC.cloud
- LiteSpeed Cache e WooCommerce
- Critical CSS e Prefetch
- → Ottimizzazione Database e Object Cache
- Esclusioni e Cache Crawler
- LiteSpeed vs WP Rocket vs W3TC
- LiteSpeed vs Apache vs Nginx
- ESI e Cache Dinamica
- PageSpeed a 100
- Troubleshooting
L’ottimizzazione del database e la configurazione di Redis richiedono competenze sistemistiche. G Tech Group offre hosting WordPress gestito con Redis preconfigurato e manutenzione database inclusa. Contattaci per ottimizzare le prestazioni del tuo sito WordPress.
Migliora il Tuo Sito WordPress
Scopri le nostre guide complete sugli altri plugin essenziali per WordPress: