Tomcat脚本
start 启动 ; stop 停止;restart重启;cc 查看日志;tc 查看实时日志;vc 查看所有日志;* 代表 – hlep 查看命令
#!/bin/sh
APP_NAME= tomcat名称
BASE_HOME= tomcat所在路径
SERVER_PORT= tomcat端口号
# set customer varibales
ulimit -n 65535
export JAVA_HOME=$BASE_HOME/opt/jdk
export JAVA_OPTS="-server -Xms16000m -Xmx16000m -XX:PermSize=128m -XX:MaxPermSize=256m -Djava.security.egd=file:/dev/./urandom"
log () {
echo "========>> $1 <<========"
}
get_pid_by_port () {
PID=$(netstat -anp | grep $1 | grep LISTEN | awk '{printf $7}' | cut -d/ -f1)
if [[ "$PID" != "" && "${PID:0:1}" != "-" ]] ; then
echo $PID
else
echo -1
fi
}
kill_by_port () {
PID=$(get_pid_by_port $1)
echo "[$1] pid: [$PID]"
if [ "$PID" != "-1" ] ; then
kill -9 $PID
fi
}
case "$1" in
'start' )
log "cdi start ..."
# /rsync-client/bin/rsync-dsp 多台服务器之间的同步方法(暂时没用)
$BASE_HOME/$APP_NAME/bin/startup.sh
log "cdi start ok."
;;
'stop' )
log "cdi stop ..."
kill_by_port $SERVER_PORT
sleep 1s
log "cdi stop ok."
;;
'restart' )
$0 stop
sleep 1s
$0 start
;;
'cc' )
> $BASE_HOME/$APP_NAME/logs/catalina.out
exit 1
;;
'tc' )
tail -f $BASE_HOME/$APP_NAME/logs/catalina.out
exit 1
;;
'vc' )
vim $BASE_HOME/$APP_NAME/logs/catalina.out
exit 1
;;
* )
echo "Usage: $0 [ start | stop | restart | cc | tc | vc ]"
exit 1
;;
esac
Linux下查看和停止所有java进程
在Linux下查看所有java进程命令:ps -ef | grep java
停止所有java进程命令:pkill - 9 java
停止特定java进程命令:kill -9 java进程号
Tomcat 之 top,free
top命令:
显示内容解释如下:
第一行top分别为:当前时间;系统运行天数;使用者个数;系统负载的平均值,后面的三个值分别为1分钟前、5分钟前、15分钟前进程的平均数,这个数值超过 CPU 数目时,说明负载过高
第二行Tasks分别为:进程总数;运行进程数;睡眠进程数;被停止的进程数;被复原的进程数
第三行CPU(s)分别为:cpu使用率;
第四行Mem分别为:总内存;已用内存;空闲内存;缓冲使用中内存
第五行(Swap):类似第四行,但反映着交换分区(Swap)的使用情况。交换分区(Swap)被频繁使用,可以看作物理内存不足而造成的
中间是内部命令提示行:
h - 显示帮助
l - 关闭或开启第一部分第一行 top 信息的表示
t - 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
m - 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示
N - 以 PID 的大小的顺序排列表示进程列表
P - 以 CPU 占用率大小的顺序排列进程列表
M - 以内存占用率大小的顺序排列进程列表
s - 内容更新频率
n - 设置在进程列表所显示进程的数量
q - 退出 top
配合使用pmap -d + 进程号;查看进程占用内存情况
或者ps -e -o ‘pid,comm,args,pcpu,rsz,vsz,stime,user,uid’
free命令:
free命令参数:
-t 显示total行;
-b,-k,-m显示单位分别为B,KB,MB
-s,实时更新,如:free -m -s2(每2秒更新一次,显示单位Mb)