一、Tomcat内存优化
① tomcat启动脚本
Tomcat内存优化其实也就是JVM优化,启动时告诉JVM需要多大内存(调优内存是最直接的方式)。配置文件为Windows 下的 catalina.bat,Linux 下的 catalina.sh。
在linux启动Tomcat通常我们会执行bin/startup.sh文件,查看该文件源码会发现,该文件最后会执行catalina.sh脚本文件。
在catalina.sh脚本文件中,会看到如下注释变量释义:
该脚本注释说明了一些CATALINA Server的环境配置,如CATALINA_HOME、CATALINA_BASE、CATALINA_OUT、CATALINA_OPTS以及CATALINA_TMPDIR等。值得注意的是,通常建议自定义环境配置文件放在setenv.sh in CATALINA_BASE/bin。
② catalina.sh中变量说明
CATALINA_HOME&&CATALINA_BASE
前者是Tomcat安装目录,后者是Tomcat工作目录。CATALINA_BASE该变量是可选的,如果没有配置该变量,则默认使用CATALINA_HOME。那么什么时候下同时配置CATALINA_HOME&&CATALINA_BASE呢?如果我们想要运行Tomcat的
多个实例,但是不想安装多个Tomcat软件副本。那么我们可以配置多个工作目录,每个运行实例独占一个工作目录,但是共享同一个安装目录。
CATALINA_OUT
同样是可选的配置,指向将重定向stdout和stderr的文件的完整路径。默认是$CATALINA_BASE/logs/catalina.out。
CATALINA_OPTS
可选配置。执行“开始”、“运行”或“调试”命令时使用的Java运行时选项。在此处定义的选项(不在JAVA_OPTS中),只能被Tomcat自身使用,不能被stop线程、version命令等运行。使用实例如配置head
size,GC logging, JMX ports等。
CATALINA_TMPDIR
可选配置。JVM使用的临时路径(java.io.tmpdir该系统环境变量对应),默认为$CATALINA_BASE/temp。
JAVA_HOME&&JRE_HOME
JAVA_HOME–Java开发环境,JRE_HOME–Java运行环境。jdk1.7后,jdk内嵌了jre。如果JRE_HOME未显示设置,则取JAVA_HOME值。