标题: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发现内存没在出现泄漏。
版权声明:本文内容由极全网实名注册用户自发贡献,版权归原作者所有,极全网-官网不拥有其著作权,亦不承担相应法律责任。具体规则请查看《极全网用户服务协议》和《极全网知识产权保护指引》。如果您发现极全网中有涉嫌抄袭的内容,点击进入填写侵权投诉表单进行举报,一经查实,极全网将立刻删除涉嫌侵权内容。
扫一扫在手机打开
评论
已有0条评论
0/150
提交
热门评论






