Code前端首页关于Code前端联系我们

Nginx 入门实践:配置负载均衡

terry 2年前 (2023-09-28) 阅读数 59 #未命名

10。配置负载均衡

负载均衡之前已经介绍过相关概念。主要思想是在多台服务器之间均匀合理的分配负载,达到压力重定向的目的。

主要配置如下:

http {
  upstream myserver {
  	# ip_hash;  # ip_hash 方式
    # fair;   # fair 方式
    server 127.0.0.1:8081;  # 负载均衡目的服务地址
    server 127.0.0.1:8080;
    server 127.0.0.1:8082 weight=10;  # weight 方式,不写默认为 1
  }
 
  server {
    location / {
    	proxy_pass http://myserver;
      proxy_connect_timeout 10;
    }
  }
}
复制代码

Nginx提供了多种分发方式。默认设置是轮询,这意味着回合制游戏。分配方式有以下几种:

  1. 轮询,默认模式,每个请求按照时间顺序一一分配到不同的后端服务器。如果后端服务崩溃,可以自动排除;
  2. weight,权重分布,指定轮询概率,权重越高,越容易被访问,用于后端服务器性能参差不齐的情况;
  3. ip_hash,每个请求都是基于访问IP的hash。结果以这样的方式分布,每个访问者都固定访问后端服务器,可以解决动态共享网页会话的问题。每个负载平衡请求都会转移到服务器集群中的特定请求。如果已登录一台服务器的用户移动到另一台服务器,则其登录凭据将丢失。这显然是不恰当的;
  4. fair (第三方),根据后端服务器的响应时间分配,优先考虑响应时间短的,依赖第三方插件nginx-upstream-fair,首先需要已安装;

作者:SHERlocked93

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

热门