2、Tomcat集群实战,并用Nginx实现负载均衡(win环境)

2、Tomcat集群实战,并用Nginx实现负载均衡(win环境)

1、Tomcat的配置

1、系统环境变量配置:

首先要实现Tomcat的集群就得拥有多个tomcat,所以我在本地电脑下载了两个Tomcat,我这里使用的是Tomcat7,当然,配置与Tomcat的版本没多大关系~

img_fb98a0019b88a233d917dbf29ba95b60.png

image.png

下载之后我们先来配置好环境变量:

img_2301322a0d2d6759d7a07479971c6b4f.png

image.png

img_7e5dbb65d2a205bf88f7a4c7c98fd650.png

image.png

在我们的系统变量中增加上面六个对应变量值,对应变量的对应值,是根据自己Tomocat所在的目录决定的,配置的时候自己注意下~

2、更改Tomcat的配置文件

1、tomcat1的修改

首先,我们弄了两个Tomcat,一个tomcat1、一个tomcat2,我们以tomcat1为默认tomcat,然后在tomcat2的基础上更改。
tomcat1上我们只增加一个UTF-8的配置,我们打开tomcat1 conf目录下面的server.xml文件,添加如图所示的:URIEncoding="UTF-8" 配置,防止乱码

img_069a861edd5d9865f08e375f2cfa9fcc.png

image.png

1、tomcat2的修改

首先,
1、tomcat2要修改的第一点是和上面 tomcat1一样,增加URIEncoding="UTF-8" 配置,防止乱码。
2、更改tomcat2的server.xml配置文件里面的相关端口,如下图所示操作即可。

img_c1e3319b79a6f46381d8740680a5c6bc.png

image.png

img_f8e19d1b6c30840be62636b8a3c6d066.png

image.png

img_3baabb7afeb8a84b7c079821b381ecd9.png

image.png

3、修改
tomcat2 /
bin目录下面的相关文件:

img_1d26f9ab8942428a1bd7b5b6f6c14674.png

image.png

修改上图所示的
catalina.bat和
startup.bat这两个配置文件

使用文本编辑器:
Sublime Text或者
Notepad++软件打开上面两个
.bat文件:

需要更改两个地方:

①:我们需要将这两个
.bat文件里面的
CATALINA_HOME全部替换成:
CATALINA_2_HOME

②:
CATALINA_BASE全部替换成:
CATALINA_2_BASE

至此,我们的Tomcat相关的配置就差不多修改完了,为了增加两个Tomcat的区别。

我们把
tomcat2 /
webapps/
ROOT目录下面的
tomcat.png换个图标。

img_3c235fcd38c397ad90dd198b5046a433.png

image.png

好,接下来我们就来运行下试试吧~

我们进对应tomcat下面的
bin目录,使用
CMD运行
startup.bat,如图所示:我们看到下面红色框框中的对比,这就是我们为什么更改上面相关配置文件的原因了,因为不改的话两个同时启动就会有冲突

img_3c1a5cb41ebe37ef83353aa48dd1a2d7.png

image.png

既然tomcat都跑起来了我们就在浏览器里面访问看看吧~

img_4f61d3c3107a91cc8277806824177bcf.png

image.png

可以看到,我们的两个Tomcat都正常跑起来啦~

2、Nginx实现负载均衡

1、修改本地host:

在host文件最下面添加127.0.0.1 www.test123.com,然后保存(注意www前面还有空格的)

img_b7f9eb0239646dce4b3360667f54349d.png

image.png

2、修改Nginx相关配置:

1、打开Nginx conf/nginx.conf文件:下对应行添加入下图所指代码

    include vhost/*.conf;
img_7d11f6491746d5eaad5202a1e45e25a1.png

image.png

2、在Nginx根目录新建vhost文件夹:

img_7c721aa1b799e0c9c81fa596ebdb8d51.png

image.png

3、在
vhost问价夹下新建:
www.imooc.com.conf文件,给这个配置文件添加下面的代码:

upstream www.test123.com{
    server 127.0.0.1:8080;
    server 127.0.0.1:9080;
}
server {
    listen 80;
    autoindex on;
    server_name www.test123.com;
    access_log c:/access.log combined;
    index index.html index.htm index.jsp index.php;
    #error_page 404 /404.html;
    if ( $query_string ~* ".*[\;'\<\>].*" ){
        return 404;
    }
    location / {
        proxy_pass http://www.test123.com;
        add_header Access-Control-Allow-Origin *;
    }
}

好,至此我们的相关配置就差不多配置完啦~
我们下面启动Nginx看看:
在Nginx目录打开cmd

img_d0ca29ee570d3a05f9531db289627a7a.png

image.png

然后执行:start nginx

接下来我们访问在浏览器里面访问试试:

img_4a00efc8d207e8f15bc090171e8ce38d.png

image.png

我们可以看到,访问同一个网址进入到不同的tomcat里面啦~
当然我们还可以设置访问不同tomcat的权重:

在上面的配置文件中配置即可,当然,我们配置完之后记得在Nginx里面执行Nginx -s reload哦~ 以此来刷新我们刚添加的配置。
img_7c94f88e58d95538ad7e8d6b2877140f.png

image.png

权重越大,访问对应的几率也就越大~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101343.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 一女程序员被判 9 个月:因薪酬等问题离职,rm -f * 删库,瘫痪 6 个小时[通俗易懂]

    一女程序员被判 9 个月:因薪酬等问题离职,rm -f * 删库,瘫痪 6 个小时

    2022年2月20日
  • 【RPC Dubbo】dubbo负载均衡策略

    【RPC Dubbo】dubbo负载均衡策略文章目录前言参考前言在上一篇博客中,介绍了zookeeper作为dubbo的注册中心是如何工作的,有一个很重要的点,我们的程序是分布式应用,服务部署在几个节点(服务器)上,当消费者调用服务时,zk返回给dubbo的是一个节点列表,但是dubbo只会选择一台服务器,那么它究竟会选择哪一台呢?这就是dubbo的负载均衡策略了,本篇博客就来聚焦dubbo的负载均衡策略。参考dubbo负载均衡策略…

    2022年7月11日
  • python问题 Traceback (most recent call last)

    python问题 Traceback (most recent call last)python运行问题Traceback(mostrecentcalllast)出现报错traceback(mostrecentcalllast)…………importError:Nomodulenamedlxml解决方案一般是打开cmd执行命令pipinstallxxxx(缺失的包,例如lxml)当然也有例外的,具体可参考下面的问题及其解决…

    2022年6月3日
  • TaskScheduler_taskset -p

    TaskScheduler_taskset -p目录1、DAGScheduler与TaskScheduler2、TaskScheduler与SchedulerBackend3、任务调度过程总结1、DAGScheduler与TaskSchedulerDAGScheduler面向我们整个Job划分出了Stage,划分了Stage是从后往前划分的,执行的时候是从前往后,每个Stage内部有一系列任务,Stage里面的任务是并…

    2022年10月11日
  • mysql批量更新优化_QQ群优化软件

    mysql批量更新优化_QQ群优化软件前面介绍了MySQL批量插入可以通过存储过程的方式来实现,这里介绍批量插入100W记录,并做一个优化。建表语句:create_table.sqldroptableifexistsxx_user;createtablexx_user(idintprimarykeyauto_increment,namevarchar(20),ageint);直接插入:pr…

    2022年10月6日
  • 男生说fb是什么梗_男生聊污是什么意思 男生会对谁聊污

    男生说fb是什么梗_男生聊污是什么意思 男生会对谁聊污男生聊污是在暗示么,肯定啊,经常聊肯定是想要发生些什么,如果能够得到回应肯定就进一步发展了。还有一种情况是为了口嗨,不管是真正的性、还是聊天是聊污,都是为了嗨,最终的目的还是为了上床。一般来讲,女生是不喜欢这样的话题,甚至讲得过份的话会觉得受到侮辱。男生一般不会随便的在女生面前讲起这些话题,讲起来肯定是有目的。费玉清其实也是一种试探,如果两个人能够聊下去,哪怕不发展到床上这种地步,但是也会聊的非常…

    2022年7月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号