¿Qué necesitas ahora? Un DEBUG! Tienes que ver cuánto tiempo tarda en cargarse la página. Menos de medio segundo está bien y menos de un segundo es razonable... si tarda más, mira dónde falla.
Pon contadores usando microtime() en diversos puntos de la página
list($usec, $sec) = explode(' ',microtime());
$cronometro['punto de interés 1'] = ((float)$usec + (float)$sec);
Reescribe o cachea las partes del código que tarden más
Y registra el tiempo que tarda cada consulta de MySQL. Si ves que hay consultas lentas usa EXPLAIN para ver por qué son lentas. Si no puedes optimizarlas y se repiten a menudo, asegúrate de que tu servidor de MySQL tiene la query_cache activada (
SHOW VARIABLES LIKE 'query_cache_size';
tiene que ser > 0).Si no está activa, usa
SET GLOBAL query_cache_size = 524288;
para activarla. Le he puesto 512 MB de RAM asignada a la query cache: si no tienes un servidor dedicado no sé si podrás hacer esto :-)Es INCREÍBLE el efecto que esto tiene sobre el rendimiento.
OJO! al hacer cualquier ALTER, INSERT o UPDATE de la tabla se pierde la caché. Así que si usabas algún campo "hits" para registrar accesos a páginas de la web o similar, ya estás normalizando eso y poniéndolo en otra tabla por separado.
No hay comentarios:
Publicar un comentario