Saltar navegación

Este hilo está resuelto. Aquí tienes una descripción del problema y la solución.

Problem:
I am having an issue with slow product editing on my WooCommerce website with two languages. When editing products, the administration becomes very slow, and editing 5 or 6 products can potentially saturate the server, leading to website crashes (Error 503 or Error 500). After deactivating all plugins, it was identified that the "sitepress-multilingual-cms" and "woocommerce-multilingual" plugins are causing slowdowns due to numerous admin-ajax requests, specifically related to WPML.

Solution:
1. Increase the WordPress memory limit to a minimum of 128Mb by adding the following code to the wp-config.php file:

define('WP_MEMORY_LIMIT', '512M');

2. After increasing the memory limit, go to Plugins -> Add New -> 'Commercial' tab -> Update the WPML plugins.
3. If the issue persists, contact your hosting providers and ask them to increase the memory limit on the server-side.

Relevant Documentation:
- WordPress Memory Limit: https://wpml.org/home/minimum-requirements/
- Debugging in WordPress: https://wordpress.org/documentation/article/debugging-in-wordpress/
- Troubleshooting with WPML and WooCommerce plugins.

Este es el foro de soporte técnico de WPML, el plugin multilingüe de WordPress.

Todas las personas pueden leerlo pero solo los clientes de WPML pueden ingresar comentarios. El equipo de WPML responde en los foros 6 días a la semana, 22 horas por día.

Etiquetado: 

Este tema contiene 21 respuestas, tiene 2 voces.

Última actualización por Carlos Rojas hace 1 año, 7 meses.

Asistido por: Carlos Rojas.

Autor Publicaciones
octubre 27, 2023 a las 8:06 am #14675941

Carlos Rojas
Partidario de WPML desde 03/2017

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Hola,

Nuestros especialistas han revisado la copia del sitio y no han podido reproducir el problema. Todo indica a que se puede tratar de limitaciones en el servidor donde se aloja el sitio web de su cliente, por lo que le recomiendan que contacten con sus proveedores de hosting y les pida que revisen la configuración del servidor. Este enlace puede ayudarle a comprender qué debe tener en cuenta antes de solicitar dicha información: enlace oculto

Saludos!

octubre 27, 2023 a las 8:07 am #14675953

Carlos Rojas
Partidario de WPML desde 03/2017

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

También es necesario que le pida a sus proveedores de hosting los logs del lado del servidor para obtener más información acerca de este comportamiento.

octubre 30, 2023 a las 3:07 pm #14693063

fernandoS-14

Hola Carlos, la verdad que estoy en una encrucijada...
Lo del servidor me dicen que hay lentitud en la carga de el plugin WPML.

- Yo sigo con este problema y lo unico que hago, es de interlocutor entre ustedes y el proveedor de hosting.

Me dan esta respuesta, todo apunta a lo mismo... ¿que más te puedo pasar? ya tienes los accesos, dime que pueden necesitar.

Hemos completado la revisión y vemos que todo apunta a los plugins sitepress-multilingual-cms y woocommerce-multilingual como principal motivo del comportamiento que nos indicabas.

Vemos que estos plugins llega a ejecutar peticiones admin-ajax con hasta 11541 que pueden producir ese tipo de ralentizaciones, en concreto hemos visto esta cadena:

enlace oculto POST:wpml_save_job_ajax

Principalmente son estos plugins los que también ejecutan más peticiones admin-ajax por cada comentario o entrada que editas y casi por cada acción realizada.

octubre 31, 2023 a las 8:56 am #14697627

fernandoS-14

Hola Carlos, mira lo que me responden desde el proveedor de hosting - Dime que opinas -

Efectivamente, tenemos un sistema de ratelimit nginx en nuestros alojamientos y que aplica por defecto a todos los dominios en nuestros servidores. Este sistema, esencialmente, retrasa las peticiones desde una determinada IP o a un determinado componente (por ejemplo las que se realizan a admin-ajax) cuando la velocidad a la que se realizan las mismas es muy elevada, ya que podría indicar que algún plugin no está funcionando bien, o incluso ser síntoma de un ataque.

Aunque hay casos en que este sistema puede afectar al funcionamiento correcto de un componente, en cuyo caso lo desactivamos, no nos consta relación entre dicho sistema y el funcionamiento de WPML en los WordPress instalados en nuestros alojamientos. En casos donde el consumo de recursos es elevado, además, no lo quitamos hasta que se ha reducido dicho consumo de recursos de forma general, ya que sin este sistema de ratelimit, una web que está consumiendo muchos recursos por realizar muchas peticiones a admin-ajax va a fallar mucho antes con este sistema desactivado.

Dicho todo esto, y aunque el error lo reportas para la administración de la web, he conseguido reproducir varias veces los errores 500 y el consumo de recursos elevado navegando por tu web, en particular, en las vistas de producto. Te comento lo que he visto para que podáis realizar pruebas ya que posiblemente corrigiendo lo que he visto, se note también una mejora de rendimiento general al trabajar en la administración.

Para reproducir lo que he revisado, puedes abrir la pestaña de red del inspector del navegador; puedes abrir el inspector haciendo clic derecho en cualquier parte de la web, seleccionando el elemento Inspeccionar del menú contextual que te aparecerá, y seleccionando la pestaña de Red del panel que se te mostrará.

Si entras por ejemplo a enlace oculto , verás lo que te muestro en la captura de pantalla que te adjunto: la página tarda más de 7 segundos en cargar, y carga en total más de 350 elementos, lo cual es muchísimo; más si tenemos en cuenta que 140 de ellos son recursos externos. Un recurso externo no pasa, por definición, por sistema alguno de cache, ni de la web ni del servidor; es por ello que verás que estos recursos externos si afectan al tiempo de carga (y por tanto rendimiento) de la web, a diferencia de los recursos locales que carga desde la cache de disco.

De estos recursos externos, el que más llama la atención son decenas de llamadas a este elemento: enlace oculto , que es un script externo de Stripe. Una cosa es llamar a un script externo si es necesario, pero tu web, en las páginas de producto, los está llamando muchas veces, lo cual indica que algo no está funcionando bien o no está bien configurado.

Si recargo una página de producto varias veces seguidas, haciendo algo de scroll tras cada recarga, acabo consiguiendo "tumbar" la web, es decir, produzco un consumo de recursos tan elevado debido a estas llamadas que la web devuelve un error 500.

Te recomendaría que revisases y corrigieses todas estas llamadas, en particular las de recursos externos y más concrétamente las de Stripe, reduciéndolas en la medida de lo posible, lo cual va a tener un impacto muy notabel en el rendimiento de la web. Como te decía, 350 peticiones en una página de un único producto es un número elevadísimo, pero si además casi la mitad son de recursos externos, son peticiones que no van a pasar por sistema alguno de cache, así que hay que optimizar ese apartado en lo posible.

octubre 31, 2023 a las 9:27 am #14697815

Carlos Rojas
Partidario de WPML desde 03/2017

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Hola,

Partiendo del hecho que somos especialistas de soporte técnico de WPML y no especialistas de soporte del hosting que está utilizando, pues me parece correcta la explicación y tiene mucho sentido que le invite a revisar las llamadas que más tiempo consumen cuando se muestra un producto.

Sin embargo creo que hemos partido de una hipótesis incorrecta, y es que no es 'normal' que se abran 5, 7. 10 pestañas para editar productos al mismo tiempo. Si se sigue el procedimiento normal de editar los producto de uno en uno, pues no sucede el problema. Lo que indica que, a pesar de que debe comprobar cual funcionalidad está haciendo las llamadas a Stripe, tambiém debería indicarle a su cliente que edite los productos de uno en uno para evitar éste u otros problemas.

Para aislar la causa del problema con las llamadas Stripe puede seguir este procedimiento:
- Cree una copia de seguridad del sitio completo
- Actualice cualquier plugin o tema que pueda estar desactualizado
- Borre cualquier memoria cache que pueda existir
- Desactive todos los plugins, incluyendo los de WPML
- Active un tema por defecto de WordPress, por ejemplo: Twenty Twenty
- Active los plugins de WPML, Woocommerce y Woocommerce Multilingual
- Si el problema desapareció, comience activando el tema y luego el resto de los plugins, uno por uno, hasta que el problema vuelva a aparecer y encuentre al culpable.

octubre 31, 2023 a las 10:45 am #14698513

fernandoS-14

Hola Carlos, gracias por la explicación. Te copie todo, para saber tu opinión...

El tema de editar varios productos es un ejemplo entre nosotros para "hacer caer la web", si te pones a navegar, y recargas la página varias veces, ocurre exactamente lo mismo.

Seguiré investigando... pero, seguimos con el problema.

Gracias por todo.

octubre 31, 2023 a las 1:23 pm #14700085

Carlos Rojas
Partidario de WPML desde 03/2017

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Comprendo perfectamente.

Quedo a la espera de su mensaje.