Por que el uso alto de CPU es un problema critico

El uso excesivo de CPU en un servidor de hospedaje compartido no solo ralentiza el sitio afectado sino que puede impactar negativamente a todos los sitios alojados en el mismo servidor. En planes con CloudLinux, el sistema aislara automaticamente la cuenta que supera su limite de CPU, mostrando errores 508 o 503 a los visitantes. En VPS y servidores dedicados, el uso sostenido al 100% de CPU puede hacer que el servidor deje de responder completamente.

Causas comunes del uso alto de CPU

CausaComo identificarSolucion
Plugin de WordPress con proceso pesadoEl uso de CPU coincide con la activacion del pluginDesactivar plugins uno por uno hasta identificar el culpable
Paginas sin cache generando PHP en cada visitaAlto CPU correlacionado con el traficoActivar cache de paginas con LiteSpeed Cache
Consultas MySQL no optimizadasSlow query log muestra consultas lentasAgregar indices y optimizar las consultas
Script de wp-cron ejecutandose frecuentementePicos de CPU regulares independientes del traficoDeshabilitar wp-cron interno y usar cron real del servidor
Proceso de indexacion de busquedaCPU alto despues de publicar contenidoUsar busqueda indexada externamente (Elasticsearch, Algolia)
Malware o cryptominerCPU alto aunque el sitio tenga poco traficoEscanear con ImunifyAV y limpiar
Generacion de imagenes en tiempo realCPU alto al cargar paginas con imagenesRegenerar las miniaturas y usar imagenes ya procesadas

Identificar el proceso que consume CPU

# Ver los 10 procesos que mas CPU consumen
ps aux --sort=-%cpu | head -11

# Monitoreo en tiempo real con htop
htop

# Ver el uso de CPU de los procesos PHP
ps aux | grep php | sort -k3 -rn | head -20

Optimizar WordPress para reducir el uso de CPU

  1. Activar el cache de paginas: Con LiteSpeed Cache activo, las paginas se sirven directamente por el servidor sin ejecutar PHP, eliminando practicamente el consumo de CPU relacionado con el trafico de usuarios.
  2. Deshabilitar wp-cron interno y usar cron real: Agregar define('DISABLE_WP_CRON', true); en wp-config.php y configurar una tarea cron real en el servidor para ejecutar wp-cron.php cada 5 minutos.
  3. Usar Redis como cache de objetos: Reduce el numero de consultas a la base de datos, disminuyendo indirectamente el uso de CPU.
  4. Limitar las revisiones de posts: Agregar define('WP_POST_REVISIONS', 3); en wp-config.php para evitar la acumulacion de revisiones que hacen mas pesadas las consultas.
¿Fue útil la respuesta? 0 Los Usuarios han Encontrado Esto Útil (0 Votos)