这个页面放在tomcat/webapps/ROOT/下可以查看内存堆栈,对于分析定位性能问题,很有效果

<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8"%> 
<%@ page import="java.util.Set"%> 
<%@ page import="java.util.Map"%> 
<%@ page import="java.util.Iterator"%> 
<% 
    if("127.0.0.1".equals(request.getRemoteHost())) 
    {
       Map<Thread,StackTraceElement[]> threads = Thread.getAllStackTraces(); 
        Set keys = threads.keySet(); 
        Iterator iter = keys.iterator(); 
        while (iter.hasNext()) 
        { 
            Thread t = (Thread)iter.next(); 
%>  
ID: <%=t.getId()%> 
State: <%=t.getState()%> 
<%= "\n"%> 
<% 
            StackTraceElement[] trace = threads.get(t); 
                    for(int i = 0 ;i < trace.length;i++) 
                    { 
%> 
<%= trace[i].toString()%> 
<%= "\n"%> 
<% 
            } 
        }  
     }
%> 

如果不是本地测试,请将if("127.0.0.1".equals(request.getRemoteHost()))分支去掉,使用浏览器访问该页面,然后通过“查看源文件”查看内存堆栈情况。
[2025-03-31 09:24:17,028] 工件 ssm_demo:war: 正在部署工件,请稍候… 31-Mar-2025 09:24:20.524 信息 [RMI TCP Connection(2)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。 SLF4J: The requested version 1.6 by your slf4j binding is not compatible with [1.5.5, 1.5.6, 1.5.7, 1.5.8] SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details. SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/D:/tomcat/tomcat-9.0.48/webapps/ROOT/WEB-INF/lib/logback-classic-1.0.9.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/D:/tomcat/tomcat-9.0.48/webapps/ROOT/WEB-INF/lib/logback-classic-1.2.12.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. 31-Mar-2025 09:24:20.953 严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal 一个或多个listeners启动失败,更多详细信息查看对应的容器日志文件 31-Mar-2025 09:24:20.954 严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal 由于之前的错误,Context[]启动失败 [2025-03-31 09:24:20,983] 工件 ssm_demo:war: 部署工件时出错。请参阅服务器日志了解详细信息。 31-Mar-2025 09:24:26.569 信息 [Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory 把web 应用程序部署到目录 [D:\tomcat\tomcat-9.0.48\webapps\manager] 31-Mar-2025 09:24:26.624 信息 [Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory Web应用程序目录[D:\tomcat\tomcat-9.0.48\webapps\manager]的部署已在[54]毫秒内完成
04-01
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值