Maison > développement back-end > Golang > Comment puis-je réutiliser efficacement les connexions HTTP dans Go ?

Comment puis-je réutiliser efficacement les connexions HTTP dans Go ?

Susan Sarandon
Libérer: 2024-12-20 04:29:08
original
459 Les gens l'ont consulté

How Can I Efficiently Reuse HTTP Connections in Go?

Réutilisation des connexions HTTP dans Go

Lors de plusieurs requêtes HTTP, il est essentiel de réutiliser les connexions pour éviter une consommation inutile de ressources et améliorer les performances. Dans Go, cela peut être réalisé en suivant un ensemble de directives simples.

Tout d'abord, créez un client de transport et HTTP global. Cela garantit que toutes les requêtes sont traitées par le même pool de connexions sous-jacent :

// Create a new transport and HTTP client
tr := &http.Transport{}
client := &http.Client{Transport: tr}
Copier après la connexion

Ensuite, transmettez toujours le même client HTTP à vos goroutines qui effectuent des requêtes HTTP :

r, err := client.Post(url, "application/json", post)
Copier après la connexion

Cependant, la réutilisation des connexions n'est pas activée par défaut. Pour garantir qu'elle est correctement utilisée, il est crucial de lire l'intégralité de la réponse HTTP et de fermer explicitement le corps par la suite :

res, _ := client.Do(req)
io.Copy(ioutil.Discard, res.Body)
res.Body.Close()
Copier après la connexion

En vous assurant que la réponse est entièrement lue et que le corps est fermé, la connexion peut être établie en toute sécurité. retourné à la piscine pour réutilisation dans les demandes ultérieures.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal