1. Tomcat概述
Apache Tomcat是一款开源的Web应用服务器,实现了Java Servlet、JavaServer Pages (JSP)和WebSocket技术,是Java Web应用的常用部署平台。更多学习教程www.fgedu.net.cn
2. 安装前准备
在安装Tomcat之前,需要确保系统满足以下要求:
2.1 Java环境安装
Tomcat需要Java运行环境,建议安装Java 8或更高版本。
$ java -version
# 如果未安装Java,安装OpenJDK 11
$ sudo apt update
$ sudo apt install openjdk-11-jdk
# 验证Java安装
$ java -version
openjdk version “11.0.16” 2022-07-19
OpenJDK Runtime Environment (build 11.0.16+8-post-Ubuntu-0ubuntu122.04)
OpenJDK 64-Bit Server VM (build 11.0.16+8-post-Ubuntu-0ubuntu122.04, mixed mode, sharing)
# 设置JAVA_HOME环境变量
$ echo “export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64” >> ~/.bashrc
$ echo “export PATH=$JAVA_HOME/bin:$PATH” >> ~/.bashrc
$ source ~/.bashrc
# 验证JAVA_HOME设置
$ echo $JAVA_HOME
/usr/lib/jvm/java-11-openjdk-amd64
2.2 系统要求
- CPU:至少2核
- 内存:至少2GB
- 磁盘空间:至少10GB
- 操作系统:Linux、Windows或macOS
3. Tomcat安装
Tomcat可以通过多种方式安装,这里介绍从官方网站下载二进制包进行安装的方法。
3.1 下载Tomcat
$ wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.65/bin/apache-tomcat-9.0.65.tar.gz
# 解压Tomcat
$ tar -xzf apache-tomcat-9.0.65.tar.gz
# 移动到合适的目录
$ sudo mv apache-tomcat-9.0.65 /opt/tomcat
# 创建tomcat用户和组
$ sudo groupadd tomcat
$ sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
# 设置权限
$ sudo chown -R tomcat:tomcat /opt/tomcat
$ sudo chmod +x /opt/tomcat/bin/*.sh
3.2 配置Tomcat服务
$ sudo vi /etc/systemd/system/tomcat.service
# 写入以下内容
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment=’CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC’
Environment=’JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom’
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
# 重新加载systemd配置
$ sudo systemctl daemon-reload
# 启动Tomcat服务
$ sudo systemctl start tomcat
# 查看Tomcat服务状态
$ sudo systemctl status tomcat
# 设置Tomcat服务开机自启
$ sudo systemctl enable tomcat
4. Tomcat配置
Tomcat的主要配置文件位于/opt/tomcat/conf/目录下,学习交流加群风哥微信: itpux-com。
4.1 server.xml配置
server.xml是Tomcat的核心配置文件,定义了服务器的端口、连接器等配置。
$ sudo vi /opt/tomcat/conf/server.xml
# 主要配置项
4.2 tomcat-users.xml配置
tomcat-users.xml用于配置Tomcat管理界面的用户和权限。
$ sudo vi /opt/tomcat/conf/tomcat-users.xml
# 添加管理用户
# 重启Tomcat服务
$ sudo systemctl restart tomcat
4.3 context.xml配置
context.xml用于配置应用上下文。
$ sudo vi /opt/tomcat/conf/context.xml
# 添加数据库连接池配置示例
5. 应用部署
Tomcat支持多种部署方式,包括WAR文件部署、目录部署等。
5.1 WAR文件部署
$ sudo cp myapp.war /opt/tomcat/webapps/
# 查看部署状态
$ ls -la /opt/tomcat/webapps/
# 访问应用
# http://fgedudb:8080/myapp
5.2 通过管理界面部署
- 访问Tomcat管理界面:
http://fgedudb:8080/manager/html - 使用之前配置的fgedu和密码登录
- 在”Deploy”部分上传WAR文件
- 点击”Deploy”按钮完成部署
6. Tomcat管理
Tomcat提供了多种管理工具,包括Web管理界面、命令行工具等。
6.1 Web管理界面
- Manager App:用于管理应用的部署、启动、停止等操作
- Host Manager:用于管理虚拟主机
6.2 命令行管理
$ sudo systemctl start tomcat
# 停止Tomcat
$ sudo systemctl stop tomcat
# 重启Tomcat
$ sudo systemctl restart tomcat
# 查看Tomcat状态
$ sudo systemctl status tomcat
# 查看Tomcat日志
$ tail -f /opt/tomcat/logs/catalina.out
7. Tomcat监控
Tomcat提供了多种监控方式,包括JMX、日志监控等。学习交流加群风哥QQ113257174。
7.1 JMX监控
$ sudo vi /opt/tomcat/bin/catalina.sh
# 添加以下配置
CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=9999 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false”
# 重启Tomcat
$ sudo systemctl restart tomcat
# 使用jconsole连接
$ jconsole fgedudb:9999
7.2 日志监控
$ tail -f /opt/tomcat/logs/catalina.out
# 查看访问日志
$ tail -f /opt/tomcat/logs/fgedudb_access_log.*.txt
# 查看应用日志
$ tail -f /opt/tomcat/logs/manager.*.log
8. Tomcat优化
为了提高Tomcat的性能和稳定性,需要进行适当的优化配置。
8.1 JVM优化
$ sudo vi /opt/tomcat/bin/catalina.sh
# 添加以下配置
CATALINA_OPTS=”$CATALINA_OPTS \
-Xms2g \
-Xmx4g \
-XX:MetaspaceSize=256m \
-XX:MaxMetaspaceSize=512m \
-XX:+UseG1GC \
-XX:MaxGCPauseMillis=200 \
-XX:+ParallelRefProcEnabled \
-XX:+DisableExplicitGC \
-XX:+AlwaysPreTouch \
-XX:G1HeapRegionSize=8m \
-XX:InitiatingHeapOccupancyPercent=45 \
-XX:+PrintGCDetails \
-XX:+PrintGCDateStamps \
-Xlog:gc*:file=/opt/tomcat/logs/gc.log:time,level,tags:filecount=5,filesize=20M”
8.2 连接器优化
$ sudo vi /opt/tomcat/conf/server.xml
# 优化HTTP连接器
8.3 会话优化
$ sudo vi /opt/tomcat/conf/context.xml
# 添加以下配置
- 定期更新Tomcat版本,确保安全性和稳定性
- 配置适当的JVM参数,根据服务器硬件资源进行调整
- 启用访问日志,便于问题排查和性能分析
- 配置SSL证书,确保数据传输安全
- 使用负载均衡,提高系统的可用性和性能
- 定期备份Tomcat配置和应用数据
更多学习教程公众号风哥教程itpux_com
author:www.itpux.com
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
