Nginx+Tomcat在windows平台上配置负载均衡(1)

目标:实现在Windows平台下完成Nginx+Tomcat负载均衡配置

一般情况是使用多台PC机操作,但为了方便,可以使用同一个PC,修改Tomcat端口实现测试效果。

 一、准备工作

nginx-1.7.9,下载地址:http://nginx.org/en/download.html

apache-tomcat-7.0.57,下载地址:http://tomcat.apache.org/download-70.cgi

将以上两款软件分别下载并解压,其中tomcat需要准备两份。


 

二、Tomcat配置

server.xml配置。在apache-tomcat-7.0.57\conf文件夹下可找到server.xml文件。

2.1、修改Server端口

<Server port="XXXX" shutdown="SHUTDOWN">

改为

<Server port="XXXX" shutdown="SHUTDOWN">

2.2、修改Connector端口

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443">
改为
<Connector port="XXXX" protocol="HTTP/1.1" connectionTimeout="
20000" redirectPort="8443">

2.3修改Engine端口

<Engine name="Catalina" defaultHost="localhost">
改为
<Engine name="Catalina" defaultHost="localhost" jvmRoute="
tomcatX">

tomcatX 在这里表示不同的tomcat,我的两个 tomcat 分别使用 tomcat8080tomcat8081,这个设置主要用以Tomcat集群。

2.4、测试Tomcat配置

分别启动两个Tomcat,无报错且能够访问则表示配置成功。

三、Nginx配置

3.1、解压Nginx,访问解压目录中nginx.exe双击,在浏览器中直接访问http://localhost/,如果出现下图则表明Nginx已正常启动。



2.2配置Tomcat负载均衡

这里只需要修改Nginx的配置,让它通过tomcat来转发,所以我们在这一步只需要在nginx.conf中添加几行代码就行。

http {
    #
这两个文件是需要新建的,要导入
    include  proxy.conf;  #
负责代理转发
    include  gzip.conf;  #
负责压缩数据流

    upstream localhost {
        server localhost:8081 weight=1;
        server localhost:8082 weight=1;
    }
    server {
    #For Tomcat
    location ~ .*.jsp$ {  #
匹配以jsp结尾的,tomcat的网页文件是以jsp结尾
        index   index.jsp;
        proxy_pass      http://localhost; #
主要在这里,设置一个代理
    }
    #For Tomcat
    location /nginxstatus {
        stub_status on;
        access_log on;
        auth_basic "nginxstatus";
        auth_basic_user_file htpasswd;
        }
    }
}

一下这两个文件放到与Nginx配置文件同目录下即可。

proxy.conf 文件内容

proxy_redirect             off;
proxy_set_header           Host $host;
proxy_set_header           X-Real-IP $remote_addr;
proxy_set_header           X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size       10m;
client_body_buffer_size    128k;
proxy_connect_timeout      300;
proxy_send_timeout         300;
proxy_read_timeout         300;
proxy_buffer_size          4k;
proxy_buffers              4 32k;
proxy_busy_buffers_size    64k;
proxy_temp_file_write_size 64k;

 

gzip.conf 文件内容

gzip              on;
gzip_min_length   1000;
gzip_types        text/plain text/css application/x-javascript;

到此处已经都配置完毕。

四、测试反馈

4.1、准备测试代码

编写一个简单JSP文件并放到两个Tomcat的webapps中新建的test文件夹中

index.jsp内容如下:

<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.util.*" %>
<html><head><title>Cluster Test</title></head>
<body>
<%
  //HttpSession session = request.getSession(true);
  System.out.println(session.getId());
  out.println("<br> SESSION ID:" + session.getId()+"<br>");
%>
</body>
</html>

4.2、启动Nginx和Tomcat在浏览器中访问http://localhost/test/index.jsp即可。







 
 另附Nginx配置文件nginx.conf中文详解:http://www.ha97.com/5194.html

 

 

 

 

 

 

 

 


 

猜你喜欢

转载自daffy.iteye.com/blog/2377834