添加日志输出后,Java 应用程序速度会提高
我们偶然发现了一个相当奇怪的问题IMO。我们的客户一直在抱怨我们的应用程序从文件导入和处理数据的速度 [文件大小1kB cca,正常情况下导入文件所需的时间为4-10秒,具体取决于整体工作负载。是的,这是很多]...
因此,我们开始研究它,但发生了一些非常意想不到的事情:在将调试日志输出插入代码的某些部分(否则不会影响逻辑)之后,导入速度加快了很多:300ms-2200ms /file取决于整体工作负载。
使用语言: Java
JDK 6_34 在我的工作站上 [ 不知道我的同事使用什么版本 ]
我已经浏览了代码...很多次。没什么不寻常的。即使它都是在线程中执行的,这个线程也没有竞争对手做同样的工作或访问相同的文件。
这种情况对任何人都熟悉吗?
P.S.:我确实希望这个问题确实属于这里。如果没有,我真诚地道歉。
编辑:
至于日志记录,我们使用log4j。
操作系统:Windows XP / my machine。一个同事有相同的,另一个使用Win7 /
中央处理器: E7500 @ 2.93 千兆赫
内存: 2 GB DDR2
另一台机器基本上是一样的。我不知道第三个的配置,因为它是新的,而不是我的工作站。
在我的情况下,文件都是从/存储到本地HDD的。
我最担心的是,我们使用的是一个我们没有来源的平台,因为,我们已经支付了许可证,但没有支付来源>.<