Optimización AJAX 2: compresión GZIP

Habilitar la compresión de la respuesta puede reducir la cantidad de datos enviados alrededor de un 70%. La mayoría de los navegadores soporta recibir contenidos, e informan de esta capacidad al servidor al realizar una petición. Es posible agregar la indicación de comprimir la respuesta del servidor en su configuración de acuerdo al mime-type de… Continue reading Optimización AJAX 2: compresión GZIP

Optimización AJAX 1: elección del método HTTP

Si bien las interacciones en AJAX nos permiten obtener información de forma dinámica desde el servidor de un sitio web o aplicación, existen varias formas de aumentar la velocidad de estas respuestas para mejorar la experiencia de nuestros usuarios al cargar información bajo demanda, obtener datos de búsquedas u otras interacciones. Más allá de la… Continue reading Optimización AJAX 1: elección del método HTTP

En un trabajo de optimización es necesario revisar cientos de factores que pueden estar influyendo en el funcionamiento de un sistema, entre los que la base de datos puede tener un rol clave. Afortunadamente existen múltiples herramientas automatizadas que nos pueden facilitar este trabajo, o al menos darnos un punto de partida para poder ajustar las configuraciones de MySQL de modo de sacar el máximo provecho al hardware que estás utilizando.

  • mysqltuner es una de las alternativas más conocidas y por lo mismo se puede encontrar en los repositorios de varias distribuciones, pero en caso que no sea así la puedes descargar desde su repositorio en GitHub. Dado que se trata de un “simple” script en Perl, basta bajarlo y otorgar permisos de ejecución para obtener una serie de datos críticos y sugerencias de optimización, orientadas tanto a mejorar el performance como la estabilidad.
  • mysql-tuning-primer funciona de modo similar, y lo puedes descargar desde su página de proyecto en Launchpad. En este caso es un script en bash, que a partir de las variables de status de MySQL intenta generar recomendaciones sensatas para optimizar el servidor. Además de las sugerencias de configuración, en varios casos agrega información adicional para comprender de mejor forma el contexto de los ajustes en caso que no tengas un conocimiento muy acabado de las variables en las que indica modificaciones.

Aunque ambas herramientas entregan información muy valiosa para realizar mejoras en el funcionamiento de tu base de datos, es fundamental complementarlas con un conocimiento acabado de cada una de las variables de configuración y el funcionamiento de la aplicación para abordar exitosamente la tarea de optimización.

Pruebas de performance, carga y de estrés

Una ayuda-memoria breve, para tener claros tres conceptos que a veces se confuden: Una prueba de performance tiene como objetivo eliminar “cuellos de botella” en la ejecución de una aplicación y poder determinar una medida aceptable para su funcionamiento, por ejemplo, cuál es un tiempo de respuesta aceptable y la carga esperada en relación al… Continue reading Pruebas de performance, carga y de estrés

PHPSpeedy: mejora el tiempo de carga de tu sitio

Hay muchas formas de mejorar el tiempo de carga de una página; algunas de ellas son: realizar menos peticiones al servidor agregar una cabecera de expiración muy lejana en el futuro comprimir los componentes de la página “minificar” tu javascript, css, html PHP Speedy es un script para PHP que realiza estas cuatro tareas automáticamente.… Continue reading PHPSpeedy: mejora el tiempo de carga de tu sitio