tomcat服务器超时504
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tomcat服务器超时504相关的知识,希望对你有一定的参考价值。
服务器出现504超时,查log发现有线程锁在LOG4J里面,查看LOG4J的配置,里面把所有的LOG都打印了处理(log4j.rootLogger=ERROR,stdout,fileLog,fileErr和HIBERNATE的debug LOG都输出了),后修改删除不必要的输出,和更新LOG4J的版本(由1.2.15-1.2.17),服务器并发能力明显改善。
但过了几天又出现504,发现内存泄漏,检查代码发现用了XSTREAM,
错误代码:
XStream siteUpdateStream = new XStream(new StaxDriver(new NoNameCoder()));
siteUpdateStream.autodetectAnnotations(true);
siteUpdateStream.alias("root", BaseinfoSiteUpdateInput.class);
发现在方法里面每调用一次,服务器的持久带内存都会增加,而且并发量越大内存消耗越快导致服务器504.
后修改:
private static XStream carrierDelStream = new XStream(new StaxDriver(new NoNameCoder()));
改成静态变量,并修改JAR的版本号com.thoughtworks.xstream1.44改为1.48发现内存没在出现泄漏;
以上是关于tomcat服务器超时504的主要内容,如果未能解决你的问题,请参考以下文章