Precisamos comparar o desempenho de 2 CDNs diferentes. Para ter uma ideia do desempenho dos diferentes CDNs com base na localização de nossos usuários, incorporamos alguns javascript simples em nossa página da web e usamos o rastreamento de eventos do Google Analytics para monitorar como os CDNs realmente funcionaram para nossos usuários finais.
O código que incorporamos em nosso site é o seguinte.
function dl(url) {
var imageAddr = url + "?n=" + Math.random();
var startTime, endTime;
var download = new Image();
download.onload = function () {
endTime = (new Date()).getTime();
var duration = (endTime - startTime);
_gaq.push(['all._trackEvent', 'Speedtest', url, ' '+duration, duration]);
//console.log(url+" >"+ duration);
}
startTime = (new Date()).getTime();
download.src = imageAddr;
}
if(Math.random() > 0.66) {
dl('http://cdn1.test.com/1x1.png');
dl('http://cdn2.test.com/1x1.png');
}
Nós rastreamos quanto tempo leva para baixar uma imagem de um pixel de cada CDN e, em seguida, enviamos as informações para o Google Analytics para fins de rastreamento. O Google Analytics pode rastrear o local de onde o evento está vindo e isso é útil para saber o desempenho do CDN em diferentes locais. Os números não são perfeitos, mas acreditamos que sejam bons o suficiente para uma análise comparativa. Mais informações sobre o rastreamento do GA – https://developers.google.com/analytics/devguides/collection/gajs/eventTrackerGuide