java - 并发log4j

标签 java multithreading logging concurrency log4j

我有自己的日志记录引擎,它将日志写入带有阻塞队列的单独线程。为了使用“标准软件”,我正在考虑切换到 log4j。

我不希望我的高并发软件被日志命令拖慢,日志命令在调用命令时将所有内容写入磁盘。 log4j 可以用作垃圾箱吗?

最佳答案

Log4j 是大多数 JavaEE 应用服务器上的日志记录实现,因此这是其并发能力的一个很好的广告。

话虽如此,我已经看到了 Log4j 1.2 在高负载情况下的死锁。一些调查突出显示了源代码中一些非常糟糕的同步。显然,这已在 Log4j 1.3 中得到修复,尽管这方面的开发已经放缓或完全停止 - 我觉得大部分源代码都无法挽救。

但是,如果您可以自由选择,那么您应该考虑 Logback相反,它是 Log4j 的精神继承者。这是一次彻底的重新设计,对您来说可能是更好的选择。

关于java - 并发log4j,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6089399/

相关文章:

java - 静态方法参数的同步

logging - 如何将NAnt日志输出保存到文件?

php - FirePHP 不输出任何东西

java - ActiveMq 结合 Tomcat

java - 使用springboot和Caffeine缓存可以存储多少缓存?

Ruby 2 : Forks/Threads, 如何计算特定机器的效率?

python-2.7 - 如何将 Python IDE 的屏幕输出保存到文件中?

java - 如何在 JFrame 中显示 JButton 和 JLabels?

java - 打印 String[] 产生随机空值,不确定为什么会发生

java - 避免在 CyclicBarrier 上耍花招的想法