Gravatar de Armonth

Mejorar la velocidad de Google Analytics

Si eres usuario de Google Analytics y el javascript que necesitas añadir de éste servicio es el responsable de buena parte del tiempo de carga de la web lo siguiente seguramente te interesa.

Se trata de Speed Up Google Analytics, use local ga.js, una entrada de AskApache donde comentan que una manera de reducir el tiempo de carga es alojar el fichero ga.js en nuestro servidor en lugar de mantenerlo en Google.

Para ello modificaremos la parte que llama al Javascript dejándolo de la siguiente manera:

<script src="/j/ga-151.js" type="text/javascript"></script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-732153-7");
pageTracker._initData();pageTracker._trackPageview();
</script>

Siendo src=”/j/ga-151.js” la ruta a donde alojaremos el fichero, por ejemplo lo podemos dejar como “ga.js” en la raíz de nuestro blog con WordPress cambiándolo por:

src="<?php bloginfo('url') ?>/ga.js"

Luego tenemos que hacer un script que se vaya bajando periódicamente el fichero desde Google:

#!/bin/sh

# Ruta al directorio temporal, normalmente no hay que tocarlo
MYTMP=/tmp/

# Ruta donde guardar el ga.js
INSTALL_IN=/home/user/sigt.net/

# URL de donde descargar el ga.js (no tocar)
GOOGLE_GA_URL=http://www.google-analytics.com/ga.js

# USER-AGENT (no tocar)
UA="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3"

cd $MYTMP
curl --header "Pragma:" -f -s -A "${UA}" -m 1800 --retry 15 --retry-delay 15 --max-redirs 8 -O $GOOGLE_GA_URL

# Le damos los permisos y lo copiamos donde hemos dicho
chmod 644 $MYTMP/ga.js
cp -r $MYTMP/ga.js $INSTALL_IN

# RETURN TO OLDPWD
cd $OLDPWD
exit 0;

Lo guardamos como ga-update.sh, le damos permisos (chmod u=rwx,g=r,o=r ga-update.sh) y añadimos una línea al crontab (ejecutad crontab -e) para que lo actualice diariamente:

@daily /home/user/sigt.net/ga-update.sh >/dev/null 2>&1

9 Comentarios (feed)

  1. Gravatar de Sergio de la Torre Sergio de la Torre nos comenta:

    Yo uso Local Analytics para WP que hace más o menos lo mismo

    Salu2

    Domingo, 10 de Febrero/2008 @ 11:05

  2. Gravatar de Nemo Nemo nos comenta:

    Lo probare ahora mismo en mi web personal. Gracias y un saludo.

    Domingo, 10 de Febrero/2008 @ 11:57

  3. Gravatar de Armonth Armonth nos comenta:

    Sergio: enlace corregido (pusiste como cierre <a> en lugar de </a>).

    Un saludo a ambos.

    Domingo, 10 de Febrero/2008 @ 15:10

  4. Gravatar de devilsoulblack devilsoulblack nos comenta:

    es legal esta accion ?

    Domingo, 10 de Febrero/2008 @ 17:30

  5. Gravatar de Bolorino Bolorino nos comenta:

    Me interesa lo que pregunta devilsoulblack, pero lo expresaría más o menos así: ¿Sabe alguien si pone Google alguna pega a alojar el javascript de forma local?

    Lunes, 11 de Febrero/2008 @ 1:25

  6. Gravatar de Ruymán Ruymán nos comenta:

    Me parece muy buena la información, más de una vez me ha molestado lo que tarda en terminar de cargar una web por culpa del GA.
    No creo que google ponga ninguna pega, según lo que pone en el otro blog parece algo semi-oficial, pero a saber.

    Martes, 12 de Febrero/2008 @ 21:18

  7. Gravatar de Ferran Ferran nos comenta:

    Muy buen truco, molaria saber la opinión de Google, pero parece correcto actualizarlo 1 vez al día.

    Jueves, 8 de Mayo/2008 @ 16:27

  8. Gravatar de Joan Joan nos comenta:

    dudo que esta técnica realmente acelere la carga de la pagina.
    todo dependerá del rendimiento de tu servidor respecto a los servidores de google.
    es más que probable que el fichero ga.js baje mucho más rápido de google que de tu propio servidor (o es que alguien tiene servidores mas potentes que google).
    Precisamente existen técnicas para acelerar la carga de javascripts que lo que haces es distribuir los js en varios servidores para que la descarga se realice en paralelo.

    Miércoles, 10 de Junio/2009 @ 9:56

  9. Gravatar de Armonth Armonth nos comenta:

    Joan potentes no significa rápidos de por si. Por muy google que sea, si tu servidor no está saturado y está físicamente localizado cerca de tus usuarios (por ejemplo un servidor en España si tus páginas están orientadas al mercado español) descargará de ahí más rápido que de Google.

    Miércoles, 10 de Junio/2009 @ 16:05

Comentarios cerrados