Je travaille sur une application Web php qui implique des appels à des services Web tiers. Récemment, j'ai rencontré des problèmes parce que certains services Web sont lents et/ou expirent. (Lorsque cela se produit, le service renvoie une erreur après 5-6 minutes, qui est traitée par l'application Web)Un script de serveur lent fait décrocher IE
Cependant, le problème survient qu'en attendant le résultat/timeout, toutes les autres connexions à l'application Web dans le navigateur (autres fenêtres/onglets dans IE) décrochage. Cela semble être un problème avec le navigateur, car si vous ouvrez une fenêtre secondaire dans un autre navigateur (par exemple, Chrome), l'application Web diffuse des pages sans délai. J'ai envisagé de configurer l'appel de service Web de façon asynchrone (un processus server.side séparé, ou un appel ajax dans le navigateur), mais en attendant, je voudrais savoir pourquoi IE met toutes les connexions à l'application Web en attente en attendant une page? Se pourrait-il qu'un en-tête personnalisé ou une autre astuce de marquage triviale dise à IE de continuer avec des connexions à d'autres pages sur le même hôte?
Même pour les personnes n'utilisant pas les sessions, ils doivent vérifier session.auto_start est défini sur 0 dans php.ini, car ils peuvent utiliser des sessions sans en être conscient. –
Merci beaucoup pour l'info! J'utilise des sessions, et il ne m'est jamais venu à l'esprit que le verrouillage a eu lieu sur le serveur, comme 1) toutes les autres opérations s'exécutent si rapidement 2) La plupart des opérations sont à une seule page – goorj