概念
JDK java开发工具包
JRE java运行环境
SDK 辅助工具包
J2EE J2SE J2ME
java -jar 就能直接打开java程序包
中间件 - Tomcat Resin Jboss Weblogic WebSphere
安装tomcat
软件
jdk-8u74-linux-x64.tar.gz
apache-tomcat-8.0.32.tar.gz
useradd -u 601 tomcat
tar xvf jdk-8u144-linux-x64.tar.gz
mv jdk1.8.0_144 /usr/local/
ln -s /usr/local/jdk1.8.0_144/ /usr/local/jdk
tar xvf apache-tomcat-8.0.32.tar.gz
mv apache-tomcat-8.0.32 /usr/local/
ln -s /usr/local/apache-tomcat-8.0.32 /usr/local/tomcat
cat >> /etc/profile << EOF
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
export TOMCAT_HOME=/usr/local/tomcat
EOF
chown -R tomcat:tomcat /usr/local/jdk
chown -R tomcat:tomcat /usr/local/tomcat
su - tomcat
/usr/local/tomcat/bin/startup.sh
# 修改主配置文件
vim /usr/local/tomcat/conf/server.xml
# 用户配置文件
## http://ip/manager/
vim /usr/local/tomcat/conf/tomcat-users.xml
cat >> /usr/local/tomcat/conf/tomcat-users.xml << EOF
<role rolename="manager-gui" />
<role rolename="admin-gui" />
<user username="tomcat" password="abcd1234" roles="manager-gui,admin-gui" />
EOF
# 默认根路径
ll /usr/local/tomcat/webapps
# 由于缓存机制,建议每次重启的时候清空temp和work目录
/usr/local/tomcat/temp
/usr/local/tomcat/work
tomcat启动脚本:
#!/bin/bash
TOMCAT_PATH=/usr/local/tomcat/
usage(){
echo "Usage: $0 [start|status|reload|stop]"
}
tomcat_start(){
/usr/local/tomcat/bin/startup.sh
}
tomcat_status(){
ps aux | grep java | grep tomcat | grep -v 'grep'
}
tomcat_stop(){
TPID=$(ps aux | grep java | grep tomcat | grep -v 'grep' | awk '{print $2}')
kill -9 $TPID
sleep 5
TSTAT=$(ps aux | grep java | grep tomcat | grep -v 'grep' | awk '{print $2}')
if [ -z $TSTAT ];then
echo "tomcat stop"
fi
rm -rf ${TOMCAT_PATH}temp/*
rm -rf ${TOMCAT_PATH}work/*
}
main(){
case "$1" in
start)
tomcat_start;;
status)
tomcat_status;;
reload)
tomcat_stop && tomcat_start;;
stop)
tomcat_stop;;
*)
usage;
esac
}
main $1
tomcat安全管理规范
- 用户设置
- 固定ftp md5
- 配置管理
- 管理端口,默认8005
telnet 127.0.0.1 8005 SHUTDOWN
- ajp连接端口,默认8009,注释掉
- 禁用管理段
- 降权启动
- 文件列表访问控制
- 版本信息的隐藏
- server headeer重写
- 访问限制
- 起停脚本权限回收
- 访问日志标准化
- 管理端口,默认8005
tomcat监控和调优
- 外部优化
- 内部优化
- jvm内存使用
- 垃圾回收器
- 线程池的设置
- 关闭dns查询
- tomcat压缩
监控
- windows使用jconsole监控,服务端开启jmx远程管理
- zabbix java gateway
- cmdline-jmxclient
http://www.cnblogs.com/meetrice/p/5695127.html