If this:

http: Accept error: accept tcp [::]:80: accept4: too many open files; retrying in 40ms

Check that your go server is using proper timeouts, example:

srv := &http.Server{
        Addr:         ":80",
        Handler:      router,
        ReadTimeout:  5 * time.Second,
        WriteTimeout: 10 * time.Second,
}
log.Fatal(srv.ListenAndServe())

https://blog.cloudflare.com/the-complete-guide-to-golang-net-http-timeouts/