都2020了你该知道Tomcat真正的启动文件了

举报
JavaEdge 发表于 2021/06/04 02:10:49 2021/06/04
【摘要】 0 前言 全是干货的技术殿堂 文章收录在我的 GitHub 仓库,欢迎Star/fork: Java-Interview-Tutorial https://github.com/Wasabi1234/Java-Interview-Tutorial 真正的启动是在 catalina.sh 设置startup.sh 只是找到catalina.sh 然后执行c...

0 前言

全是干货的技术殿堂

文章收录在我的 GitHub 仓库,欢迎Star/fork:
Java-Interview-Tutorial
https://github.com/Wasabi1234/Java-Interview-Tutorial

真正的启动是在 catalina.sh 设置startup.sh 只是找到catalina.sh 然后执行catalina.sh 来启动!下面我们来分析下catalina.sh

1 验证CATALINA_HOME 环境变量

2 设置环境变量

在 CATALINA_BASE 和 CATALINA_BASE 目录下查找 setenv.bat 文件并执行,找不到则不执行。
查找 setclasspath.bat 文件,并执行,找不到则结束
setclasspath.bat 设置java相关的环境变量。

3 tomcat 日志管理

把tomcat-juli.jar 添加到classPath环境变量中。
并把日志的配置文件路径添加到 LOGGING_CONFIG 环境变量

4 tomcat-juli.jar 作用

Apache Tomcat由一个自己的实现了java.util.logging多个关键元素的实现。这个实现被称为JULI。实现的核心组件是定制化的LogManager,可以获取运行在Tomcat中的不同web应用(以及不同的class loader)。他支持为应用配置单独的日志配置。当有web应用从内在中是被卸载时,会接到Tomcat的通知,以便他所引用的类可以被清除,避免内存泄露。

控制台信息输出

5 设置tomcat的启动类

6 设置 tomcat 远程调试相关参数

开启远程调试功能后,eclipse 中配置 Host 和 Port 然后Debug 就可以远程调试tomcat中的程序了。

7 其它启动模式

除了远程调试启动模式,还有如下几种启动模式

启动tomcat、关闭tomcat都是调用的catalina.bat。

run和start 的区别

  • run是在本窗口中执行
  • start是新开一个窗口执行

8 JAVA_OPT 参数配置

配置时写在文件开头.

-server:一定要作为第一个参数,在多个CPU时性能佳

-XX:+HeapDumpOnOutOfMemoryError:设置不能分配java堆或永久保存区域不能满足时,生成heap dump文件。

-Xms:初始Heap大小,使用的最小内存,CPU性能高时,此值应设的大一些

-Xmx:java Heap最大值,使用的最大内存

-XX:PermSize:设定内存的永久保存区域

-XX:MaxPermSize:设定最大内存的永久保存区域

-XX:MaxNewSize:JVM堆区域新生代内存的最大可分配大小(PermSize不属于堆区)

-DCATALINA_HOME:tomcat环境变量

-DLOG_PATH:日志输出路径

-Djava.net.preferIPv4Stack:用于限制优先使用IP4地址

-Dsso_host:单点登录地址

文章来源: javaedge.blog.csdn.net,作者:JavaEdge.,版权归原作者所有,如需转载,请联系作者。

原文链接:javaedge.blog.csdn.net/article/details/104846756

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。