Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Saya Boleh Menggunakan Semula Sambungan HTTP dengan Cekap dalam Go?

Bagaimanakah Saya Boleh Menggunakan Semula Sambungan HTTP dengan Cekap dalam Go?

Susan Sarandon
Susan Sarandonasal
2024-12-20 04:29:08461semak imbas

How Can I Efficiently Reuse HTTP Connections in Go?

Penggunaan Semula Sambungan HTTP dalam Go

Apabila membuat beberapa permintaan HTTP, adalah penting untuk menggunakan semula sambungan untuk mengelakkan penggunaan sumber yang tidak diperlukan dan meningkatkan prestasi. Dalam Go, ini boleh dicapai dengan mengikuti set garis panduan yang ringkas.

Pertama, cipta pengangkutan global dan klien HTTP. Ini memastikan bahawa semua permintaan dikendalikan oleh kumpulan sambungan asas yang sama:

// Create a new transport and HTTP client
tr := &http.Transport{}
client := &http.Client{Transport: tr}

Seterusnya, sentiasa hantar klien HTTP yang sama kepada goroutin anda yang membuat permintaan HTTP:

r, err := client.Post(url, "application/json", post)

Walau bagaimanapun, penggunaan semula sambungan tidak didayakan secara lalai. Untuk memastikan ia digunakan dengan betul, adalah penting untuk membaca keseluruhan respons HTTP dan menutup badan secara eksplisit selepas itu:

res, _ := client.Do(req)
io.Copy(ioutil.Discard, res.Body)
res.Body.Close()

Dengan memastikan bahawa respons dibaca sepenuhnya dan badan ditutup, sambungan boleh selamat dikembalikan ke kolam untuk digunakan semula dalam permintaan seterusnya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Semula Sambungan HTTP dengan Cekap dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn