Nginx+Tomcat搭建负载均衡集群

概述

之前我们进行Web开发时,一直是单机单Tomcat运行,为了提升应用在高并发下的高可用性。我们采用单机多部署Tomcat,通过Nginx实现负载均衡。形象地说,之前什么活都交给一只猫(Tomcat)干,现在我们多养几只猫来干活,但是可能会出现其他猫看着一只猫在干活,为了解决"有些猫累死,有些猫闲死这一问题",我们又用Nginx进行代理以此实现负载均衡
在这里插入图片描述

Tomcat多实例部署

Tomcat单实例部署,一个Tomcat服务器运行时,不存在负载均衡。我们首先要做的就是Tomcat多实例部署,将我们的同一个应用部署在多个Tomcat上同时运行

先前我已经配置过一个Tomcat了,现在我重新复制两个新的Tomcat:

cp -R apache-tomcat-9.0.16 tomcat003
cp -R apache-tomcat-9.0.16 tomcat004
1.分离目录

Tomcat中两个比较重要的概念(通常也是系统变量)CATALINA_HOMECATALINA_BASE

  • CATALINA_HOME:即指向Tomcat安装路径的系统变量(安装目录)
  • CATALINA_BASE:即指向活跃配置路径的系统变量(工作目录)

通过设置这两个变量,就可以将Tomcat的安装目录和工作目录分离,从而实现Tomcat多实例部署

1)进入到/etc/profile 增加Tomcat环境变量

export CATALINA_3_BASE=/home/Reyco/lib/tomcat003
export CATALINA_3_HOME=/home/Reyco/lib/tomcat003
export TOMCAT_3_HOME=/home/Reyco/lib/tomcat003

export CATALINA_4_BASE=/home/Reyco/lib/tomcat004
export CATALINA_4_HOME=/home/Reyco/lib/tomcat004
export TOMCAT_4_HOME=/home/Reyco/lib/tomcat004

2)执行 source /etc/profile 使配置文件生效

3)打开新Tomcat目录bin下的catalina.sh,找到#OS语句,添加对应的CATALINA_BASECATALINA_HOME

export CATALINA_BASE=$CATALINA_3_BASE
export CATALINA_HOME=$CATALINA_3_HOME

export CATALINA_BASE=$CATALINA_4_BASE
export CATALINA_HOME=$CATALINA_4_HOME

4) 修改Server.xml中的三个端口号

这里我将Tomcat003的端口修改为11080,Tomcat004的端口修改为10080

5)修改Tomcat下的图标,以便于区分Tomcat,将/webapps/Root下的tomcat.png替换成其他图标便于区分

Nginx与Tomcat结合

Ngnix 和 Tomcat 结合实现负载均衡的需求大概是这样的:用户访问服务器的 80 端口,Ngnix 接收到请求之后转发至 10080 端口或者 11080 端口由 Tomcat 处理。两个 Tomcat 部署了同一个应用,这样就可以实现负载均衡,可以由两个 Tomcat 同时处理用户请求。这里我们以 localhost 为例,开始配置 Ngnix

1)先在/etc/hosts下设置虚拟主机,这里我设置127.0.0.1:www.SmallXin.com

2)配置Nginx文件,创建small.xin.com.conf

upstream SmallXin.com{
        server www.SmallXin.com:10080 weight=1;
        server www.SmallXin.com:11080 weight=1;

}


server{
        listen 80;
        autoindex on;
        server_name www.SmallXin.com;
        access_log /usr/local/nginx/logs/access.log combined;
        index index.html index.htm index.jsp index.php;
        location /{
                proxy_pass http://SmallXin.com;
                add_header Access-Control-Allow-Origin *;
        }
}

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值