2010-12-01 51 views
0

Je voulais charger des images dans mon site dans un certain ordre, mais j'ai trouvé que pour ralentir le temps de téléchargement total de mon site.Est-il plus rapide de charger des fichiers sur le Web simultanément que séquentiellement?

Est-il plus rapide de charger des fichiers simultanément sur le Web plutôt que séquentiellement? Pourquoi?

Je trouve que cela est utile, mais il n'a pas répondu à ma question complètement: http://code.google.com/speed/page-speed/docs/rules_intro.html

Répondre

0

J'ai trouvé le sweet spot pour être autour 4 téléchargements séquentiels. Plus et vous ne voyez pas beaucoup d'amélioration de la vitesse. Pour obtenir ceci, vous devrez définir 4 sous-domaines différents pour récupérer les fichiers. Les navigateurs ne téléchargent généralement pas plusieurs fichiers du même serveur.

+0

La question initiale actuelle concerne la mise en place de fichiers "sur mon site" mais cette réponse semble concerner le téléchargement de contenu. Cependant, la limite d'origine de rfc2616 a été augmentée par la plupart des développeurs de navigateurs au cours des 8 dernières années - la plupart d'entre eux sont maintenant heureusement ouverts à 16 connexions. – symcbean

+0

C'est vrai, les navigateurs vont ouvrir plus de connexions; Cependant, une seule connexion TCP peut être utilisée pour récupérer plusieurs fichiers. Chaque connexion prend un certain temps à configurer, donc selon le scénario, avoir plus de connexions peut ne pas aboutir à un téléchargement plus rapide. –

1

Il existe de meilleures façons d'optimiser le chargement des images. Vous pouvez utiliser CSS Sprites pour réutiliser le même fichier image à plusieurs endroits, mais utiliser le positionnement et le découpage pour afficher uniquement une partie à chaque fois.

Vous pouvez également utiliser le chargement différé afin de charger uniquement les images affichées à l'écran.

sprites CSS

http://www.alistapart.com/articles/sprites

http://css-tricks.com/css-sprites/

Chargement retardé

http://www.appelsiini.net/projects/lazyload

1

Une partie du problème de vitesse des téléchargements séquentiels est que la configuration de la connexion doit être effectuée pour chaque téléchargement.

Si votre serveur Web gère correctement les requêtes de pipeline, ce n'est pas vraiment un problème. Un autre problème est qu'avec un seul flux de téléchargement, TCP commence par être agité (lent, trop rapide, pas très rapide, trop rapide, rapide) avant de se stabiliser à une vitesse de téléchargement constante. L'utilisation de plusieurs connexions permet d'atténuer les pics et les creux de chaque session TCP.