【集群部署】Windows下Nginx负载均衡+Tomcat7集群

近期项目又需要用到集群,之前也弄过nginx,但是总是出问题,只好暂用配置繁琐的Apache顶一下。几个月之后重新来学习,几个月前的问题竟然就解决了。在此记录下来,算是个年终技术总结哈哈。
一、准备工具:
Nginx-1.13.3 两个Tomcat-7.0.63 这里本地测试环境就垂直集群
server IP port
Nginx 192.168.10.158 7777
Tomcat1 192.168.10.158 8080
Tomcat2 192.168.10.158 8081
二、Tomcat配置:
tomcat没啥配置这里就用个测试文件试试就行了。
在tomcat的 websapp\balance 下写一个测试文件 test.jsp
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ page import="java.util.*"%>

    
        ApacheTomcatTest
    
    
        <%
            out.println("
SESSION ID:" + session.getId() + "
"); out.println("这是8080"); %>
红字内容根据不同的tomcat配置输出就行了。
两个tomcat分别在server.xml配置端口,需要特别注意 端口冲突问题
修改之后测试一下是否所有tomcat都正常启动。
【集群部署】Windows下Nginx负载均衡+Tomcat7集群_第1张图片
三、Nginx配置:
【集群部署】Windows下Nginx负载均衡+Tomcat7集群_第2张图片
weight:权重比值,值越高,那个节点的的负载越大。
proxy_connect_timeout 1; 连接超时时间
proxy_read_timeout 1; 读取超时时间
proxy_send_timeout 1; 发送请求时间
这三个超时时间设置短一点,nginx默认的超时时间是一分钟,可以避免其中一个tomcat宕机,nginx响应很慢的问题。这也是我上次遇到的一个坑。
四、启动Nginx并测试:
cmd下执行
http://192.168.10.158:7777/balance/test.jsp F5刷新几次看看是否随机到tomcat
【集群部署】Windows下Nginx负载均衡+Tomcat7集群_第3张图片
如图所示就是成功了。集群部署还有一个很需要解决的问题就是session共享问题,放在下一个章节单独讲讲。

你可能感兴趣的:(集群)