网络编程: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(err)
Go网络编程核心实践
超级会员免费看
订阅专栏 解锁全文

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



