Come correggere l'utilizzo elevato della CPU in WordPress

Pubblicato: 2022-10-25

Questo articolo ti guiderà attraverso alcuni metodi per risolvere le cause comuni di un elevato utilizzo della CPU in WordPress.

Aggiorna WordPress

Questa è la soluzione più semplice, quindi è meglio iniziare da qui prima di addentrarsi in quelle più complicate.

La mancanza di un importante aggiornamento di WordPress farà sì che il tuo sito non funzioni in modo ottimale e, a sua volta, creerà un maggiore carico della CPU sul server host.

Fortunatamente, l'aggiornamento di WordPress è semplice come un solo clic! Basta andare su Dashboard> Aggiornamenti. Qui puoi vedere se è disponibile una nuova versione di WordPress da installare. Fai clic su "Aggiorna ora" e sei a posto!

Controlla i tuoi plugin

I plugin sono una delle cause più comuni di problemi di prestazioni in WordPress. Esistono diversi modi in cui i plug-in consumano le risorse della CPU:

  • Alcuni plugin eseguono attività in background costanti
  • Alcuni plugin potrebbero non essere aggiornati o non eseguire una versione stabile
  • Alcuni plug-in sono dotati di un carico di funzionalità e impostazioni che non utilizzi ma che sono ancora in esecuzione in background
  • I plugin possono implementare reindirizzamenti che causano un loop di reindirizzamento

Puoi utilizzare l'estensione WP Hive Chrome per verificare l'impatto che i tuoi plug-in stanno avendo sulle prestazioni del sito. Oppure puoi farlo alla vecchia maniera disabilitando i plugin per vedere quale impatto ha.

Assicurati che il tuo sito sia ottimizzato

Se l'utilizzo della CPU di WordPress è superiore al 90%, molto probabilmente è causato da picchi di hosting o di traffico e dovresti prima occuparti di queste aree. Tuttavia, è sempre una buona idea semplificare il tuo sito e ridurre il carico della CPU con alcuni semplici suggerimenti per velocizzare il tuo sito WordPress. Questi includono:

  • Minimizzazione e compressione dei file
  • Cache
  • Ottimizzazione delle immagini
  • Hosting di video all'esterno

Disattiva WP-CRON

Cron è un'utilità della riga di comando che pianifica le attività da eseguire automaticamente. Questi comandi sono noti come "cron job". In WordPress, i lavori cron sono gestiti da WP-CRON. Tuttavia, WP-CRON è semplicemente una funzione che WordPress utilizza per imitare la funzionalità di un vero cron job.

WP-CRON può causare problemi di prestazioni perché si attiva ogni volta che viene caricata una pagina anziché in base a una pianificazione definita. Ciò significa che con un traffico elevato, WP-CRON verifica la presenza di eventi pianificati ogni volta che qualcuno carica una pagina e mette a dura prova il server. D'altra parte, se il sito non ha molto traffico, un evento programmato potrebbe non essere presente se nessuno carica la pagina.

Per molte persone, è meglio disabilitare semplicemente WP-CRON e utilizzare invece un vero cron job.

Come disabilitare WP-CRON

Per disabilitare WP-CRON, dovrai modificare il tuo file wp-config.php e aggiungere questo comando:

 define('DISABLE_WP_CRON', true);

Mettilo appena prima della riga che dice “/*Questo è tutto, smettila di modificare! Buona pubblicazione. */”.

disable cron

Come creare i tuoi cron job

La disabilitazione di WP-CRON ne impedisce solo l'esecuzione automatica, ma puoi comunque impostare veri e propri cron job che eseguono il comando wp-config.php on.

Ci sono diversi modi per farlo:

  • Potresti essere in grado di impostare cron job tramite il pannello di controllo del tuo provider di hosting.
  • Se usi cPanel, puoi programmare i lavori cron andando su Avanzate> Lavori cron e configurandolo lì.
  • Usa plugin di terze parti come WP Crontrol.
  • Configura manualmente i cron job in SSH.

Scarica i contenuti su una rete di distribuzione dei contenuti

content deliver network

Quando qualcuno visita il tuo sito da un paese lontano dal server host, i dati impiegano più tempo a raggiungere il loro computer. Il tempo extra impiegato per fornire queste risorse richiede potenza di elaborazione nel server host.

La risposta a questo problema? CDN (Content Delivery Network).

Una rete di distribuzione dei contenuti è un sistema di server distribuiti geograficamente che contengono versioni memorizzate nella cache delle risorse statiche del tuo sito. Puoi scaricare il contenuto su questi server in modo che gli utenti ricevano le risorse dai server più vicini a loro. Ciò si traduce in tempi di caricamento più rapidi, una migliore esperienza utente e, soprattutto, riduce notevolmente l'utilizzo della CPU dal tuo sito WordPress.

Blocca i bot dannosi

Senza dubbio conosci già i bot di Google. Questi sono i "buoni robot". Scansionano e indicizzano il tuo sito per i motori di ricerca e il tuo SEO ruota attorno a loro.

Tuttavia, ci sono molti più bot che visitano il tuo sito WordPress ogni giorno. Molti di questi bot non sono dannosi, ma contribuiscono al traffico del tuo sito che può mettere a dura prova la tua CPU.

Puoi consultare questo elenco di bot di scansione comuni per sapere quali bloccare dal tuo sito web. Per impedire a un determinato agente utente di eseguire la scansione del tuo sito, devi creare una regola nel file robots.txt utilizzando il seguente formato:

 User-agent: BotName Disallow: /
block bad bots

Il "/" significa che li hai bloccati dalla directory principale e, di conseguenza, dall'intero sito. Se vuoi disabilitare solo i bot da una determinata directory, puoi scrivere:

Agente utente: BotName

 Disallow: /DirectoryName/

Puoi anche bloccare i bot attraverso il tuo file .htaccess aggiungendo la seguente regola:

 RewriteEngine On RewriteEngine On RewriteCond %{HTTP_USER_AGENT} UserAgentName [NC] RewriteRule .* - [F,L] To block multiple bots, format your rule like this: RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^.*(Bot1|Bot2|Bot3).*$ [NC] RewriteRule .* - [F,L]

In alternativa, puoi utilizzare un plug-in per catturare i fastidiosi bot e risparmiarti lo sforzo di controllarli e vietarli manualmente.

Consiglierei il plug-in Blackhole for bad bots. Ha un modo piuttosto intelligente di catturare i robot cattivi che è un po' come intrappolare una vespa in un bicchiere di acqua zuccherata.

Il plug-in aggiunge un collegamento al tuo sito che è visibile solo ai crawler. Questo collegamento funge da esca.

Quindi aggiungi una regola nel tuo robots.txt, impedendo ai bot di seguire questo link. Naturalmente, i bot spam ignoreranno questa regola e seguiranno il collegamento. Una volta che lo fanno, gli viene immediatamente vietato l'accesso al tuo sito.

Abbastanza intelligente, non è vero?

Controlla le tue opzioni di hosting

Se il tuo sito WordPress è alle prese con un elevato utilizzo della CPU, è probabile che tu non stia ricevendo abbastanza risorse del server dal tuo provider di hosting. Ciò è particolarmente vero se utilizzi l'hosting condiviso. L'hosting condiviso è una delle cause più comuni di CPU sovraccariche poiché sei costantemente in competizione per il potere con tutti gli altri siti Web ospitati su un server.

Se pensi di aver superato il tuo hosting condiviso, allora è il momento di dare un'occhiata agli altri tipi di provider di hosting:

  • Hosting Virtual Private Server (VPS): condividi ancora un server, solo che è diviso in partizioni virtuali in modo da poter disporre di risorse dedicate come memoria, core della CPU e archiviazione. Sei effettivamente isolato dagli altri siti, quindi un improvviso picco di traffico verso un altro sito sul server non ti influenzerà.
  • Cloud Hosting: il cloud hosting sta ottenendo un discreto successo in questi giorni. Essenzialmente funziona un po' come un CDN. Il tuo sito è archiviato su una rete di server virtuali e fisici anziché su un singolo server. Il cloud hosting è spesso più economico in quanto paghi solo per le risorse che utilizzi. Inoltre, poiché sei distribuito su più server, ottieni maggiore sicurezza, tempi di attività più affidabili e scalabilità sostanzialmente infinita.
  • Hosting dedicato: spesso considerata la crème de la crème del web hosting, questa opzione fornisce il tuo server personale, dandoti il ​​100% di controllo sulle risorse del server che utilizzi. D'altra parte, di solito è l'opzione più costosa e richiede alcune competenze tecniche per essere gestita correttamente.
  • Hosting gestito: con l'hosting gestito, il tuo provider host si prende essenzialmente cura del tuo server per te. Copriranno cose come manutenzione, aggiornamenti e sicurezza. Questo è più un componente aggiuntivo per altri tipi di hosting. Potresti avere un hosting condiviso gestito o un hosting dedicato gestito.

Conclusione

Ridurre l'utilizzo della CPU migliorerà notevolmente la salute generale del tuo sito WordPress, portando a prestazioni migliori, tempi di attività più coerenti e una migliore esperienza utente. Mentre molti dei suggerimenti in questo articolo ti aiuteranno a ridurre il carico della CPU, se stai costantemente sovraccaricando la CPU del tuo sito, allora è quasi sicuramente un problema di hosting.