Nginx负载均衡

什么是负载均衡


  • Load Balance, web服务器的负载是接收/处理客户端请求; 均衡将客户端的请求”平均的”分配给服务器集群

如何实现负载均衡


  • Nginx实现负载均衡需要使用反向代理服务器技术

  • 代理Proxy: 也称为网络代理, 是一种特殊的网络服务, 允许一个网络终端通过这个服务与另一个网络终端进行非直接的连接

  • 正向代理服务器: 隐藏了真实的请求客户端, 服务器不清楚真正的客户端是谁

  • 反向代理服务器: 隐藏了真是的服务器端

Nginx的upstream模块


负载均衡的算法:

  • Round Robin轮询调度算法: 将客户端请求依次顺序地分配给服务器

  • least_conn: 最少连接数算法, 对那些连接数少的服务器(正在处理的请求数少), 分配更多的请求

  • weight: 权重算法, 给服务器分配权重值, 权重值越大, 分配更多的请求

  • ip_hash哈希散列算法: 包含映射关系, 将一组客户端的ip映射到某个指定服务器

Nginx配置文件的修改

  • 轮询算法
upstream umdzz.cn {
    server  192.0.2.1;
    server  192.0.2.2;
server  192.0.2.3; 
}
server {
    location / {
        proxy_pass http://umdzz.cn;
    }
  • least_conn最少连接数算法
upstream umdzz.cn {
    least_conn;
    server  192.0.2.1;
    server  192.0.2.2;
server  192.0.2.3; 
}
server {
    location / {
        proxy_pass http://umdzz.cn;
}
  • weight权重算法
upstream umdzz.cn {
    server  192.0.2.1  weight=50;
    server  192.0.2.2  weight=30;
server  192.0.2.3  weight=10; 
}
server {
    location / {
        proxy_pass http://umdzz.cn;
    }
  • ip_hash哈希散列算法
upstream umdzz.cn {
    ip_hash;
    server  192.0.2.1;
    server  192.0.2.2;
server  192.0.2.3; 
}
server {
    location / {
        proxy_pass http://umdzz.cn;
    }

北溟有鱼QAQ博客
请先登录后发表评论
  • 最新评论
  • 总共0条评论