Saltar navegación

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 9 respuestas, tiene 2 voces.

Última actualización por Alejandro hace 2 meses, 1 semana.

Asistido por: Alejandro.

Autor Entradas
septiembre 16, 2024 en 8:15 am #16181989

eduardF

Antecedentes del problema:
Estamos teniendo problemas de rendimiento en cuanto al backend de nuestro e-comerce. A veces la respuesta del servidor en enviar el primer documento HTML es de entre 7 a 20 segundos y creemos que WPML podría estar causando este problema. La tabla wp_icl_string_translations pesa 30.6MB y en woocommerce tenemos pocos productos (34 productos).

Síntomas:
La tabla wp_icl_string_translations pesa 30.6MB, lo que podría estar causando problemas de rendimiento en el backend del sitio.

Preguntas:
¿Cómo podemos optimizar la tabla wp_icl_string_translations para mejorar el rendimiento del backend?
¿WPML tiene alguna herramienta o recomendación específica para manejar tablas pesadas en la base de datos?

septiembre 16, 2024 en 1:53 pm #16184312

Alejandro
Supporter

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

Zona horaria: Europe/Rome (GMT+01:00)

Hola!

Veo que tienes activo 8 idiomas y por más que tengas 34 productos, eso quiere decir que todo se multiplica por esos 8.

Aún así parece bastante. sospecho que hay revisiones o algo así en esa tabla.

------------

Comencemos con las cosas de base:

- Ve a WPML > Soporte > Solución de problemas
- Corre todas las opciones en la sección "Clean Up" de WPML, una a una hasta llegar a la opción "Check for strings issues"

- Una vez que hayas hecho eso revisa el tamaño de la tabla.
- También instala el Query Monitor y busca las queries lentas y repetidas.
- Envíame los resultados para saber como continuar.

septiembre 17, 2024 en 7:45 am #16186444

eduardF

Hola, ya he realizado tus indicaciones y efectivamente la tabla ha bajado a 2MB de peso. Te adjunto captura del Query monitor y el tamaño de la tabla. Igualmente sigo teniendo problemas de rendimiento ya que me tarda 1-5s en la primera visita de la pagina (adjunto captura).

Saludos.

QM consultas por solicitantespng.png
QM duplicados.png
WPML peso de la tabla.png
Timing devtools.png
septiembre 17, 2024 en 9:10 am #16187082

Alejandro
Supporter

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

Zona horaria: Europe/Rome (GMT+01:00)

1) Separemos el problema de back-end VS front-end para podernos entender mejor.

Los pasos de abajo sirven tanto para back-end como front-end pero en este caso nos concentramos en front-end

2) que tipo de cache de lado servidor usas?

3) Veo que usas WooCommerce, puedes tratar de ver si desactivando algunas extensiones de WC, el rendimiento mejora? esto te lo digo porque WooCommerce y sus extensiones usan llamadas AJAX y estas a veces son bastante frecuentes y por ende terminan usando bastante el CPU de tu servidor

4) Revisa por errores o notificaciones en el debug.log ya que muchas notificaciones pueden también crear lentitud justo porque el sistema pasa por un código de registro de errores cada vez que se ejecuta y si es muy frecuente, va a usar tus recursos, creando un pequeño cuello de botella.

---------------------

Creo que 2MB para un sitio e-commerce está bien, porque es cierto que tienes 34 productos, pero son bastantes idiomas y cada producto seguro tiene imagenes, atributos y en general metadatos que al final crean igual peso ya que son entradas en la base de datos que igual WPML tiene que tener en consideración. además que en esa tabla vas a encontrar no solo info sobre los productos sino también de otras cosas del sitio.

Por último, esto es lo que ví en tu sitio: enlace oculto

Allí veo que en realidad lo que más toma peso en tu sitio es el page builder y algunas llamadas de AJAX, pero no encuentro referencias de WPML que puedan estar causando este problema (al menos no en el front-end).

septiembre 17, 2024 en 10:25 am #16187625

eduardF

Utilizo W3 Total Cache como plugin de cache. He deshabilitado alguna extensión de Woocommerce y sigue igual. Veo que efectivamente WPML no tiene mucho que ver en esto. Entiendo lo del cache y los ajax, pero que el documento principal dure a veces 4 segundos a que se podría deber? es normal? Gracias por el video, saludos.

septiembre 17, 2024 en 2:56 pm #16189503

Alejandro
Supporter

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

Zona horaria: Europe/Rome (GMT+01:00)

Si es normal, no te lo sabría decir, pero es a veces un poco lento. cuando hablas de documento principal hablas de la homepage? porque en realidad por lo que vi, cuando tarda más de 2s (a nivel de DOM, en realidad ese tiempo el usuario no lo nota) es usualmente porque hay menos cosas en el cache.

Tal vez puedes cachear por más tiempo los scripts si estos no hacen cosas particulares, y son un poco más estaticos.

otra cosa es aumentar el tiempo de cache a algo más largo, aunque para e-commerce no creo que sea bueno.

De resto te recomiendo que busques si hay recursos muy usados con algunos archivos (wp-ajax por ejemplo que es el que maneja el AJAX y es bastante común en e-commerce) y otras cosas.

casi siempre usando los instrumentos como el de google para determinar velocidad y eso, logras encontrar optimizaciones que puedes hacer pero en general el sitio anda bastante veloz a nivel de lo que siente el usuario, que es algo bueno!

Si logras también encontrar un modo para hacer el preloading del cache, eso seguro ayudarà también.

Por último puedes probar a ver si haciendo el upgrade del PHP a la versión 8.0, ves algún cambio.

Saludos.

septiembre 19, 2024 en 7:05 am #16196179

eduardF

Hola, disculpa la respuesta tan tarde. Al documento principal me refiero al documento que carga por primera vez en cualquier página (el HTML). Te adjunto captura de lo que me refiero. En la captura está cuando carga bien y cuando carga mal. si te fijas hay una diferencia abismal de 3 segundos siendo la misma pagina pero en inglés. Consultaré lo de actualizar a PHP 8 con mis compañeros.

Documento bien cargado.png
Documento mal cargado.png
septiembre 19, 2024 en 4:14 pm #16200228

Alejandro
Supporter

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

Zona horaria: Europe/Rome (GMT+01:00)

Tendrías que revisar si esa llamada de 700ms estaba cacheada o no (muy pobablemente lo estaba). En el video cuando hacía tests, obtuve resultados muy parecidos en todos los idiomas, con y sin cache.

Puedes decirme que host usas y que plan usas?

septiembre 20, 2024 en 10:30 am #16202392

eduardF

Uso RAIOLA para hostear mi web y tiene las características de la captura adjuntada. He visto que como almacenamiento usa HDD. Esto puede influir en el performance de la web?

Captura de pantalla 2024-09-20 123010.png
septiembre 20, 2024 en 2:38 pm #16203417

Alejandro
Supporter

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

Zona horaria: Europe/Rome (GMT+01:00)

Si influye y seguro eso te da un buen boost, pero igual en tu caso lo único que tienes que buscar es un cache preload.

Por lo que veo W3 tiene uno: enlace oculto

Con eso apenas se limpie el cache, se hará un preloading que evitará justo ese reload "lento" que sucede en todas las páginas cuando no se encuentra en cache, porque ese tiempo extra que ves entre un idioma y otro es solo una versión no cacheada del sitio.

Saludos.