目录
ToggleWEB集群-tomcat集群部署zrlog博客之后重启机器显示404
故障现象:👆
排查过程:
检查tomcat运行情况:(systemctl + 进程)
[root@sp3-web03 /app/tools/tomcat]# systemctl status tomcat
● tomcat.service - Tomcat java web container
Loaded: loaded (/usr/lib/systemd/system/tomcat.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2025-09-14 10:01:28 CST; 5h 13min ago
Process: 729 ExecStart=/app/tools/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 779 (java)
Tasks: 28
Memory: 165.7M
CGroup: /system.slice/tomcat.service
└─779 /usr/bin/java -Djava.util.logging.config.file=/app/tools/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLo>
9月 14 10:01:28 sp3-web03 systemd[1]: Starting Tomcat java web container...
9月 14 10:01:28 sp3-web03 startup.sh[729]: Tomcat started.
9月 14 10:01:28 sp3-web03 systemd[1]: Started Tomcat java web container.
[root@sp3-web03 /app/tools/tomcat]# ps -ef | grep java
root 779 1 0 11:36 ? 00:00:19 /usr/bin/java -Djava.util.logging.config.file=/app/tools/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /app/tools/tomcat/bin/bootstrap.jar:/app/tools/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/app/tools/tomcat -Dcatalina.home=/app/tools/tomcat -Djava.io.tmpdir=/app/tools/tomcat/temp org.apache.catalina.startup.Bootstrap start
root 2536 2302 0 15:14 pts/1 00:00:00 grep java
检查端口:
[root@sp3-web03 /app/tools/tomcat]# ss -tlnup | grep java
tcp LISTEN 0 1 [::ffff:127.0.0.1]:8005 *:* users:(("java",pid=779,fd=71))
tcp LISTEN 0 100 *:8080 *:* users:(("java",pid=779,fd=57))
没看到有什么问题:
重启tomcat
systemctl status tomcat
恢复:
故障原因:连不上远程数据库db01,强行停止了实例,11:37数据库服务器还没开
14-Sep-2025 11:37:47.141 信息 [mysql-cj-abandoned-connection-cleanup] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading 非法访问:此Web应用程序实例已停止。无法加载[]。为了调试以及终止导致非法访问的线程,将抛出以下堆栈跟踪。
java.lang.IllegalStateException: 非法访问:此Web应用程序实例已停止。无法加载[]。为了调试以及终止导致非法访问的线程,将抛出以下堆栈跟踪。
at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1392)
at org.apache.catalina.loader.WebappClassLoaderBase.getResource(WebappClassLoaderBase.java:1045)
at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.checkThreadContextClassLoader(AbandonedConnectionCleanupThread.java:117)
at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:84)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:750)
查看实例的mysql配置:zrlog数据库连接配置文件:
[root@web03 /app/tools/tomcat/webapps/ROOT]# cat ./WEB-INF/db.properties
[root@sp3-web03 /app/tools/tomcat]# cat webapps/ROOT/./WEB-INF/db.properties #This is a database configuration file #Thu Sep 11 22:35:21 CST 2025 driverClass=com.mysql.cj.jdbc.Driver user=zrlog password=2 jdbcUrl=jdbc\:mysql\://10.0.0.51\:3306/zrlog?characterEncoding\=UTF-8&allowPublicKeyRetrieval\=true&useSSL\=false&serverTimezone\=GMT