欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

nginx(4):nginx负载均衡

程序员文章站 2022-07-13 10:31:23
...

一、实现功能

Nginx实现负载均衡配置过程。

二、分配服务器策略

1.第一种 轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。

2.第二种 weight

weight 代表权重默认为 1,权重越高被分配的客户端越多

3.第三种 ip_hash

每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器

4.第四种 fair(第三方)

按后端服务器的响应时间来分配请求,响应时间短的优先分配。

三、实现步骤

1.测试tomcat开启两个实例

/opt/modules/tomcat1—》http://192.168.0.9:8081/
/opt/modules/tomcat3—》http://192.168.0.9:8083/

nginx(4):nginx负载均衡
2.配置本地hosts映射【反向代理】

192.168.0.9       hadoop02

3.配置nginx配置文件/usr/local/nginx/conf/nginx.conf

(1)http下添加服务器ip:端口号:upstream
    upstream mytomcat{
        server 192.168.0.9:8081;
        server 192.168.0.9:8083;
        }
(2)修改http下server的代理路径为上面定义的名称
        location / {
           # root   html;
           # index  index.html index.htm;
           # proxy_pass http://192.168.0.9:8081;
           proxy_pass http://mytomcat;
           add_header Access-Control-Allow-Origin *;
        }

(3)最终配置

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;
    upstream mytomcat{
        server 192.168.0.9:8081;
        server 192.168.0.9:8083;
        }

    server {
        listen       80;
        server_name  hadoop02;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
           # root   html;
           # index  index.html index.htm;
           # proxy_pass http://192.168.0.9:8081;
           proxy_pass http://mytomcat;
           add_header Access-Control-Allow-Origin *;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

   
    }


}

4.测试http://hadoop02/访问结果

nginx(4):nginx负载均衡
四、参考

1.【Nginx】实现负载均衡的几种方式
https://www.cnblogs.com/alterem/p/11490367.html
 

相关标签: nginx 负载均衡