nginx+tomcat实现反向代理+负载均衡

实验环境:

CentOS 6.5 单服务器
tomcat 7.0.57 *3
nginx 1.6.2 *1


说明:

tomcat 1 :处理正常电商业务的请求
tomcat 2 :处理夺宝业务请求
tomcat 3 :处理夺宝业务请求

将tomcat 1、2、3分别分配4个端口:
通过修改conf/server.xml,并通过/搜索port可以很快找到四个端口的配置点,其中<!-- --&gt为注释信息。

tomcat 1为默认:
https:8443
http:8080
shutdown:8015
ajp:8019

tomcat 2为:
https:11112
http:11111
shutdown:11113
ajp:11114

tomcat 3为:
https:21112
http:21111
shutdown:21113
ajp:21114



通过反向代理不仅可以一定程度上保证安全,也可以实现动静分离。
负载均衡也可缓解单点服务器的压力,保证其他业务安全,提高响应速度。

通过简单配置nginx.conf可以实现反向代理+负载均衡。


我的配置如下:

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

    sendfile        on;
    keepalive_timeout  65;
    
    #此处为“weight”方式,其他方式包括轮询、ip_hash等。
    upstream web {        #定义web集合,此处可以自定义名称
        server 127.0.0.1:11111 weight=1;    #这将给予21111端口对应的tomcat服务器更多的压力,由于是单服务器,故通过端口来实现对不同tomcat的识别。
        server 127.0.0.1:21111 weight=2;
    }

    server {
        listen       80;
        server_name  localhost;

        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

        location /{
                  if ( $request_uri ~ /[^AAAAA/|BBBBB/](.+) ){
                set $p $1;
                rewrite $p break;
            }
            proxy_pass http://127.0.0.1:8080/MyWebSite/;
        }

        location /MyWebSite/{
            proxy_pass http://127.0.0.1:8080/MyWebSite/;    #将请求转发给tomcat的8080端口
        }

        location /AAAAA/ {
            proxy_pass http://127.0.0.1:8080/AAAAA/;    #AAAAA页面
        }
        
        location /BBBBB/ {
            proxy_pass http://127.0.0.1:8080/BBBBB/;    #BBBBB页面
        }   

        location /MyWebSite/treasure{    #将网站的tresure页面交给上面配置的web集合
            proxy_pass http://web;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

 server {
        listen       443 ssl;    
        server_name  localhost;

        ssl_certificate      /home/dev/ssl/ssl.crt;
        ssl_certificate_key  /home/dev/ssl/ssl_nopass.key;

        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

        location / {
            proxy_pass https://127.0.0.1:8443/MyWebSite/;
        }
        location /faxsun/{
                proxy_pass https://127.0.0.1:8443/MyWebSite/;
        }
    }





其他nginx配置可以见http://blog.itpub.net/29773961/viewspace-1389042/



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29773961/viewspace-1431640/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29773961/viewspace-1431640/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值