En un reciente Business Bloomer Club Slack Thread, un propietario del sitio de WooCommerce, buscó consejos para diagnosticar un alto consumo de recursos PHP-FPM en su servidor VPS alojado con Plesk. A pesar de una carga de tráfico relativamente moderada, el sitio, en general en términos de recuento de productos y ejecutados en varios idiomas a través de WPML, estaba experimentando un alto uso de CPU y memoria, lo que llevó al usuario a sospechar el tema del sitio y las funciones personalizadas como posibles culpables. Su objetivo era identificar con precisión qué scripts o funciones consumían recursos excesivos.
La discusión cubrió herramientas y estrategias efectivas para diagnosticar problemas de carga del servidor. Soluciones de monitoreo de rendimiento avanzado (APM) como Nueva reliquia fueron recomendados como ideales para identificar líneas de código específicas que pueden estar ralentizando el sitio. Dichas herramientas pueden desglosar los tiempos de ejecución, ayudando a los usuarios a comprender qué complementos, scripts o funciones personalizadas están consumiendo recursos.
Diagnosticar el consumo de recursos con APM
Un enfoque efectivo sugerido fue utilizar una solución APM, como la nueva reliquia, para identificar cuellos de botella de rendimiento. Al examinar las métricas como el tiempo dedicado a la función o el script, las herramientas APM ayudan a determinar qué elementos del sitio son pesados de recursos. Estas ideas pueden guiar los ajustes necesarios y habilitar la resolución de problemas específicas.
Pasos de optimización de rendimiento tomados
El usuario siguió estos pasos de diagnóstico para reducir los problemas:
- Cambiar a un tema básico: Al usar temporalmente un tema predeterminado, podrían evaluar si el tema del sitio estaba contribuyendo a la carga.
- Desactivando complementos: Deshabilitar todos los complementos y luego reactivarlos uno por uno ayudó a restablecer configuraciones en caché y a determinar posibles conflictos de complementos.
- Encabezados de tiempo de servicio de servidor: Utilizando los encabezados de torsión del servidor, compararon el rendimiento de PHP para ver cómo las funciones específicas afectaron los tiempos de carga.
Curiosamente, después del reinicio inicial del complemento y la rehabilitación de todas las funciones del sitio, el consumo de recursos se estabilizó en un nivel más bajo sin ningún cambio adicional. Esto planteó la posibilidad de que los datos en caché o las configuraciones antiguas pudieran haber estado causando la alta carga inicial.
Mejoras adicionales
Para optimizar aún más el rendimiento, el usuario implementó Redis en cachéreduciendo significativamente la carga de consultas de bases de datos y mejorando la eficiencia de los recursos. El cambio a PHP-FPM sobre FastCGI también contribuyó al procesamiento de PHP más eficiente.
Control de llave
- Usar herramientas APM: Soluciones como New Relic proporcionan información profunda sobre las que el código o los complementos impactan más el rendimiento.
- Administración de caché y complementos: A veces, desactivar y reactivar complementos o agregar un caché redis puede restablecer los problemas de rendimiento.
- Configuración del servidor: PHP-FPM a menudo proporciona una mejor gestión de recursos que FASTCGI, especialmente en sitios de alta carga.
Para los usuarios de WooCommerce que experimentan picos de recursos inexplicables, estas estrategias ofrecen un enfoque estructurado para diagnosticar y optimizar el rendimiento del sitio.