我有一個服務器下載1000-2000個網頁,我使用go例程和通道來實現高效率。問題是,我每次運行我的程序多達400個請求失敗,出現錯誤「由對等方重置連接」。很少(可能是10次中的1次),沒有請求失敗。Go http.Get,併發性和「通過對等方重置連接」
我能做些什麼來防止這種情況發生?
有一件有趣的事情是,當我在服務器所在的服務器上運行該程序時,該網站託管在服務器中,0個請求失敗,所以我猜測延遲存在一些問題(因爲它是現在在不同的大陸上的服務器上運行)。
我使用的代碼基本上只是一個簡單的http.get(url)請求,沒有額外的參數或自定義客戶端。
所有或大部分頁面來自同一臺服務器?您正在同時進行的最大請求數是多少? – JimB
所有頁面來自同一臺服務器(編輯問題以反映此問題)。我不確定有多少是同時生成的。我只是開始儘可能多的下載例程,然後讓CPU/Golang強加併發的限制。 – fgblomqvist
對併發沒有限制,你需要自己去做。 – JimB