Linux服务器下Tomcat配置


1、  修改Tomcat的启动语句,编辑linux服务器上的tomcat的bin/catalina.sh文件:

在# OS specific support.$var _must_ be set to either true orfalse. 这一行之后加入以下参数:

JAVA_OPTS="$JAVA_OPTS-Xms256m -Xmx512m-Xss1024K -XX:PermSize=128m-XX:MaxPermSize=256m-Djava.rmi.server.hostname=${IP}-Dcom.sun.management.jmxremote.port=${Port}-Dcom.sun.management.jmxremote.ssl=false-Dcom.sun.management.jmxremote.authenticate=false"

说明:将${IP}替换成上述配置文件中配置的IP地址,${Port}配置没有被使用的端口。

2、 linux服务器执行hostname -i 命令,如果显示的是127.0.0.1,则需要修改/etc/hosts文件,否则jconsole无法链接。



以上配置完毕后,启动Tomcat,客户端机器在控制台窗口键入"jconsole"打开JConsole窗口

在远程进程中输入如下字符,将${IP}替换成上述配置文件中配置的IP地址

${IP}:1099例如128.20.49.103:9999即可监控内存、线程、类。



注意:配置完成后关闭Tomcat时需要杀掉远程监控的端口号进程,两种解决方案:

(1)      手动输入ps -ef | grep ${Port} | grep -v "grep" 查看,${Port}为Tomcat里catalina.sh配置的监控端口,查出进程号后kill-9杀掉进程。

(2) 编辑catalina.sh,在 
elif [ "$1" ="stop" ] ; then 

shift 
FORCE=0 
if [ "$1" ="-force" ]; then 
shift 
FORCE=1 
fi 

"$_RUNJAVA"$JAVA_OPTS \ 
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS"-classpath "$CLASSPATH" \ 
-Dcatalina.base="$CATALINA_BASE"\ 
-Dcatalina.home="$CATALINA_HOME"\ 
-Djava.io.tmpdir="$CATALINA_TMPDIR"\ 
org.apache.catalina.startup.Bootstrap"$@" stop 

if [ $FORCE -eq 1 ];then 
if [ ! -z"$CATALINA_PID" ]; then 
echo "Killing: `cat$CATALINA_PID`" 
kill -9 `cat$CATALINA_PID` 
else 
echo "Kill failed:\$CATALINA_PID not set" 
fi 
fi 
去掉此段中的$JAVA_OPTS,并在下方添加以下内容 

# -----添加以下语句用来查杀进程 9999 替换成配置的端口号---------- 
ID=`ps -ef | grep 9999 | grep-v "$0" | grep -v "grep" | awk '{print $2}'` 
echo $ID 
echo"---------------" 
for id in $ID 
do 
kill -9 $id 
echo "killed$id" 
done 
echo"---------------"