Analisi delle prestazioni di WPML – Area di amministrazione lenta, timeout della Dashboard di traduzione, ritardi nel front-end
I problemi di prestazioni di WPML (pagine dell’area di amministrazione lente, front-end a rilento, timeout della Dashboard di traduzione) sono quasi sempre riconducibili a un paio di fattori comuni. Questa pagina li analizza nell’ordine in cui dovresti controllarli, prima di dare per scontato che il problema sia WPML stesso.
-
Verifica dove si trova la lentezza
- Front-end lento, area di amministrazione veloce → probabile configurazione della cache di pagina intera o un plugin pesante sul front-end.
- Area di amministrazione lenta, front-end veloce → probabile sovraccarico dell’autoload di
wp_options, un plugin pesante solo per l’area di amministrazione o un server poco potente. - La Dashboard di traduzione in particolare è lenta → probabile un gran numero di articoli nella query della dashboard e memoria PHP o tempo di esecuzione insufficienti.
- Operazioni di traduzione lente → probabile problema di connettività con i servizi di traduzione; controlla il Registro delle comunicazioni in WPML > Supporto (vedi Log per sapere quale log risponde a quale sintomo).
-
Controlla le risorse del server
Apri WPML > Supporto. Il pannello degli avvisi in alto segnala una memoria PHP inferiore ai 256 MB consigliati da WPML. I siti con cataloghi più grandi hanno bisogno di 512 MB o più.
Altri sintomi legati alle risorse del server:
- Query del database lente. I siti di grandi dimensioni con molte traduzioni traggono vantaggio da un server di database basato su SSD,
innodb_buffer_pool_sizesufficiente e indici sulla tabellawp_icl_translations(questi vengono aggiunti da WPML; raramente è necessario un intervento manuale). - Tempo di esecuzione PHP. Se
max_execution_timeè inferiore a 60 secondi e la Bacheca va in timeout, aumentalo. - CPU. I piani di hosting condiviso hanno spesso limiti di CPU aggressivi; verifica con il tuo host se stai subendo limitazioni.
- Query del database lente. I siti di grandi dimensioni con molte traduzioni traggono vantaggio da un server di database basato su SSD,
-
Cache a oggetti
Senza una cache a oggetti, WordPress carica molte delle impostazioni di WPML dal database a ogni richiesta. Aggiungi Redis o Memcached come cache a oggetti (la maggior parte degli host WordPress gestiti lo offre; in caso contrario, i plugin Redis Object Cache o WP Redis lo abilitano).
Il miglioramento di solito è notevole. Le impostazioni che prima richiedevano accessi al database vengono fornite dalla memoria.
-
Cache di pagina intera
Una cache di pagina intera (WP Rocket, W3 Total Cache, edge cache del provider di hosting) è il singolo miglioramento delle prestazioni più grande per la velocità del front-end.
Se ne hai già una ma le pagine sembrano ancora lente, controlla se la tua cache gestisce correttamente gli URL per lingua. La struttura degli URL di WPML (che sia lingua come directory, lingua come sottodominio o lingua come dominio) richiede che la cache vari in base all’URL. La maggior parte delle cache lo fa automaticamente, ma vale la pena verificare che la versione francese non venga fornita dalla cache inglese o viceversa.
-
Plugin in conflitto o lenti
I siti accumulano plugin; alcuni sono ben costruiti e altri no. Per trovare un plugin lento:
- Installa Query Monitor (un plugin di debug).
- Ricarica una pagina lenta.
- Guarda Queries by Component. Il plugin con le query più pesanti è il sospettato.
Se la causa è un plugin, sostituiscilo o disabilita la funzionalità al suo interno che causa la lentezza.
-
Servizi di traduzione lenti, non il sito
Se i lavori di traduzione sembrano lenti ma il sito in sé va bene, il collo di bottiglia è tra il tuo sito e l’infrastruttura di traduzione di WPML.
Controlla WPML > Supporto > Registro delle comunicazioni. Il log mostra la latenza di ogni chiamata API. Se le singole chiamate impiegano molti secondi, il problema è la connettività (percorso di rete, DNS o limitazione in uscita del tuo provider di hosting), non il sito. Se invece la colpa è della cache di WPML, gli strumenti sicuri di risoluzione dei problemi includono Svuota la cache in WPML. Quando l’analisi delle prestazioni richiede l’intervento del Supporto, raccogli ciò che hai trovato tramite la Condivisione delle informazioni di debug con il supporto.