En nuestro registro de consultas lentas de MySQL, la consulta más lenta acumulativa es una actualización simple de wp_postmeta. Aquí hay un ejemplo:
UPDATE 'wp_postmeta'
SET 'meta_value' = '1392835505:386'
WHERE 'post_id' = 94705 AND 'meta_key' = '_edit_lock';
Detalles relevantes en nuestra configuración:
- El tiempo de consulta lento de MySQL se establece en 1s
- el motor de almacenamiento de wp_postmeta es InnoDB
- Se ejecuta dentro de una gran instalación multisitio con decenas de miles de publicaciones en el blog principal de WP (donde ocurren estas consultas lentas)
- Alta actividad en el área de administración de WP (muchos escritores / editores trabajan simultáneamente, pero generalmente en su propio contenido (no en el de otros)
- Baja actividad en el lado público de WP (en realidad no sirve contenido del blog principal)
- Las consultas lentas parecen estar usando la clave "_edit_lock"; Las consultas del mismo formato (que utilizan una clave distinta de "_edit_lock") no parecen ser lentas.
¿Por qué es esta la consulta más lenta en nuestro sistema? ¿Tiene algo que ver con el uso específico de WP de "editar bloqueos"?
Gracias! :)
Actualización: salida de mysqlsla a continuación:
______________________________________________________________________ 001 ___
Count : 606 (16.83%)
Time : 2257.760468 s total, 3.725677 s avg, 1.00512 s to 84.645869 s max (20.60%)
95% of Time : 1355.289277 s total, 2.357025 s avg, 1.00512 s to 12.343604 s max
Lock Time (s) : 182.502 ms total, 301 μs avg, 29 μs to 157.542 ms max (0.21%)
95% of Lock : 22.882 ms total, 40 μs avg, 29 μs to 57 μs max
Rows sent : 0 avg, 0 to 0 max (0.00%)
Rows examined : 1 avg, 1 to 2 max (0.00%)
Database : xxx_wp
Users :
xxx_wp@localhost : 98.84% (599) of query, 51.03% (1837) of all users
yyy_wp@localhost : 1.16% (7) of query, 0.94% (34) of all users
Query abstract:
SET timestamp=N; UPDATE wp_postmeta SET meta_value = 'S' WHERE post_id = N AND meta_key = 'S';
Query sample:
SET timestamp=1392835506;
UPDATE 'wp_postmeta' SET 'meta_value' = '1392835505:386' WHERE 'post_id' = 94705 AND 'meta_key' = '_edit_lock';