- 分布式系统架构:技术栈详解与快速进阶
- 张程
- 363字
- 2020-08-27 06:02:00
4.4 Nginx代理&负载均衡
Nginx处理HTTP请求的流程如图4-4所示。

图4-4 Nginx处理HTTP请求流程图
注意
通常一个连接建立好后,会读取一行数据,并分析出请求行中包含的method、uri、http_version等信息。然后再一行一行处理请求头,并根据请求method与请求头的信息来决定是否有请求体以及请求体的长度,然后再去读取请求体。得到请求后,处理该请求并输出相应的数据,再生成响应行、响应头以及响应体。在将响应发送给客户端之后,一个完整的请求就处理完了。
负载均衡的作用如下:
1)转发功能:按照一定的算法(默认为轮询),将客户端请求转发到不同应用服务器上,以减轻单个服务器压力,提高系统并发量。
2)故障移除:通过心跳检测的方式,判断应用服务器当前是否可以正常工作,如果服务器宕掉,自动将请求发送到其他应用服务器。
3)恢复添加:如检测到发生故障的应用服务器,则自动将恢复工作添加到处理用户请求队伍中。