Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/05/2007, 01:50
Avatar de tozanni
tozanni
 
Fecha de Ingreso: mayo-2007
Ubicación: Seattle, WA
Mensajes: 62
Antigüedad: 17 años
Puntos: 0
Re: ¿Cómo medir transferencia en bytes?

Si no te molesta hacer la medicion de forma "asincrona" lo mas practico es revisar el log del apache (access.log) La ultima columna te da los bytes de transferencia de cada peticion. Notar que cada imagen va a contar como una peticion independiente.

Si no tienes acceso al log, o te parece demasiado tarde, otra cosa que puedes hacer es usar output buffering. Con esta tecnica puedes capturar la salida y enviarla al cliente. Lo que haces es lo siguiente

//Al principio del programa, iniciar el buffering
ob_start();

//programa

//Al final del programa, contar y
$output_bytes = ob_get_length();
$ob_flush(); //Al hacer esto se envia el contenido al cliente.

Un beneficio adicional de esta tecnica es que todo el output se envia "en una sola exhibicion" al cliente y en consecuencia se incrementa el performance del script. El inconveniente es que no sabrias el ancho de banda gastado por las imagenes que se hayan cargado en el HTML, este tendrias que calcularlo sabiendo previamente su tamaño y contabilizandolas en el codigo directamente.