Nginx系列教材 (五)- 和Tomcat进行负载均衡

 

步骤1:负载均衡的概念
步骤2:启动两个Tomcat
步骤3:修改nginx.conf
步骤4:重启nginx并访问

步骤 1 : 负载均衡的概念

负载均衡的概念就是当访问量很大的时候,一个 Tomcat 吃不消了,这时候就准备多个 Tomcat,由Nginx按照权重来对请求进行分配,从而缓解单独一个Tomcat受到的压力

负载均衡的概念

步骤 2 : 启动两个Tomcat

多个Tomcat下载解压8111和8222两个tomcat,并启动

启动两个Tomcat

步骤 3 : 修改nginx.conf

首先增加一个upstream ,用来指向这两个tomcat

upstream tomcat_8111_8222{

server  127.0.0.1:8111 weight=1;

server  127.0.0.1:8222 weight=2;

}


然后修改location,反向代理到上述配置。

    location / {

        proxy_pass http://tomcat_8111_8222;

}



weight表示权重,值越大,被分配到的几率越大。 最大多少呢?我也不知道。。。反正10以内都可以用吧,我想的话~

#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 tomcat_8111_8222{

    server  127.0.0.1:8111  weight=1;

    server  127.0.0.1:8222 weight=2;

    }

 

    server {

        listen       80;

        server_name  localhost;

 

        #charset koi8-r;

 

        #access_log  logs/host.access.log  main;

 

        location / {

            proxy_pass http://tomcat_8111_8222;

    }

 

        location ~\.(css|js|png)$ {

            root C:/Users/X7TI/Downloads/tomcat_8111/webapps/ROOT;

    }

 

        #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;

        }

 

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80

        #

        #location ~ \.php$ {

        #    proxy_pass   http://127.0.0.1;

        #}

 

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

        #

        #location ~ \.php$ {

        #    root           html;

        #    fastcgi_pass   127.0.0.1:9000;

        #    fastcgi_index  index.php;

        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

        #    include        fastcgi_params;

        #}

 

        # deny access to .htaccess files, if Apache's document root

        # concurs with nginx's one

        #

        #location ~ /\.ht {

        #    deny  all;

        #}

    }

 

    # another virtual host using mix of IP-, name-, and port-based configuration

    #

    #server {

    #    listen       8000;

    #    listen       somename:8080;

    #    server_name  somename  alias  another.alias;

 

    #    location / {

    #        root   html;

    #        index  index.html index.htm;

    #    }

    #}

 

    # HTTPS server

    #

    #server {

    #    listen       443 ssl;

    #    server_name  localhost;

 

    #    ssl_certificate      cert.pem;

    #    ssl_certificate_key  cert.key;

 

    #    ssl_session_cache    shared:SSL:1m;

    #    ssl_session_timeout  5m;

 

    #    ssl_ciphers  HIGH:!aNULL:!MD5;

    #    ssl_prefer_server_ciphers  on;

 

    #    location / {

    #        root   html;

    #        index  index.html index.htm;

    #    }

    #}

 

}

步骤 4 : 重启nginx并访问

使用命令 nginx -s reload 重启,然后使劲访问

http://127.0.0.1/login.jsp



此时就可以观察到对jsp的访问,被分配到了不同的 Tomcat上

重启nginx并访问


更多内容,点击了解: https://how2j.cn/k/nginx/nginx-balance/1568.html

posted @ 2020-04-25 20:06  Lan_ht  阅读(137)  评论(0编辑  收藏  举报