在CentOS上使用Nginx实现负载均衡,需通过配置upstream
模块选择策略,常见策略及配置方式如下:
轮询(默认):按顺序分发请求,适用于服务器性能相近的场景。
upstream backend {
server backend1.example.com;
server backend2.example.com;
}
加权轮询:按权重比例分发请求,权重越高分配的请求越多,适合服务器性能差异大的场景。
upstream backend {
server backend1.example.com weight=3;
server backend2.example.com weight=2;
}
IP哈希:根据客户端IP地址的哈希值固定请求到同一服务器,适用于需要会话保持的场景(如登录状态)。
upstream backend {
ip_hash;
server backend1.example.com;
server backend2.example.com;
}
最少连接:将请求分配给当前连接数最少的服务器,适合请求处理时间差异大的场景。
upstream backend {
least_conn;
server backend1.example.com;
server backend2.example.com;
}
加权最少连接:结合权重和最少连接策略,优先选择连接少且权重高的服务器。
upstream backend {
least_conn;
server backend1.example.com weight=3;
server backend2.example.com weight=2;
}
配置步骤:
sudo yum install nginx
。/etc/nginx/nginx.conf
),在http
模块中定义upstream
组及策略。sudo systemctl restart nginx
。验证:通过访问Nginx服务器IP,观察请求是否按策略分发到后端服务器。