J'ai un problème avec la récupération des données d'une requête http. Avec certaines requêtes serveur, il faut une minute pour analyser le contenu du serveur. Les données de la requête sont un court message json (stocké dans la chaîne de réponse), il n'est donc pas nécessaire d'attendre si longtemps.Récupération lente du contenu HttpResponse avec nginx sur android
J'utilise les bibliothèques org.apache dans Android
Cela se produit uniquement avec notre serveur nginx dans la production, et non pas avec mon serveur webrick de développement (oui, il est un api de rails)
Ce code est utilisé dans une super classe utilisée pour toutes nos intentions api, mais il est seulement lent dans certaines occasions (certaines demandes de api)
le code se bloque sur la méthode toString sur la troisième ligne
HttpResponse result = ... ;
HttpEntity response = result.getEntity();
String answer = EntityUtils.toString(response);
Est-ce un problème courant?
EDIT: Ce sont les journaux de Wireshark https://img.skitch.com/20120426-jddnkdbhuttfujym9u4m7a2ph1.jpg
Si vous faites des demandes multithread vous pourriez atteindre la limite de connexion (2 par hôte par défaut) et vous bloquer – zapl
c'est la seule demande à ce moment – Quentin
Wireshark journal a une participation de 65 secondes avant que les réponses du serveur. Je voudrais interpréter cela comme un problème de serveur, rien dans votre code Android/appareil lié. – zapl