深入探索HTTP超时、TCP/IP与WebSocket开发
1. HTTP超时设置
在HTTP请求中,超时设置十分重要,尤其是在服务器端。当服务器有过多的开放连接时,若不及时关闭一些连接,可能无法处理额外的请求。这通常由软件漏洞或遭受拒绝服务(DoS)攻击导致。
下面是 timeoutServer.go 中 main() 函数的代码,展示了如何设置超时时间:
func main() {
PORT := ":8001"
arguments := os.Args
if len(arguments) != 1 {
PORT = ":" + arguments[1]
}
fmt.Println("Using port number: ", PORT)
m := http.NewServeMux()
srv := &http.Server{
Addr: PORT,
Handler: m,
ReadTimeout: 3 * time.Second,
WriteTimeout: 3 * time.Second,
}
m.HandleFunc("/time", timeHandler)
m.HandleFunc("/", myHandler)
err := srv.ListenAndServe()
if err != nil {
fmt.Println(er
超级会员免费看
订阅专栏 解锁全文
1069

被折叠的 条评论
为什么被折叠?



