2008-10-28 11 views
2

J'ai un client dont l'interface utilisateur Web souhaitée est graphiquement intense; nous aimerions recueillir des statistiques sur la bande passante moyenne de ceux qui se connectent au site. Y a-t-il un moyen facile de faire cela? La "chose la plus simple qui pourrait fonctionner" semble être un composant Flash ou Silverlight qui chronomètre le téléchargement d'un fichier d'une certaine taille (disons 200K), puis POST le résultat à un URI qui enregistre les données. Ça marchera? Dois-je écrire le mien ou y a-t-il un élément facile à télécharger que je puisse télécharger de quelque part?Quel est un bon moyen de profiler la vitesse de connexion des utilisateurs Web?

Répondre

0

Je regarderais Google Analytics. C'est un javascript simple que vous incluez sur votre page, et il utilise les bases de données d'analyse massives de Google pour suivre qui accède à votre site sur quel type de connexions, qui est tout dans une base de données qu'ils maintiennent. Vous pouvez certainement écrire un composant Flash ou Silverlight (ou javascript) pour télécharger un fichier en arrière-plan, le chronométrer et le signaler, mais vous risquez d'irriter vos utilisateurs pour qu'ils remplissent leurs tubes.

+0

Google Analytics ne suit pas ou ne profile pas la consommation de bande passante. –

+0

Google Analytics fournit une analyse de la vitesse de connexion au réseau de l'utilisateur. Il est disponible dans le menu Visiteurs-> Propriétés du réseau-> Vitesses de connexion –

+0

Vous avez raison. J'avais tort. Google Analytics est une bonne solution (il y a une certaine quantité d '«informations non disponibles» dans les données, mais cela convient à nos besoins). –

0

Il n'y a pas trop d'outils qui font cela.

Vous pouvez essayer BrowserHawk (http://www.cyscape.com/products/bhawk/features.aspx). Voir http://www.cyscape.com/showbrow.aspx?bhcp=1 et faites défiler vers le bas pour les détails de connexion.

Probablement le moyen le plus efficace est de laisser le visiteur décider. Vous pouvez avoir une page d'atterrissage avec deux gros boutons qui disent "connexion rapide" et "connexion lente" et laissez-les en cliquer un. Rappelez-vous que si vous faites cela, vous perdrez un certain nombre de visiteurs sur cette page, car ils seront trop paresseux ou désintéressés pour déranger. Vous voudrez peut-être aller avec la version lourde du site et avoir un bouton dans la navigation quelque part qui leur permet de basculer dans les deux sens.

0

Cela me semble assez facile.

  1. Prenez vos journaux de serveur Web et de numérisation pour votre page d'index et toutes les images liées à cette page d'index.
  2. Obtenez la différence entre l'horodatage complet de l'image et l'horodatage complet de l'index .
  3. Total jusqu'à la taille de toutes les images que ont été entièrement chargées (pas mis en cache si-modifié-depuis 304s). Divisez ce total par la différence de .

Vous devez avoir octets effectifs par seconde pour cet utilisateur .

0

Pas une réponse directe - mais vous pouvez être résoudre le mauvais problème.

Selon les personnes que vous écoutez, environ 60% des utilisateurs du site Web naviguent sur des appareils mobiles. Les appareils mobiles ont une bande passante très imprévisible - de "illimité" sur un réseau WiFi rapide à "accès commuté des années 1990" lorsqu'ils sont éloignés des tours de téléphonie cellulaire. S'ils passent 50% de leur temps sur un réseau privé de 100 Mbps et la moitié de leur temps sur un réseau cellulaire de 500 Kbits/s, la moyenne sera une mauvaise indication de leur expérience dans 50% des cas.

Si vous regardez la moyenne et dites "hé, la moyenne est bien au-dessus de 10Mbps, donc nous pouvons supposer 1Mbps est un minimum sûr", vos utilisateurs auront une expérience terrible la moitié du temps.

En outre, il existe une interaction complexe entre la taille de fichier, le nombre de téléchargements simultanés effectués par un navigateur Web et l'expérience subjective de l'utilisateur final. Si vous avez une page Web qui nécessite au total 5000 Ko de téléchargement, et qu'elle ne restitue rien tant que la page n'est pas entièrement téléchargée, elle se sentira très lente. Si vous chargez progressivement des éléments et chargez paresseux au fur et à mesure que l'utilisateur défile, le site sera rapide.

Ensuite, vous obtenez la mise en cache du navigateur - si vous avez un site lourd, mais vous pouvez mettre en cache beaucoup d'actifs dans le navigateur, l'expérience subjective peut être vraiment bonne (après le premier téléchargement). Ma recommandation est de convenir d'une bande passante minimum que votre site supportera avec une expérience raisonnable - et basez-la sur la performance du réseau mobile dans votre marché cible. Dans les pays avec une bonne couverture mobile, je suppose 500Kbps; dans les pays où la 4G est répandue, j'irais jusqu'à 1Mbps.