11 sept. 2013

Activar la compresión de contenidos, entender cómo gestionar la caché con Blogger: "Enable compression" y "Leverage browser caching"

Page Speed controla múltiples parámetros que analizan una página web  para evaluar su rendimiento y ofrecer un conjunto de sugerencias que pueden ayudar a mejorarlo. Para ello utiliza un conjunto de reglas que estamos analizando en cada entrega de esta guía de rendimiento para Bloggers.

En esta ocasión vamos a repasar dos nuevas reglas de Page Speed: "Enable compression" para activar la compresión a nivel de servidor web y "Leverage browser cahcing" para gestionar el uso de la memoria caché para acelerar la presentación de componentes de nuestra página.




Sugerencias de Page Speed analizadas paso a paso hasta el momento:

Aviso para principiantes, diversidad de temáticas adaptada a niveles de conocimiento en la materia:

Todos los cambios que se van a tratar en la guía son de eminente carácter técnico. Trato de explicarlo para hacerlo asequible a un público con escasos o nulos conocimientos en informática. No obstante, hay muchas de las reglas que este servicio ofrece que están dirigidas a usuarios expertos.
En caso de que dispongas de poca experiencia o conocimientos en materia web, si lo explicado en esta guía te resulta complejo, te recomiendo que realices estas otras guías simplificadas a tal efecto:


Conceptos previos imprescindibles para comprender la guía:

  • Page Speed una vez ha evaluado el rendimiento de tu sitio web o Blog te proporcionará una puntuación basada en la ponderación de los puntos enumerados en su análisis. Es muy importante entender que Page Speed sólo da sugerencias, ninguno de sus cambios es obligatorio. 

Conceptos previos para los no iniciados en informática o programación de páginas web:

A continuación repasamos sin entrar en profundos detalles técnicos y buscando facilitar la compresión a los usuarios más noveles en cada concepto que utilizaremos en la guía. Si tienes conocimientos pero no comprendes bien estos conceptos te puede venir bien repasarlos:
La compresión del contenido de una página web:
En una página web se puede activar la compresión de las páginas que sirve el servidor web al usuario. Recordamos que el servidor es "la máquina" que contiene las páginas que componen nuestro blog. Al realizar la descarga de las mismas para que el navegador del usuario las interprete y dibuje en su pantalla, si la compresión no está activada se gastará más tiempo en descargar la página que si está comprimida. 
Sin comprimir una página puede "pesar" 120KB  y comprimida bajar a 34KB, esto es una mejora en la cantidad de datos a descargar desde el servidor al cliente de hasta un 28,3%. 
la sugerencia de Page Speed sobre la compresión viene activada en los servidores web de Blogger  por defecto. Es decir, no es necesario realizar ninguna modificación en concreto en tu Blog para solucionar este "problema".
Gestionando el uso de la caché:
La caché, sin entrar en detalles muy técnicos que escapan a las pretensiones del artículo, es una "memoria intermedia" que se encuentra disponible en tu navegador para almacenar objetos o componentes de las páginas webs (imágenes, .css, etc...) que visitas en tu disco duro. De esa manera, cuando vuelves a visitar ese sitio web, tu navegador no tiene que solicitar al servidor de nuevo los objetos que componen la página web porque dispone ya de ellos en tu disco duro.

Así pues, si tienes componentes ya "cacheados" en tu disco duro, tu navegador no tendrá que volver a solicitarlos al servidor y esperar a que se descarguen desde él porque ya los tienes tú cargados y listos en tu disco duro.

El problema es que no podemos tocar las cabeceras HTTP en Blogger, como mucho podemos intentar utilizar meta-etiquetas para paliar el problema. Por ello, aunque hagas el cambio para controlar la caché, no desaparecerá de la lista de avisos de Pagespeed pues sólo los usuarios con dominio propio y acceso al root o directorio raíz del servidor web podrán realizar las modificaciones precisas para solucionar el problema. 
    Analizando cada Punto de los resultados que Page Speed puede devolverte y aplicando soluciones Paso a paso:

    El problema y su detalle: 
    • Muchas páginas web en Internet están colgadas en servidores web que no tienen un módulo de compresión activado.
    • Blogger NO tiene este problema. Si tienes un Blog en blogger, tu servidor web ya tiene activada la compresión de páginas para que la descarga de las mismas sea menor y por tanto el tiempo en que tardan en llegar del servidor al cliente. 
    La solución:
    "You should enable compression on your web server. Here are some references to enable compression on popular web servers:

    •  La instalación de un módulo de compresión en un servidor web no es compleja. Google ofrece posibilidades en función del tipo de servidor utilizado. Si no dispones de permisos para poder instalar algún sistema de compresión, ponte en contacto con el administrador del servidor web donde tengas instalada tu página y solicítale que lo active. 
    • Repito, en Blogger NO es necesario activar la compresión porque los servidores web que contienen los Blogs ya la tienen activada por defecto.

    El problema y su detalle: 
    • El control de las cabeceras HTTP del servidor para gestionar la activación de la memoria caché del navegador NO se puede controlar en Blogger. 
    • Blogger en esta  sugerencia te está advirtiendo de que posees recursos que utilizas en tu página web que o no tienen establecido un tiempo de duración en la caché del  usuario o el tiempo que tienen es excesivamente reducido. 
    • En Blogger no cuentas con permisos de edición o de acceso al root de tu servidor web para retocar un archivo .htacces, necesario para controlar y mejorar el rendimiento por medio de la caché.
    • Realmente, el impacto en la ponderación del resultado de PageSpeed no es excesivo. Se pueden alcanzar puntuaciones de hasta 98 sin tener esta sugerencia solucionada. De todas formas, la experiencia de usuario se ve eminentemente mejorada si se gestiona bien el uso de su caché en el navegador. Aún así, los propios algoritmos de detección de objetos ya descargados del propio navegador ayudan a paliar un poco esta "salvedad".
    La solución:
    • No hay solución para esto en Blogger. Es la única sugerencia de Page Speed que no podremos solucionar en todas estas entradas sobre rendimiento debido a las restricciones inherentes a Blogger.
    • Si tienes un dominio propio y te permiten acceder al servidor, tú mismo puedes solucionar el problema editando (en caso de que sea un servidor Apache) el archivo .htacces. Te recomiendo esta lectura si tienes la suerte de poder hacerlo (tú podrás llegar al 100): .htacces files o esta guía (te la recomiendo especialmente) donde te ayudan a editarlo y cambiarlo en askapache.

    Escrito por Miguel García Sánchez - Colomer

    Dispuesto a ayudarte con tu Blog en todo lo posible, Diarios de la nube es mi medio para llegar hasta ti. El conocimiento es universal, es del mundo, es de todos, esta es mi parte y la comparto contigo.

    3comentarios:

    1. Estimados señores:
      Tengo un blogspot y desde hace unos días no puedo ver los vídeos que subo. ¿A qué es debido esto?. Espero sus noticias. Gracias.

      ResponderEliminar
    2. Interesante artículo. Yo tengo en rojo y amarillo el "Leverage browser caching", si bien no se puede hacer nada sobre lo q ya tenemos en la página, no hay algo q se pueda hacer a futuro para evitarlo?

      ResponderEliminar
    3. Hola Natalie,
      lamentablemente no se puede hacer nada porque no puedes tocar archivos de tu sitio web directamente para poder cambiar las cabeceras HTTP de tu página para comunicarle al servidor cómo gestionar la caché del navegador del usuario.

      Esto si tienes un dominio propio, con hosting y posibilidad de tocar el archivo .htacces lo solucionas sin problemas. Mejora mucho la "sensación" de velocidad en el cliente.

      Un saludo amiga, cualquier cosa aquí me tienes para ayudar.

      ResponderEliminar

     

    © 2015 Por: Miguel García Sánchez - Colomer en Diarios de la nube Todos los derechos reservados.