系统架构师-tomcat学习笔记

概念

  • JDK java开发工具包

  • JRE java运行环境

  • SDK 辅助工具包

  • J2EE J2SE J2ME

java -jar 就能直接打开java程序包
中间件 - Tomcat Resin Jboss Weblogic WebSphere

http://tomcat.apache.org/

安装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



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重写
    • 访问限制
    • 起停脚本权限回收
    • 访问日志标准化

tomcat监控和调优

  • 外部优化
  • 内部优化

  1. jvm内存使用
  2. 垃圾回收器
  3. 线程池的设置
  4. 关闭dns查询
  5. tomcat压缩

监控

  1. windows使用jconsole监控,服务端开启jmx远程管理
  2. zabbix java gateway
  3. cmdline-jmxclient
    http://www.cnblogs.com/meetrice/p/5695127.html

你可能感兴趣的:(系统架构师-tomcat学习笔记)