前面已经介绍了如何通过 Go语言搭建一个 Web 服务,我们可以看到简单应用一个 net/http 包就方便的搭建起来了。那么 Go语言在底层到底是怎么做的呢?
web 工作方式的几个概念
以下均是服务器端的几个概念
-
Request:用户请求的信息,用来解析用户的请求信息,包括 post、get、cookie、url 等信息
-
Response:服务器需要反馈给客户端的信息
-
Conn:用户的每次请求链接
-
Handler:处理请求和生成返回信息的处理逻辑
分析 http 包运行机制
下图是 Go 实现 Web 服务的工作模式的流程图
图:http 包执行流程