都2020了你该知道Tomcat真正的启动文件了
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
- 点赞
- 收藏
- 关注作者
评论(0)