HTTP

为什么 Go 一个 HTTP 服务可以同时处理数万连接

Why: 一个 Go 服务为什么可以同时处理几万甚至几十万连接? 答案并不复杂,Go net/http 的实现采用了每个 TCP 连接对应一个 Goroutine 的模型。 服务启动流程 一个 HTTP 服务通常从下面这行代码开始: http.ListenAndServe(":8080", nil) 它内部的调用流程如下: 核心代码: for { rw, err := …