Question

J'ai créé une application JSF simple de navigation dans les images et j'ai un problème avec Firefox.

L’application elle-même est exécutée dans Tomcat. Les images sont stockées dans un répertoire servi par Apache. J'ai 9 images qui apparaissent sur une page. Les serveurs sont sur une machine distincte du client. Lorsque j'essaie de charger la page dans Firefox, généralement 6 images se chargent presque instantanément (& Lt; 500ms). Il faudra entre 15 et 20 secondes pour charger les trois autres. En regardant les journaux Apache, il semble que Firefox ne demande pas ces trois images tant que les 15 à 20 secondes ne sont pas écoulées - c’est-à-dire que je vois 6 demandes en même temps, puis 15 secondes plus tard, les trois autres. J'ai essayé le site dans Internet Explorer, et IE n'a pas ce problème; il charge toutes les 9 images immédiatement. J'ai essayé plusieurs machines différentes et j'ai les mêmes résultats. Le code HTML est très rapidement rendu, & Lt; 200 ms, donc je ne pense pas que ce soit un problème JSF (d’autant plus que les images sont servies par Apache).

Les chiffres ne sont pas toujours les mêmes non plus - parfois, il chargera 8 images, parfois 7, parfois, le second lot de demandes arrivera en même temps, et parfois il en chargera 2 de plus, qu'une de plus, etc. I Je ne sais pas s'il s'agit d'un paramètre firefox ou d'un bogue, ou s'il y a quelque chose que je peux faire côté serveur, mais j'ai pensé que je pourrais le jeter et voir si quelqu'un a des idées que je peux essayer.

Si cela vous aide, voici une ligne de journal Apache de Firefox

192.168.1.30 - - [04/Mar/2009:14:25:40 -0500] "GET /work/DSCF0185_thumbnail.jpg HTTP/1.1" 200 7902 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6 (.NET CLR 3.5.30729)"

et un de IE

192.168.1.30 - - [04/Mar/2009:14:34:14 -0500] "GET /work/DSCF0179_thumbnail.jpg HTTP/1.1" 304 - "http://192.168.1.83:8080/app/browse.jsf" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 1.1.4322; MS-RTC LM 8; Windows-Media-Player/10.00.00.3990; FDM; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)"

Modifier Firebug m'a montré le minutage - il montre que la demande entière est (par exemple) de 18 secondes, avec 17,9 secondes & "; De recevoir des données &"; Et le reste pris en file d'attente. Je ne vois pas la demande réelle dans le journal Apache avant la fin de ces 17,9 secondes, ce qui me porte à croire que c'est un problème avec Firefox, d'autant plus que IE ne montre pas le problème. Si c'était dans le serveur, je m'attendrais à voir le problème dans les deux navigateurs.

Le pipeline dans Firefox est désactivé.

Comme cela a été souligné, mon journal IE indique qu’il frappe le cache - c’est mon erreur, de saisir la mauvaise partie du fichier journal. Voici une ligne de journal vierge - même après la suppression d’un cache, IE ne présente pas les mêmes problèmes que Firefox.

192.168.1.30 - - [04/Mar/2009:15:52:18 -0500] "GET /vantagework/DSCF0189_thumbnail.jpg HTTP/1.1" 200 5805 "http://192.168.1.83:8080/vantage/browse.jsf" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 1.1.4322; MS-RTC LM 8; Windows-Media-Player/10.00.00.3990; FDM; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)"
Était-ce utile?

La solution 3

Il s’avère que cela a été causé par ma configuration Apache. Quelques ajustements ont été faits et le retour à la configuration prête à l'emploi d'Apache a résolu le problème.

Autres conseils

Utilisez " Net " de Firebug console pour vérifier s’il s’agit de firefox, ou du serveur Web, car votre serveur Web est peut-être en train de prendre le temps d’accepter les connexions.

Le " Net " de Firebug la console vous montrera quand elle commencera à demander des choses et vous donnera une ventilation détaillée des différentes parties de la demande d’image (mise en file d’attente, etc.) -

Selon les extraits de votre journal, IE récupère l'image du cache, Firefox l'obtient du serveur. Donc, s'il y a quelque chose qui ne va pas dans la configuration du serveur qui fournit l'image lentement, vous ne verrez qu'un comportement similaire dans IE si vous effacez le cache en premier, je voudrais donc essayer de vérifier que les images non mises en cache prennent effectivement des quantités différentes. de temps pour télécharger entre Firefox et IE.

Je voudrais également vérifier si vous avez traitement en pipeline . activé dans Firefox. Si vous le faites, je vous suggérerais de le désactiver, cela pourrait peut-être poser un problème à votre serveur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top