我使用log4j-1.2.14.jar开发了一个web应用,我发现org.apache.log4j.spi.LocationInfo占用了我76%的CPU时间。
我已经检查了Java VisualVM

是否有人可以帮助我提高web应用程序的效率
提前谢谢你
发布于 2014-10-14 22:02:03
在您的转换模式中,您可能在PatternLayout中使用了不应该使用的转换字符。
使您的性能变差的转换模式有:
%l结合了包、类、方法和行号。文档说,它的生成速度非常慢,除非执行速度不是issue'%F filename%L linenumber%C类名(而是使用%c)%F filename%M方法名),否则应该避免这种情况
而且,比起像%d{dd MMM yyyy HH:mm:ss,SSS}这样的东西,更愿意使用%d{ISO8601}、%d{DATE}或%d{ABSOLUTE}。但是这种性能损失并不像上面提到的转换模式那样显著。
请参阅log4j帮助中有关性能缓慢的警告:https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html
https://stackoverflow.com/questions/25885758
复制相似问题