我想知道每当请求进来时 goroutine 和 go web 服务器究竟是如何工作的:
func handler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, I love %s!", r.URL.Path[1:])
}
func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}
在这段代码中,
每个/调用handler. 这是否意味着每个请求都会产生自己的 goroutine?或者它会产生自己的process还是thread?有没有关于这些请求如何获得自己的 goroutine 的文档?
其他语言如何处理这个请求?例如,Python flask 是否为每个请求启动自己的进程?
谢谢,
相关分类