今年年初为了修改日志系统,仓促之下试用了logback和log4j,发现logback在日志生成速度上大幅优于log4j,但是上游项目大量使用log4j加上两者的日志生成性能都低于业务交易设计要求,就没有采用。
这几天完善平台,详细比较了一下两者的性能,环境是这样的:
- 门面都采用slf4j 1.7.5
- logback 1.0.3
- log4j 1.2.17
测试类就是简单的循环日志记录,分别在win7、Linux下做了单线程、多线程的不同循环次数多场景测试,只有1次的在Linux下测试结果是logback优于log4j,其他全部是log4j略优于logback。
各种环境、场景、数据量都测试了,配置文件也多次修改,和前期测试的结果不符,百思不得解
查阅网上很多人也有这个疑惑,都说logback性能好,可是测试结果确不同。偶尔看到一句话说log4j性能有了提升,会不会是因为版本不同,log4j的老版本确实性能差一些,查看年初试用时log4j是1.2.13,按说版本差别不大,又上apache网站,虽然没有查到1.2.17的release说明,但是13版本是2006年放出的,过了6年,性能上应该有变化的,好自己测试一下,果然17比13快了接近1倍。
到此,性能测试结束,结论就是:
1.2.17版本的log4j性能略优于1.0.13的logback。(全部最新版)
题外:log4j2目前是贝塔9了,据说没有使用锁定机制,性能大幅提升,还没有测试。
分享到:
相关推荐
今天我们将聚焦两个流行的日志框架——SLF4J(Simple Logging Facade for Java)和Logback,以及它们与Log4j和Commons-Logging的对比。 SLF4J是一个接口层的日志框架,它提供一个统一的API,允许用户在运行时插入...
### Log4j2与Log4j效率对比 #### 测试环境与方法 为了准确评估Log4j2与Log4j之间的性能差异,通常会采用一套标准的效率测试程序。这类程序会模拟大量日志记录操作,并比较两种日志框架在处理相同负载时的性能表现...
- **与 Logback 的比较**:Logback 作为 Log4j 的一个分支,由 Log4j 的原始作者 Ceki Gülcü 创建。Logback 在设计上更简洁、性能更优,但 Log4j 在社区支持方面仍然具有优势。 - **与 SLF4J 的关系**:SLF4J...
### 五、Log4j与其他日志框架比较 Log4j的替代品有Logback、SLF4J(Simple Logging Facade for Java)等。SLF4J 提供了一个抽象层,允许在运行时绑定不同的日志实现,如Logback(SLF4J的推荐实现)和Log4j。Logback...
通过SLF4J,开发者可以轻松地切换不同的底层日志框架,如Logback或Log4j。 **转换包**: 由于Log4j和SLF4J是两个独立的日志框架,它们之间通常需要一个适配器或转换包来实现兼容。在这种情况下,转换包可能是指`slf...
- Logback:由SLF4J作者开发的日志框架,性能优于Log4j,但API不完全兼容。 总的来说,Log4j 提供了一套强大且可定制的日志解决方案,通过下载和正确配置,开发者可以在各种Java应用中充分利用其功能。利用提供的...
**四、Log4j与其他日志框架的比较** Log4j在Java日志领域有很高的市场份额,但它并非唯一的选择。其他常见的日志框架包括Logback(由Log4j的作者设计的替代品)和Java Util Logging (JUL)。Log4j因其丰富的功能集、...
在实际应用中,Log4j2与其它日志框架(如Logback等)的性能对比也非常重要。在使用SLF4J配合Log4j2时,需要关注不同框架在日志记录时的性能差异,并根据具体情况选择最合适的日志框架。 ### 总结 在Java应用中,...
- Logback:由SLF4J的作者设计,性能优于Log4j,且与SLF4J紧密集成。 7. **日志监控与分析** - 使用工具如ELK Stack(Elasticsearch, Logstash, Kibana)或Graylog收集、分析和展示日志,有助于故障排查和性能...
- **与其他日志框架的对比:** 如logback、SLF4J等,虽然这些框架之间在功能上有一定的相似性,但每种框架都有自己独特的优势和适用场景。 #### 八、总结 Log4j作为一个成熟的日志框架,不仅提供了强大的日志管理...
- Logback是Log4j的后继者,由同一位作者设计,提供了更好的性能和更多特性。两者在功能上类似,但Logback更新更活跃,社区支持也更为丰富。 了解并熟练使用Log4j,能帮助开发者更好地管理和分析应用程序的运行...
### 五、Log4j与其他日志框架的对比 虽然Log4j功能强大,但在现代项目中,也有其他日志框架如Logback和SLF4J(Simple Logging Facade for Java)逐渐流行起来。SLF4J是一个抽象层,允许用户在运行时选择不同的日志...
描述部分虽然为空,但通常在学习Log4j时,我们会涉及它的基本概念、配置、使用方法以及与其他日志框架(如logback、java.util.logging)的对比。 **Log4j基础知识** Log4j是Apache软件基金会开发的一个开源项目,...
相比Logback、SLF4J等较新的日志框架,Log4j 1.2.17可能在性能和API设计上稍显不足,但在兼容性和社区支持方面仍有优势。 总结,Log4j-1.2.17.jar作为经典的日志工具,它的强大功能和灵活性使其在Java开发中占据了...
**四、Log4j与其他日志框架的对比** 虽然Log4j在日志处理方面表现出色,但随着技术的发展,其他框架如Logback、SLF4J(Simple Logging Facade for Java)也逐渐受到关注。SLF4J作为一个日志门面,提供了统一的API,...
- **Logback**:由Log4j的主要作者设计,被认为在性能上优于Log4j,并且包含了一些新的特性。 - **SLF4J**:Simple Logging Facade for Java,提供一个通用的日志API,可以和多种日志实现(包括Log4j)配合使用。 ...
**Log4j与Logback的对比** 虽然Log4j非常流行,但后来出现了Logback作为其替代品,因为Logback在性能和功能上都有所改进。然而,由于Log4j的广泛使用和成熟的生态系统,许多项目仍然继续使用它。 总结来说,“log4...
- Logback:由Log4j的主要开发者设计,比Log4j更快且更轻量级,提供了类似的功能。 - SLF4J(Simple Logging Facade for Java):一个日志抽象层,允许在运行时绑定不同的日志实现,包括Log4j。 7. **日志的最佳...
最后,教程可能还会讨论log4j与其他日志框架(如logback、slf4j)的对比,以及如何在实际项目中选择合适的日志解决方案。在实际开发中,了解这些框架的优缺点和兼容性,可以帮助我们做出更明智的决策。 通过《log4j...
6. **Log4j与其他日志框架的比较** 虽然Log4j曾是Java日志领域的首选,但随着Java社区的发展,其他框架如Logback和SLF4J也逐渐流行起来。Logback由Log4j的作者设计,具有更高的性能和灵活性。SLF4J(Simple Logging...