From 0bde1b62e19ee4fb270871a3c9886f114030a90c Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Mon, 10 Oct 2016 14:22:18 -0700 Subject: [PATCH 1/2] Timeout reads and writes in the http server. --- prog/app.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/prog/app.go b/prog/app.go index a830c3525..6e9cb212a 100644 --- a/prog/app.go +++ b/prog/app.go @@ -276,8 +276,11 @@ func appMain(flags appFlags) { // we want to manage the stop condition ourselves below NoSignalHandling: true, Server: &http.Server{ - Addr: flags.listen, - Handler: handler, + Addr: flags.listen, + Handler: handler, + ReadTimeout: 10 * time.Second, + WriteTimeout: 10 * time.Second, + MaxHeaderBytes: 1 << 20, }, } go func() { From e8126faeddb5fb2526c3b39a002ba78aa25cf6bc Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Wed, 12 Oct 2016 17:29:29 +0100 Subject: [PATCH 2/2] Review feedback --- prog/app.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/prog/app.go b/prog/app.go index 6e9cb212a..fada21497 100644 --- a/prog/app.go +++ b/prog/app.go @@ -31,6 +31,7 @@ import ( const ( memcacheUpdateInterval = 1 * time.Minute + httpTimeout = 90 * time.Second ) var ( @@ -278,8 +279,8 @@ func appMain(flags appFlags) { Server: &http.Server{ Addr: flags.listen, Handler: handler, - ReadTimeout: 10 * time.Second, - WriteTimeout: 10 * time.Second, + ReadTimeout: httpTimeout, + WriteTimeout: httpTimeout, MaxHeaderBytes: 1 << 20, }, }