解決Goland中利用HTTPClient發(fā)送請(qǐng)求超時(shí)返回EOF錯(cuò)誤DEBUG
今天解決了一個(gè)疑難雜癥,起因是之前代理某內(nèi)部API接口,請(qǐng)求先是出現(xiàn)卡頓,超時(shí)后報(bào)EOF錯(cuò)誤。
但奇怪的是線上測(cè)試環(huán)境確是沒問題的。
Google了一下,有人說可能是由于重復(fù)請(qǐng)求次數(shù)過多導(dǎo)致,應(yīng)該設(shè)置req.Close屬性為true,這樣不會(huì)反復(fù)利用一次連接。
嘗試該操作后依然無法解決問題,遂求助同事璟文。
經(jīng)過大牛的一番調(diào)查后,發(fā)現(xiàn)時(shí)TCP超時(shí),連接斷了。至于原因,是由于Goland設(shè)置了代理。。。Orz
不過經(jīng)歷這次事件我也學(xué)到了利用MAC自帶的活動(dòng)監(jiān)視器,來查看網(wǎng)絡(luò)行為,璟文是看到了接口的轉(zhuǎn)發(fā),才想到了可能是代理的問題。正是由于Goland的代理,才導(dǎo)致了連接內(nèi)部API超時(shí)。
補(bǔ)充:golang http 請(qǐng)求未釋放造成的錯(cuò)誤
昨天在群里有個(gè)朋友問了這樣的一個(gè)問題

遇到
http:accept error TCP too many open files in 1s

我猜應(yīng)該是沒有 及時(shí)的釋放。他那個(gè) lsof 發(fā)現(xiàn)有好多的 tcp 請(qǐng)求
然后看了一下他的那個(gè)代碼

那個(gè)請(qǐng)求的關(guān)閉給注釋掉了。
怪不得出現(xiàn)這種情況。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Golang實(shí)現(xiàn)文件夾的創(chuàng)建與刪除的方法詳解
這篇文章主要介紹了如何利用Go語言實(shí)現(xiàn)對(duì)文件夾的常用操作:創(chuàng)建于刪除。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-05-05
GoFrame?gmap遍歷hashmap?listmap?treemap使用技巧
這篇文章主要為大家介紹了GoFrame?gmap遍歷hashmap?listmap?treemap使用技巧的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
Go語言字符串操作指南:簡(jiǎn)單易懂的實(shí)戰(zhàn)技巧
本文將介紹Go語言中字符串的實(shí)戰(zhàn)操作,通過本文的學(xué)習(xí),讀者將掌握Go語言中字符串的常用操作,為實(shí)際開發(fā)提供幫助,需要的朋友可以參考下2023-10-10
使用go實(shí)現(xiàn)簡(jiǎn)易比特幣區(qū)塊鏈公鏈功能
這篇文章主要介紹了使用go實(shí)現(xiàn)簡(jiǎn)易比特幣區(qū)塊鏈公鏈功能,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01
Go標(biāo)準(zhǔn)庫(kù)之Requests的介紹與基本使用
Python中的Requests庫(kù)非常強(qiáng)大,所以Go開發(fā)者模仿Python的Requests庫(kù),由此誕生了Grequests庫(kù),本文主要介紹了Requests的基本使用,有需要的可以參考下2024-04-04
gin解析json格式的數(shù)據(jù)出錯(cuò)的處理方案
這篇文章主要介紹了gin解析json格式的數(shù)據(jù)出錯(cuò)的處理方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03

