Log4j:多线程调用是否同步?
2022-09-03 02:26:25
我们遇到了一个有趣的问题,我们在对系统进行压力测试时注意到了这个问题。我们非常频繁地使用log4j(在JBOSS中)进行日志记录。这是一个天真的例子,我们一些日志记录
void someFunction()
{
Log.info("entered some function");
...
Log.info("existed some function");
}
现在我们注意到的有趣的事情是,如果我们针对这个函数启动100个线程;Log.info() 调用正在阻塞每个线程。这意味着线程 2 正在等待线程 1 完成“Log.info”调用。在线程100的情况下;它最终等待了很长时间。我们使用的是本机文件记录器。
这是一个已知问题吗?