Windows下Nginx1.8.1+Tomcat7.0.65集成实现负载均衡集群示例

Nginx (“engine x”) 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor 将源代码以类BSD许可证的形式发布。Nginx 超越 Apache 的高性能和稳定性。

Nginx+Tomcat是目前主流的Java web架构,很多公司在使用,Nginx+Tomcat通过简单的配置,可以实现高性能的负载均衡,通过本文学习,可以实现Nginx+Tomcat负载均衡。

工具资源

1、Java运行环境,JDK
2、Tomcat7.0.65压缩版 下载
3、Nginx1.8.1稳定版 下载

本文基于win10进行配置

配置步骤

1、JDK环境配置 略

2、Tomcat安装配置
请参考: 一台服务器安装运行多个Tomcat及注册服务
本测试安装两个Tomcat,端口分别是8801和8802
安装配置完成后请确保每一个Tomcat可以正常访问

为了区分两个Tomcat,本文将第二个Tomcat的页面名称改为:Apache Tomcat/7.0.65-2

3、Nginx配置

  1. 解压Nginx到D盘根目录
    这里写图片描述

  2. 修改Nginx配置

#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;  #默认文件类型  

    #access_log  logs/access.log  main;

    sendfile        on; #开启高效文件传输模式 
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65; #长连接超时时间,单位是秒  

    #gzip  on; #启用Gizp压缩  

    #服务器的集群  
    upstream  tomcatColony {  #服务器集群名字   
        server    127.0.0.1:8801  weight=0;  
        server    127.0.0.1:8802  weight=1;  
    }  

    server {
        listen       8080; #监听端口,默认是80,可以修改  
        server_name  localhost; #当前服务的域名

        location / {  
            proxy_pass http://tomcatColony;  #指定使用集群
            proxy_redirect default;  
        }  

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

注意:nginx在配置upstream时,有两个参数:
ip_hash(同一IP一直使用同一台server服务)
weight(server的使用权重,数值越大,nginx分发的请求越多)

  1. 启动Nginx
    Nginx目录下:D:\nginx-1.8.1,运行nginx.exe,即可启动。启动可查看进程
    这里写图片描述

效果

访问:http://127.0.0.1:8080/,即可打开Tomcat,通过不断F5刷新,可以观察在Tomcat1、2之间切换,由于集群中Tomcat2权重配置较大,所有Tomat分配到Tomcat的几率就大一些。

这里写图片描述
这里写图片描述

总结

通过以上简单配置,可以实现高性能负载均衡,Nginx不仅仅实现反向代理,同时可以实现Http请求处理,可以结合Tomcat实现动静分离,静态资源交由Nginx处理,动态请求分配给Tomcat处理,这样大大减轻后端Tomcat的处理压力。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值