Mastercafe S.L.
Dirección:
Pl. Puerta de Europa 2 - 1D
Oviedo Asturias
33011
Telefonos de contacto:
Oficina: +34 627 531 764
Tel: 985 11 3939
Fax: 985 11 5780
Correo electronico:
info@mastercafe.com
admin@mastercafe.com
Este mes Google ha anunciado cambios importantes en el sistema de recopilación de datos con Google Analytics, una de las principales modificaciones se basa en una gestión de captura asíncrona, lo que implica muchas mejoras en todos los sentidos.
El problema habitual al cargar ficheros JavaScript es que estos bloquean el refresco de pantalla hasta que están completamente cargados. Existen formas de evitarlo, como se explica en el libro "Even Fastar websites, six techniques for Loading Scripts Without Blocking". Uno de ellos es la aproximación al "Script DOM Element", esta es la técnica que utiliza el nuevo sistema asíncrono de Google Analytics. El nuevo "ga.js" de Google Analytics es un ejemplo perfecto de como un script puede ser cargado de forma asíncrona y posteriormente ser procesado en el equipo, además tampoco agrega más contenidos a la página por lo que reduce los tiempos totales de presentación y no nos bloquea las imágenes ni las hojas CSS a procesar.
¿Que pasa realmente cuando un script tarda mucho tiempo en ser cargado o falla? En ocasiones y para evitar esto los desarrolladores utilizamos páginas vacias al iniciar la carga y así evitar el bloqueo. Google Analytics tiene una increible infraestructura detrás de el, pero también utilizamos recursos de terceras empresas sobre las páginas y estas las debemos agregar con mucho cuidado de no afectar al resto. Con el nuevo "ga.js" estos problemas han dejado de estar en la lista de "temas a revisar" en un desarrollo web. Ahora la web se carga más rápido y el contenido traslada la información sin bloquear nada.
Lo más habitual para evitar el bloqueo de las páginas es el trasladar todo el script de Google al final de la página, con ello vemos la carga completa y en ocasiones queda un "leyendo" en nuestro navegador. Este cambio precisamente es una de las principales recomendaciones que se daban antes para evitar problemas en la regeneración en pantalla. Pero por otro lado esto significaba que si no terminaba de procesarse el "ga.js" y el usuario era rápido en clickar otro link no se trasladaba información y nos faltaban parcialmente las estadísticas del sitio. Con el nuevo proceso asíncrono, mantendremos el script en la parte inferior, pero el nuevo sistema traslada simplemente un indicativo para que sea procesado posteriormente por Google y no afectar a la navegación, con ello además pueden incrementar la información a recopilar.
El anterior ga.js se va a mantener, por lo que no es imprescindible el cambio. No obstante si queremos realmente mejorar el rendimiento de nuestra web vamos a realizar el cambio en un paso sencillo, este es el aspecto del nuevo snipet:
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script');
ga.src = ('https:' == document.location.protocol ?
'https://ssl' : 'http://www') +
'.google-analytics.com/ga.js';
ga.setAttribute('async', 'true');
document.documentElement.firstChild.appendChild(ga);
})();
Es curioso ver como este simple script se considera una de las piezas esenciales en Internet.
Unas notas más a tener en cuenta:
Las conclusiones es que este cambio de Google significará una mejora de un 10% de media para la mayor parte de las páginas web que incorporan estas estadísticas. Os recomiendo visitar vuestra cuenta de analytics o bien avisar al webmaster que realice el mantenimiento web para que os incorpore este nuevo método. Los clientes de MBC simplemente deben cambiar en la "CONFIGURACION" la variable "URCHIN" por el texto contenido en el artículo utilizando su propio número.
Artículo original: http://www.stevesouders.com/blog/2009/12/01/google-analytics-goes-async/

Web creada con MBC Diseño y desarrollo web © Mastercafe SL - Alojamiento web trafico ilimitado hosting ISPActivo | Nota legal | Nota técnica