Tomcat多实例

一、Tomcat多实例

Tomcat多实例是指在同一台服务器上运行多个独立的tomcat实例,每个tomcat实例都具有独立的配置文件、日志文件、应用程序和端口,通过配置不同的端口和文件目录,可以实现同时运行多个独立的Tomcat服务器,每个服务器都可以独立处理用户的请求,这样可以提高服务器的并发处理能力和灵活性,同时隔离不同的应用程序和配置

1.配置tomcat多实例

修改tomcat主配置文件server.xml中的三个端口号8080、8005、8009

修改tomcat启动停止脚本startup.sh、shutdown.sh添加export CATALINA BASE CATALINA HONE TOWCAT HOME变量都指向实例的工作目录

2.安装tomcat(需装jdk,这里上篇博客已装)

#创建tomcat文件夹(如已创建请无视)

mkdir  /usr/local/tomcat

#实例1

mv  apache-tomcat-9.0.16 /usr/local/tomcat/tomcat1

#实例2

cp -a /usr/local/tomcat/tomcat1  /usr/local/tomcat/tomcat2

#实例3

cp -a /usr/local/tomcat/tomcat1  /usr/lcoal/tomcat/tomcat3

3.配置tomcat环境变量

vim /etc/profile.d/tomcat.sh

#tomcat1
export CATALINA_HOME1=/usr/local/tomcat/tomcat1
export CATALINA_BASE1=/usr/local/tomcat/tomcat1
export TOMCAT_HOME1=/usr/local/tomcat/tomcat1

#tomcat2
export CATALINA_HOME2=/usr/local/tomcat/tomcat2
export CATALINA_BASE2=/usr/local/tomcat/tomcat2
export TOMCAT_HOME2=/usr/local/tomcat/tomcat2

#tomcat3
export CATALINA_HOME3=/usr/local/tomcat/tomcat3
export CATALINA_BASE3=/usr/local/tomcat/tomcat3
export TOMCAT_HOME3=/usr/local/tomcat/tomcat3

source /etc/profile.d/tomcat.sh

4.修改端口号

第一个连接器默认监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器
第二个连接器默认监听8009端口,AJP端口,即容器使用,如Apache能通过AJP协议访问Tomcat的8009端口

#tomcat2
vim /usr/local/tomcat/tomcat2/conf/server.xml  
#22行,修改Server prot,默认为8005 -> 修改为8006
#69行,修改Connector port,HTTP/1.1  默认为8080 -> 修改为8081
#116行,修改Connector port AJP/1.3,默认为8009 -> 修改为8010

#tomcat3
vim /usr/local/tomcat/tomcat3/conf/server.xml
#22行,修改Server prot,默认为8005 -> 修改为8007
#69行,修改Connector port,HTTP/1.1  默认为8080 -> 修改为8082
#116行,修改Connector port AJP/1.3,默认为8009 -> 修改为8011

5.修改各个tomcat实例中的startup.sh和shutdown.sh文件,添加tomcat环境变量

#tomcat1

vim  /usr/local/tomcat/tomcat1/bin/startup.sh

export CATALINA_BASE=$CATALINA_BASE1

export CATALINA_HOME=$CATALINA_HOME1

export TOMCAT_HOME=$TOMCAT_HOME1

vim  /usr/local/tomcat/tomcat1/bin/shutdown.sh

export CATALINA_BASE=$CATALINA_BASE1

export CATALINA_HOME=$CATALINA_HOME1

export TOMCAT_HOME=$TOMCAT_HOME1

#tomcat2

vim  /usr/local/tomcat/tomcat2/bin/startup.sh

export CATALINA_BASE=$CATALINA_BASE2 

export CATALINA_HOME=$CATALINA_HOME2 

export TOMCAT_HOME=$TOMCAT_HOME2

vim  /usr/local/tomcat/tomcat2/bin/shutdown.sh

export CATALINA_BASE=$CATALINA_BASE2 

export CATALINA_HOME=$CATALINA_HOME2 

export TOMCAT_HOME=$TOMCAT_HOME2

#tomcat3

vim  /usr/local/tomcat/tomcat3/bin/startup.sh

export CATALINA_BASE=$CATALINA_BASE3 

export CATALINA_HOME=$CATALINA_HOME3 

export TOMCAT_HOME=$TOMCAT_HOME3

vim  /usr/local/tomcat/tomcat3/bin/shutdown.sh

export CATALINA_BASE=$CATALINA_BASE3 

export CATALINA_HOME=$CATALINA_HOME3 

export TOMCAT_HOME=$TOMCAT_HOME3

tomcat1、2、3全部都要设置

6.启动各tomcat中的/bin/startup.sh

#后台启动

/usr/local/tomcat/tomcat1/bin/startup.sh

/usr/local/tomcat/tomcat2/bin/startup.sh

/usr/local/tomcat/tomcat3/bin/startup.sh

ss  -natp |grep java

7.浏览器访问测试

http://192.168.7.10:8080

http://192.168.7.10:8081

http://192.168.7.10:8082

tomcat多实例配置成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/44306.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

element-plus 按需导入问题 404等问题

场景 新开一个项目,需要用element-plus这个ui库,使用按需引入。 这是我项目的一些版本号 "element-plus": "^2.7.6","vue": "^3.2.13","vue-router": "^4.0.3",过程(看解决方法…

FastGPT+OneAI接入网络模型

文章目录 FastGPT连接OneAI接入网络模型1.准备工作2.开始部署2.1下载 docker-compose.yml2.2修改docker-compose.yml里的参数 3.打开FastGPT添加模型3.1打开OneAPI3.2接入网络模型3.3重启服务 FastGPT连接OneAI接入网络模型 1.准备工作 本文档参考FastGPT的官方文档 主机ip接…

JVM是如何管理内存的?图文详解GC垃圾回收算法

前言:在C/C中对于变量的内存空间一般都是由程序员手动进行管理的,往往会伴随着大量的 malloc 和 free 操作,常常会有很多问题困扰开发者,这个代码会不会发生内存泄漏?会不会重复释放内存?但是在Java开发中我…

基于企业微信第三方接口开发,移除群成员通知

移除群成员通知 返回示例 {"flag": 0, "receiver": 0, "sender_name": "", "is_room": 1, "server_id": 15318083, "send_time": 1687688952, "sender": 1688855749266556, "referid&…

Spring源码十九:Bean实例化流程二

上一篇我们在Spring源码十八:Bean实例化流程一 中,主要讨论了Spring在实例化前的两重要准备工作,1、获取我们前面注册好的BeanDefinition,将GenericBeanDefinition封装为RootBeanDefinition如果Bean Definition只存在父容器中&…

.profile脚本

.profile 是一个用户级别的 shell 启动脚本,用于初始化用户环境设置,通常用于配置环境变量、设置路径、运行初始化命令等。以下是一个示例 if [ "$BASH" ]; thenif [ -f ~/.bashrc ]; then. ~/.bashrcfi fimesg n || true 这段代码通常出现在…

计算器原生js

目录 1.HTML 2.CSS 2.JS 4.资源 5.运行截图 6.下载连接 7.注意事项 1.HTML <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-s…

【C++】引用变量详解

&#x1f4e2;博客主页&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01; &#x1f4e2;本文由 JohnKi 原创&#xff0c;首发于 CSDN&#x1f649; &#x1f4e2;未来很长&#…

文档去重(TF-IDF,MinHash, SimHash)

2个doc有些相似有些不相似&#xff0c;如何衡量这个相似度&#xff1b; 直接用Jaccard距离&#xff0c;计算量太大 TF-IDF: TF*IDF TF&#xff1a;该词在该文档中的出现次数&#xff0c; IDF&#xff1a;该词在所有文档中的多少个文档出现是DF&#xff0c;lg(N/(1DF)) MinHash …

数据分析_计划

我做大数据的有6年了&#xff0c;以前都是用sql&#xff0c;或者spark&#xff0c;java&#xff0c;scala&#xff0c;python去做。现在这些平台搭建、维护、大多数都是搭建一次就完了&#xff0c;而且维护大多是大厂直接用云平台去做。ETL也是就做一次就够了&#xff0c;我们公…

基于JAVA+SpringBoot+Vue+Uni-app前后端分离的校园好物小红书分享平台小程序

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 在快速数字化的时代背…

同三维T80004EA编解码器视频使用操作说明书:高清HDMI编解码器,高清SDI编解码器,4K超清HDMI编解码器,双路4K超高清编解码器

同三维T80004EA编解码器视频使用操作说明书&#xff1a;高清HDMI编解码器&#xff0c;高清SDI编解码器&#xff0c;4K超清HDMI编解码器&#xff0c;双路4K超高清编解码器 同三维T80004EA编解码器视频使用操作说明书&#xff1a;高清HDMI编解码器&#xff0c;高清SDI编解码器&am…

UniVue@v1.3.0版本发布

GitHub仓库 发布版本仓库&#xff1a;https://github.com/Avalon712/UniVue 开发版本仓库&#xff1a;https://github.com/Avalon712/UniVue-Develop UniVue拓展框架UniVue源生成器仓库&#xff1a;https://github.com/Avalon712/UniVue-SourceGenerator v1.3.0版本新增功能…

DangerWind-RPC-framework---四、SPI

SPI 即 Service Provider Interface &#xff0c;可以理解为专门提供给服务提供者或者扩展框架功能的开发者去使用的一个接口。SPI 将服务接口和具体的服务实现分离开来&#xff0c;将服务调用方和服务实现者解耦&#xff0c;能够提升程序的扩展性、可维护性。修改或者替换服务…

etcd 实现分布式锁

10 基于 Etcd 的分布式锁实现原理及方案

如何通过兔子和窝窝的故事理解“在机器人学习和研究中的获得成本与维护成本”(节选)

获得成本 掌握一门课程&#xff0c;以最为简单的学校成绩过60为例&#xff0c;需要按要求提交材料&#xff0c;包括作业、报告、实验和考试等&#xff0c;依据学分和考核要求的不同&#xff0c;需要对于花费时间和经历进行完成。 维护成本 考完了&#xff0c;如果被动学习那…

docker拉取镜像-配置阿里云镜像加速

1、配置阿里云镜像&#xff08;用于拉取镜像加速&#xff09; sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-EOF {"registry-mirrors": ["https://xxxxxxxx.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo syst…

Docker 使用基础(4)—存储卷

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;秒針を噛む—ずっと真夜中でいいのに。 0:34━━━━━━️&#x1f49f;──────── 4:20 &#x1f504; ◀️ ⏸ …

JVM堆内存的结构,YGC,FGC的原理

JVM堆内存结构&#xff1a; JVM堆内存可分为三个区域&#xff1a;新生代&#xff08;Young Generation&#xff09;、年老代&#xff08;Tenured Generation&#xff0c;也叫做Old Generation&#xff09;和永久代&#xff08;Permanent Generation&#xff0c;也叫做Method Ar…

linux 设置nginx开机自启

1、关闭当前nginx运行 systemctl stop nginx 2、添加以下内容到nginx.service文件&#xff0c;注意nginx.pid文件的路径&#xff0c;要替换哦&#xff01; vim /etc/systemd/system/nginx.service [Unit] DescriptionThe NGINX HTTP and reverse proxy server Afternetwork…