Tomcat 多实例

news2025/2/26 7:06:08

一、Tomcat 多实例

1、概念:

Tomcat 多实例是指在同一台服务器上运行多个独立的 Tomcat 服务器实例。它们可以同时运行在同一台物理服务器或虚拟服务器上,但它们彼此之间是相互独立的,有各自的配置、应用程序和资源。

2、配置:

(1) 关闭 Tomcat:

bash /usr/local/tomcat/bin/shutdown.sh

在配置Tomcat之前关闭主站的主要原因是为了确保配置更改能够正确生效且不会引发问题。

(2) 准备多实例目录:

① 创建目录:

mkdir  /usr/local/tomcat/instance{1..3}

② 将 /usr/local/tomcat/ 目录下的 conf、logs、temp 和 work 这四个子目录及其内容复制到实例目录中:

cp  -r  /usr/local/tomcat/{conf,logs,temp,work}  /usr/local/tomcat/instance1/

cp  -r  /usr/local/tomcat/{conf,logs,temp,work}  /usr/local/tomcat/instance2/

cp  -r  /usr/local/tomcat/{conf,logs,temp,work}  /usr/local/tomcat/instance3/

(3) 修改端口

Tomcat 多实例的配置中,修改端口是为了确保每个 Tomcat 实例在同一台服务器上运行时能够使用不同的网络端口,避免端口冲突,同时可以将这些不同的实例隔离开。

① 修改实例1的端口配置:

vim /usr/local/tomcat/instance1/conf/server.xml

● 修改服务端口:8080 → 8081

● 修改程序端口:8005 → 8091

● 修改网站目录:

appBase:定义了虚拟主机将从哪个目录加载部署的Web应用程序。

② 修改实例2的端口配置:

将实例1的web配置文件拷贝给实例2:

cp  /usr/local/tomcat/instance1/conf/server.xml  /usr/local/tomcat/instance2/conf/

● 修改服务端口:8081 → 8082

● 修改程序端口:8091 → 8092

示例2与示例3的网站主目录也是 /webapps

③ 修改示例3的端口配置:

将实例1的web配置文件拷贝给实例3:

cp  /usr/local/tomcat/instance1/conf/server.xml  /usr/local/tomcat/instance3/conf/

服务端口:8081 → 8083 ;程序端口:8091 → 8093

(4) 编写启动脚本:

① 编写实例1的脚本:
#!/bin/bash

#instance1

. /etc/init.d/functions

export CATALINA_BASE="/usr/local/tomcat/instance1"

case "$1" in

start)
    $CATALINA_HOME/bin/startup.sh
    ;;

stop)
    $CATALINA_HOME/bin/shutdown.sh
    ;;

restart)
    $CATALINA_HOME/bin/shutdown.sh
    sleep 5
    $CATALINA_HOME/bin/startup.sh
    ;;

esac

export JAVA_OPTS='-Xms64m -Xmx128m'

② 将实例1的启动脚本拷贝给实例2、3:

cp  /usr/local/tomcat/instance1/ins1.sh  /usr/local/tomcat/instance2/ins2.sh

cp  /usr/local/tomcat/instance1/ins1.sh  /usr/local/tomcat/instance3/ins3.sh

拷贝后记得修改对应的 CATALINA_BASE 路径:

③ 给脚本授权:

chmod  +x  /usr/local/tomcat/instance1/ins1.sh  /usr/local/tomcat/instance2/ins2.sh  /usr/local/tomcat/instance3/ins3.sh

(5) 准备网站源码:

mkdir  /webapps/

cp  -r  /usr/local/tomcat/webapps/ROOT/  /webapps/

(6) 启动脚本并测试:

/usr/local/tomcat/instance1/ins1.sh  start

/usr/local/tomcat/instance2/ins2.sh  start

/usr/local/tomcat/instance3/ins3.sh  start

二、JVM 常用分析工具

1、jps

jps(Java Virtual Machine Process Status Tool)是Java开发工具包(JDK)提供的一个命令行工具,jps 通常用于查看和管理Java应用程序的运行时进程。

语法:

jps:列出正在运行的Java进程的PID和主类名。

jps -l:列出正在运行的Java进程的PID和完整的主类名(包括包路径)。

jps -m:除了PID和主类名外,还显示传递给main方法的参数。

jps -v:显示传递给java命令的所有JVM参数。

jps -q:只显示PID,不显示主类名或参数。

2、jinfo

jinfo 是Java Development Kit(JDK)提供的一个命令行工具,用于查看和修改正在运行的Java进程的Java虚拟机(JVM)配置参数。

3、jstack

jstack 是Java Development Kit(JDK)提供的一个命令行工具,用来观察 jvm 中当前所有线程的运行情况和线程当前状态。

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

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

相关文章

IDEA 2023.1.3图文安装教程及下载

IDEA 2023.1 最新变化是在 IDEA 2023.1 中,对新 UI 做出了大量改进。实现了性能增强,从而更快导入 Maven,以及在打开项目时更早提供 IDE 功能。 新版本通过后台提交检查提供了简化的提交流程。 IntelliJ IDEA Ultimate 现在支持 Spring Secur…

2023-2024年华为ICT网络赛道模拟题库

2023-2024年网络赛道模拟题库上线啦,全面覆盖网络,安全,vlan考点,都是带有解析 参赛对象及要求: 参赛对象:现有华为ICT学院及未来有意愿成为华为ICT学院的本科及高职院校在校学生。 参赛要求&#xff1a…

2023年上半年软考网工选择题易错总结

1.固态硬盘的存储介质是( )。 A.光盘 B.闪存 C.软盘 D.磁盘 答案:B 解析: 光盘CD-ROM和软盘是塑料的,磁盘的介质是磁性金属圆盘(附着铝合金),固态硬盘采用的存储介质是flash(闪存…

计算机专业毕业设计项目推荐14-文档编辑平台(SpringBoot+Vue+Mysql)

文档编辑平台(SpringBootVueMysql) **介绍****各部分模块实现** 介绍 本系列(后期可能博主会统一为专栏)博文献给即将毕业的计算机专业同学们,因为博主自身本科和硕士也是科班出生,所以也比较了解计算机专业的毕业设计流程以及模式,在编写的…

简易版Pycharm(2023)+Conda开发环境配置教程

困 扰 不知道为什么,自从Pycharm更新了新的版本以后,在Pycharm中为项目工程配置Python解释器环境时,总是不能像以前那么方便的配置。 比如,当前Conda中有十个不同的开发环境,每个环境一个名称,比如&#x…

【群智能算法改进】一种改进的光学显微镜算法 IOMA算法[1]【Matlab代码#60】

文章目录 【获取资源请见文章第5节:资源获取】1. 光学显微镜算法(OMA)1.1 物镜放大倍数1.2 目镜放大倍数 2. 改进后的IOMA算法2.1 透镜成像折射方向学习 3. 部分代码展示4. 仿真结果展示5. 资源获取说明 【获取资源请见文章第5节:…

MQ - 36 云原生:业界MQ的计算存储分离的设计与实现

文章目录 导图概述什么是存算分离架构必须是存算分离架构吗实现存算分离架构的技术思考如何选择合适的存储层引擎存储层:分区存储模型的设计计算层:弹性无状态的写入业界主流存算分离架构分析RocketMQ 5.0 架构分析Pulsar 存算架构分析总结导图 概述 结合云原生、Serverless…

阿里云轻量应用服务器有月流量限制吗?

阿里云轻量应用服务器限制流量吗?部分限制,2核2G3M和2核4G4M这两款轻量应用服务器不限制月流量,其他的轻量服务器套餐有月流量限制。 腾讯云轻量应用服务器价格便宜,活动页面:aliyunbaike.com/go/tencent 细心的同学看…

JavaWeb:上传文件

1.建普通maven项目,或者maven项目,这里以普通maven为例,区别的jar包的导入方式啦 到中央仓库下载哦 2.结构 3.写fileservlet public class FileServlet extends HttpServlet {Overrideprotected void doPost(HttpServletRequest req, HttpSe…

Elasticsearch:使用 ELSER 文本扩展进行语义搜索

在今天的文章里,我来详细地介绍如何使用 ELSER 进行文本扩展驱动的语义搜索。 安装 Elasticsearch 及 Kibana 如果你还没有安装好自己的 Elasticsearch 及 Kibana,请参考如下的链接来进行安装: 如何在 Linux,MacOS 及 Windows 上…

3.primitive主数据类型和引用 认识变量

3.1 声明变量 Java注重类型。它不会让你做出把长颈鹿类型变量装进兔子类型变量中这种诡异又危险的举动——如果有人对长颈鹿调用“跳跃”这个方法会发生什么样的悲剧?并且它也不会让你将浮点数类型变量放进整数类型的变量中,除非你先跟编译器确认过数字…

自动驾驶传感器技术

自动驾驶传感器技术是自动驾驶系统的关键组成部分,它使车辆能够感知并理解周围环境。本文将深入探讨自动驾驶传感器技术,包括常见类型、工作原理以及它们在自动驾驶中的作用。 1. 摄像头 摄像头的工作原理 摄像头是基于光学原理的传感器,其…

知识图谱1_2——下载neo4j客户端

客户端下载 这里展现一种通过客户端进行操作的方法 https://neo4j.com/download/ 下载desktop客户端 填写完成后开始下载 下载完成后&#xff0c;在命令行输入 chmod x <文件名> #给予文件权限 sudo add-apt-repository universe #安装.appimage所需的包fuse&#x…

Gooxi国鑫搭载第四代英特尔至强可扩展处理器系列服务器焕新登场

由算力驱动的数字经济渗透到了百行千业&#xff0c;在驱动传统经济转型升级和效能优化的同时&#xff0c;也大幅度增加了各行业数据处理能力的需求 。 面对千行百业加速创新应用和AIGC时代像潮水一样奔涌算力需求&#xff0c;得益于第四代英特尔至强可扩展处理器以及基于Gooxi最…

功率谱密度估计 - welch方法的实现

因本人知识欠缺&#xff0c;后续再对下述展开讲述。 clc;clear;close all; fs 44100; t 0:1/fs:1-1/fs; x randn(size(t));load("myfir64.mat"); filtercoe myfir64; y filter(filtercoe, 1, x);[Hx, w] freqz(filtercoe, 1, fs); fx w*fs/2/pi; subplot(211…

RK3568平台开发系列讲解(驱动篇)rk3568 的 pinctrl 子系统驱动

🚀返回专栏总目录 文章目录 一、pinctrl 子系统简介二、rk3568 的 pinctrl 子系统驱动2.1、PIN_BANK2.2、PIN_BANK_IDX2.3、MUX2.4、phandle沉淀、分享、成长,让自己和他人都能有所收获!😄 📢Linux 是一个庞大而完善的系统,尤其是驱动框架,像 GPIO 这种最基本的驱动不…

MySQL8 间隙锁在11种情况下的锁持有情况分析

测试环境及相关必要知识 测试环境为mysql 8 版本 间隙锁&#xff08;Gap Lock&#xff09;&#xff1a;用于锁定索引范围之间的间隙&#xff0c;防止其他事务在此间隙中插入新记录。间隙锁主要用于防止幻读问题。 在可重复读的隔离级别下默认打开该锁机制&#xff0c;解决幻…

Hadoop设置hdfs全局指令

在终端进入用户个人环境变量配置文件 vim ~/.bashrc 然后添加如下内容 export PATH$PATH:/usr/local/hadoop/bin 添加到你的hadoop下载目录的bin目录为止就可以了 重新激活一下配置文件 source ~/.bashrc hdfs有专属于自己的文件存储目录,加上特殊的指令就可以箱终端一…

windows redis 自启动 Redis服务无法启动报错1067问题

如果你的系统服务里面已经有redis服务并且无法启动&#xff0c;则使用下面的命令卸载此服务 ! 1、停止Redis服务&#xff1a; redis-server --service-uninstall 2、删除系统服务 sc delete redis 进入到你的Redis安装目录&#xff0c;我的在以下目录&#xff0c;谨记此时不…

Pikachu靶场——XSS漏洞(Cross-Site Scripting)

文章目录 1. XSS&#xff08;Cross-Site Scripting&#xff09;1.1 反射型XSS(get)1.2 反射型XSS(post)1.3 存储型XSS1.4 DOM型XSS1.5 DOM型XSS-X1.6 XSS盲打1.7 XSS之过滤1.8 XSS之htmlspecialcharss1.9 XSS之href输出1.10 XSS之JS输出1.11 XSS 漏洞防御 1. XSS&#xff08;Cr…