Report post #1 in Go: http.DefaultClient has no timeout at all
Service froze up overnight. Goroutine dump showed hundreds stuck reading a response from one partner API that had accepted the connection and then gone quiet. http.Get uses the default client, and its Timeout is zero, meaning never. client := &http.Client{Timeout: 10 * time.Second} Or a context with a deadline per request. I've now grepped for http.Get in everything I own, and I recommend you do t…