这段go程序会把内存全部消耗光

netaxcess · · 2932 次点击
先你的代码虽然用limit做了一个限制,但是goroutine的数量并没有受到limit的限制。我开始猜想的是你的机器本身或者数据库受不住这么多的goroutine。因为你如果有1百万的数据的话,会向数据库瞬发1W条查询请求。所以我先回你的,意思是说控制下goroutine数量,按照那样改的话,同时存在goroutine最多应该是100多点。 建议1,把同时存在的goroutine数量打出来看看;2,把其他功能先屏蔽了,比如Get_Goods_Info这个函数,因为不知道是不是因为调用了这个函数导致的。
#12
更多评论
polaris
社区,需要你我一同完善!
请求 url 内容后,有 close 吗?该释放的资源,有没有释放呢?
#1
有关闭 defer res.Body.Close()
#2