NGINX 是一个高性能的 HTTP 和反向代理服务器,广泛用于负载均衡、反向代理、缓存等场景。以下是关于 NGINX 负载均衡相关的知识点:
1. 负载均衡的基本概念
- 负载均衡:将客户端请求分发到多个后端服务器上,以提高系统的可用性、可靠性和性能。
- 反向代理:NGINX 作为反向代理服务器,接收客户端请求并将其转发给后端服务器,后端服务器处理完请求后再通过 NGINX 返回给客户端。
2. 负载均衡的工作模式
NGINX 支持多种负载均衡策略,常用的有以下几种:
-
轮询(Round Robin):默认的负载均衡策略,按照顺序依次将请求分配给后端服务器。
upstream backend { server 192.168.1.101; server 192.168.1.102; }
-
加权轮询(Weighted Round Robin):可以根据服务器的性能为每个服务器分配不同的权重,权重越高,分配的请求越多。
upstream backend { server 192.168.1.101 weight=3; server 192.168.1.102 weight=1; }
-
IP 哈希(IP Hash):根据客户端的 IP 地址进行哈希运算,确保同一个客户端的请求总是被分配到同一台后端服务器。这种方式可以实现会话保持(Session Persistence)。