Dalam bidang komunikasi HTTP, penggunaan semula sambungan adalah penting untuk penggunaan sumber yang cekap. Walau bagaimanapun, persoalan berlarutan tentang mengapa klien HTTPS Go nampaknya menentang prinsip ini, menghasilkan bilangan sambungan yang membimbangkan walaupun dijangka digunakan semula.
Di tengah-tengah perkara terletak pada butiran yang diabaikan: kegagalan untuk menutup badan tindak balas. Dalam Go, mekanisme penggunaan semula sambungan klien HTTPS bergantung pada penutupan badan tindak balas berikutan penggunaannya. Mengabaikan langkah penting ini menyebabkan sambungan tergantung dalam limbo, tidak tersedia untuk digunakan semula. Oleh itu, aliran sambungan yang kelihatan tidak berkesudahan.
Untuk memanfaatkan kuasa penggunaan semula sambungan, pastikan badan tindak balas ditutup sepenuhnya selepas pengambilan semula. Pengubahsuaian berikut menggambarkan pengendalian yang sesuai:
<code class="go">res, _ := client.Do(req) io.Copy(ioutil.Discard, res.Body) res.Body.Close()</code>
Dengan mematuhi langkah penting ini, anda memperkasakan klien HTTP untuk menggunakan semula sambungan dengan lancar, mengatur permintaan dengan lancar tanpa membebankan sistem.
Walaupun klien HTTPS Go sememangnya mampu menggunakan semula sambungan, pelaksanaannya memerlukan penutupan badan tindak balas dengan berhati-hati. Dengan mematuhi amalan mudah tetapi penting ini, pembangun boleh membuka kunci potensi penuh penggunaan semula sambungan dan mengelakkan perangkap percambahan sambungan yang tidak terkawal.
Atas ialah kandungan terperinci Mengapa Klien My Go HTTPS Mencipta Begitu Banyak Sambungan Daripada Menggunakan Semula?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!