Demandes HTTP Go simultanées avec « Réinitialisation de la connexion par un homologue »
Malgré l'utilisation de goroutines et de canaux pour améliorer l'efficacité du téléchargement de pages Web, les utilisateurs sont confrontés à des problèmes persistants. erreurs de réinitialisation de connexion. Ce problème, particulièrement évident lors de l'accès à un serveur depuis un continent lointain, soulève la question : Comment pouvons-nous pallier à ce problème ?
Cause :
La « connexion réinitialisée par peer" indique que le serveur distant a brusquement fermé la connexion. Cela peut se produire en raison de limites de connexion imposées par le serveur ou de contraintes de ressources.
Solution :
Plutôt que d'initier des milliers de connexions simultanément, expérimentez différents niveaux de concurrence pour déterminer le montant le plus optimal. Une concurrence excessive peut mettre à rude épreuve les ressources et ralentir la progression.
Configurez le paramètre http.Transport.MaxIdleConnsPerHost pour l'aligner sur votre niveau de concurrence. . Si cette valeur est inférieure au nombre de connexions simultanées, les connexions au serveur peuvent être fermées après chaque demande, pour être rouvertes immédiatement. Cela a un impact négatif sur le débit et conduit potentiellement à atteindre les limites de connexion au serveur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!