• tomcat+ngnix单机搭建集群及端口占用问题


    1.将tomcat复制两份,如下:

    2.新建环境变量,如下:

    3.修改其中一个的配置文件,另一个保持不变,修改server.xml配置文件如下:

    <Server port="9005" shutdown="SHUTDOWN">
    
        <Connector port="9080" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
    
    <Connector port="9009" protocol="AJP/1.3" redirectPort="8443" />

    4.修改catalina.bat和startup.bat,如下:

    将所有CATALINA_BASE改为CATALINA_2_BASE,将所有CATALINA_HOME改为CATALINA_2_HOME

    5.分别start两个tomcat,如果都能正常启动,且都用自己的环境变量,则说明配置成功。

    6.修改host文件配置:127.0.0.1 域名

    127.0.0.1 tomcat2.mall.com

     7.进入ngnix中,针对刚才配置的域名,新建conf配置文件,配置内容如下:

    upstream tomcat2.mall.com {
    #weight是权重相对比例,也就是刷新tomcat2.mall.com时,负载均衡到的网页的可能比例 server 127.0.0.1:8080 weight=1;#【=两边一定不要加空格】 server 127.0.0.1:9080 weight=1; #server tomcat2.mall.com:8080; #server tomcat2.mall.com:9080; } server { listen 80; autoindex on; server_name tomcat2.mall.com; access_log E:/software_setup/nginx-1.10.2/nginx-1.10.2/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://tomcat2.mall.com; add_header Access-Control-Allow-Origin *; } }

    8.开启tomcat,开启ngnix,刷新url:tomcat2.mall.com,可以观察变化(可以修改tomcat->root下的tomcat.png的图片,观察变化)。

    在idea端开启两个tomcat服务:

    1.复制一份源码,并重命名,利用idea打开两个源码,就有两个窗口打开。

    2.编辑第二份源码里的tomcat,如图:,修改:,将其选择在上面已经准备好的tomcat2上。然后修改:,如果正确选择在tomcat2上,http端口会自动获取到配置好的tomcat2的端口,这里应该是9080,然后修改JMX端口,不然就会与tomcat1发生冲突,这里可以改为2099.。最后修改:,删除原有的deployment,重新添加一个deployment,注意要选mall:war,不要选mall:war exploded。

    3.到此为止,就可以分别启动tomcat1和tomcat2了,但是在最后关闭tomcat时,会出现端口占用问题,也就是有一个tomcat没有真正关闭,会出现这样的图标:,解决办法:在cmd命令行执行:netstat -ano,查看端口占用状态。而只要查看到1099端口的占用状态即可,比如此时是:,打开任务管理器,查看当前进程:,发现正在运行,结束当前进程即可。此时图标还原到正常:

  • 相关阅读:
    数据库原理 第七章 数据库设计和ER模型
    jeecgboot常见问题及处理方法-found character '@' that cannot start any token. (Do not use @ for indentation)
    jeecgboot积木报表(jimuReport)Oracle切换
    datart表结构
    这几天找工作的经历
    Jenkins 无法登陆解决方法
    Nginx 部署前后端分离项目(SpringBoot Vue)
    CentOS7 用yum方式安装Nginx
    Centos 7 安装 MYSQL 8.0
    Centos 7 安装 JDK1.8
  • 原文地址:https://www.cnblogs.com/cing/p/8585079.html
Copyright © 2020-2023  润新知