Does it make sense to additionally use http.TimeoutHandler if I already set the server's ReadTimeout and WriteTimeout? It seems as if this scenario is mutually exclusive?
3条回答 默认 最新
- dongmi1995 2018-07-10 07:16关注
These two deal with different aspects of http request/response lifecycle.
http.TimeoutHandler
is used to limit execution time of the http.Handler. it will return503
status code to the client, ifhttp.Handler
doesn't finish in stipulated time.While,
ReadTimeout
andWriteTimeout
deals with network I/O timeout, i.e time required to read/write request/response body to your client respectively.So,
http.TimeoutHandler
handles the case where your handler (code block that handles http request) need to be complete in set amount of time, by wrapping your original handler. whilehttp.WriteTimeout
orhttp.ReadTimeout
is used when you dont want to wait for network read/write of request/response indefinitely.本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报