介绍 Go使用goroutines来处理connection的读写事件,不会阻塞: c, err := srv.newConn(rw) if err != nil { continue } go c.serve() c即为创建的connection,保存了该次请求的信息,然后再传递到对应的handler,handler就可以读取到请求的header信息,保证了请求之间独立。 Go中的ServeMux 上面代码中提到了c(这个c就是connection).serve()方法。其实内部是调用了http包默认的路由器,通过路由器把本次请求的信息传递到了后端的处理函数。 默认路由