前往http.Get、並發與「對等方重設連線」
執行程式以下載大量網頁時使用Go 例程和通道的遠端伺服器,在某些請求中可能會遇到「連線被對等點重置」錯誤。當伺服器突然關閉連線時會出現此問題,通常是由於連線限製或資源限制。
錯誤的一個可能原因是建立了太多並行連線。同時啟動 1000-2000 個連線通常效率很低,並且可能會耗盡伺服器的資源。透過測試確定最佳並發等級將提高吞吐量並降低連接重置的風險。
此外,設定 Transport.MaxIdleConnsPerHost 參數對於避免不必要的連線關閉至關重要。如果該值小於並發級別,連線將頻繁地在每次請求後關閉,然後立即重新開啟。這種額外的開銷會顯著減慢下載過程。
要緩解「連線由對等方重設」錯誤,請考慮最佳化並發等級並調整 Transport.MaxIdleConnsPerHost 設定以符合預期的並發連線數。透過有效管理連接,您可以提高網頁下載流程的可靠性和效率。
以上是Go並發下載多個網頁時如何避免「Connection Reset by Peer」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!