【翠花学Linux】使用 Tomcat + nginx 实现负载均衡

负载均衡:

首先进入linux服务器中的tomcat里面。

上传一个项目放到tomcat的webapps文件夹中。

上传之后进入bin目录,启动tomcat。

 打开浏览器,输入服务器的ip地址,查看项目是否能够正常运行。

正常运行之后关掉tomcat,改掉tomcat名字文件名为tomcat8080,并重新解压tomcat压缩包,改名为tomcat9090。 

打开tomcat9090中的server.xml文件,其中的三个端口号分别是:

  • 8005端口:用 shutdown.sh 关闭 Tomcat 的时候需要用到的端口号,如果此端口没启动,Tomcat 不能用 shutdown 命令关闭。

  • 8009端口:是 Tomcat 负责和其他的 HTTP 服务器建立连接的端口,如 Nginx 和 Apache 互通时使用。(AJP/1.3 协议)

  • 8080端口:HTTP 访问时使用的端口。(HTTP/1.1 协议)

修改tomcat9090的三个端口号,将它与tomcat8080区分开来。

将tomcat8080的项目删除到tomcat9090文件夹中,并将8080的index.jsp页面的内容改为9090index.jsp。

全部修改完毕之后将tomcat8080和tomcat9090全部启动起来。

 启动之后若想查看9090端口的项目,需要先开启防火墙里的9090端口,然后再在阿里云配置安全组。

配置完之后打开浏览器即可访问9090端口的项目。

这时候在两个端口都能够独自运行的情况下,我想通过nginx来实现负载均衡。

先进入服务器中的nginx安装目录。

 进入该文件夹下的conf目录下面找到nginx.conf文件。

注意,找的文件是在安装目录下,而并不是启动目录下。

 在http括号里添加如下内容:

upstream kunge{
           server 101.132.178.136:8080;
           server 101.132.178.136:9090;
        }

注意:其中kunge是随意的,101.132.178.136是你服务器的ip地址。

找到如下内容:将括号里的内容改为:proxy_pass http://kunge; 其中kunge为你刚刚设置的upstream后面的名称。其中意思为:当你跳根路径时,代理跳转到kunge。而kunge设置的ip地址时服务器的8080端口和9090端口,所以当运行时跳转的是8080端口的内容与9090端口的内容。

改完之后先关闭nginx服务/usr/local/nginx/sbin/nginx -s stop ,再重新动/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 。 

此时打开浏览器,输入ip地址加上项目名的jsp页面,不断地刷新即可看到8080端口的内容和9090端口的内容 。

 nginx的作用主要是当用户请求量过大时,服务器会启动若干个tomcat实例来分摊请求压力。

权重:

在请求路径后面加上weight属性,weight属性可以是任意值,以下代码的意思为,如果此时有四个请求,那么三个请求都会进入8080端口,只有一个请求会进入9090端口。

 权重也是轮询的一种。(轮询:服务器轮流询问不同的端口内容)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BUG忠实爱好者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值