Golang 让 Web 应用更加健壮
package main
import (
"net/http"
"time"
)
// 自定义处理函数,用于处理请求
func customHandler(w http.ResponseWriter, r *http.Request) {
// 处理请求的逻辑...
}
func main() {
// 创建一个新的服务器实例,并设置超时
server := &http.Server{
Addr: ":8080", // 服务器监听的地址和端口
Handler: http.HandlerFunc(customHandler), // 设置处理器
ReadTimeout: 5 * time.Second, // 读取请求体的超时时间
WriteTimeout: 10 * time.Second, // 写入响应的超时时间
MaxHeaderBytes: 1 << 20, // 最大请求头大小,这里是1MB
}
// 启动服务器并监听并在错误时打印
if err := server.ListenAndServe(); err != http.ErrServerClosed {
// 如果错误不是由于服务器关闭引起的,则打印错误
println("服务器异常关闭:", err)
}
}
这段代码创建了一个基本的 HTTP 服务器,并通过 ListenAndServe
方法监听请求。它还设置了读取和写入的超时时间,以及最大的请求头大小,从而增加了 Web 应用的健壮性。如果服务器因为任何原因意外关闭,它会打印错误信息。
评论已关闭