.png)
Tengo una tienda de comercio electrónico que funciona con WordPress (junto con el uso de WooCommerce). Hemos operado el sitio durante aproximadamente 4 años y, en ese tiempo, nuestro sitio web ha crecido mucho en ventas y registros de clientes, lo cual es excelente, aunque, La desventaja es que nuestro sitio web se ha vuelto extremadamente lento en muchas áreas (esto incluye ejecutar tareas como editar productos desde el backend de la tienda y desde la perspectiva de cómo nuestros clientes navegan por nuestro sitio web y completan sus pedidos).
Creo que el desafío aquí es que, con el tiempo, se ha ido acumulando una gran cantidad de datos postmeta y de usuario en la base de datos MySQL y, como resultado, ha causado una caída real en el rendimiento, lo que está causando múltiples problemas en nuestro sitio. en cuanto a tiempos de carga.
Para ser exacto:
- Nuestra tabla de base de datos postmeta se compone de ~3,554,802 filas
- Nuestra tabla de base de datos usermeta se compone de ~2,759,005 filas
- Finalmente, woocommerce_order_itemmeta se compone de ~1,343,448 filas. Muchas de las otras tablas que tenemos presentes en nuestra base de datos generalmente están dentro de la región de seis cifras, en términos de recuento de filas.
Si bien sé que podemos seguir adelante y eliminar datos antiguos (por ejemplo, datos de pedidos antiguos, etc.), ¿alguien podría recomendar un enfoque alternativo para resolver el problema de rendimiento sin eliminar datos?
He visto artículos que recomiendan usar un complemento de indexación para indexar las tablas de base de datos donde el recuento de filas es alto; sin embargo, la última vez que probamos este enfoque, nuestra base de datos se corrompió (pero teníamos una copia de seguridad en espera lista para restaurar). )
Sé que hay muchas publicaciones/artículos con respecto a la hinchazón de WordPress, que viene con grandes cantidades de metadatos y posdatos acumulados dentro de la base de datos, pero ¿hay alguna recomendación, por ejemplo, motores/sistemas de base de datos alternativos que sean más adecuados para ¿Procesar mayores cantidades de datos?
¿O tal vez alguna recomendación basada en la realización de optimizaciones en nuestra base de datos actual para un procesamiento más rápido de tablas de base de datos con un gran número de filas? (Como una forma de acelerar el tiempo de carga de la página)
Especificación del servidor de base de datos MySQL:
Motor de tabla: INNODB
Actualmente estamos ejecutando nuestra base de datos en un servidor de base de datos remoto y estamos usando MySQL 8.0.
Especificación del servidor:
- Servidor básico
- CPU: 16 núcleos x 3,0 GHz (AMD Epyc 7302P)
- RAM: 128GB
- NVMe2 x 960 GB Hardware RAID 1