亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

log4j日志異步化大幅提升系統性能

系統 1865 0
經過大型J2EE項目實測,Log4j的日志輸出對系統性能有比較顯著的影響,尤其是日志輸入量比較大時,例如:系統并發量很大,顯示Hibernate的sql和參數日志,或日志級別較低DEBUG或INFO時等。
使用Async Logger控制日志輸出可以顯著改善系統性能。
?
?
1) 測試用例:同步文件日志輸出
?????? 測試功能:模塊管理功能,
?????? 輸出Hibernate SQL和參數,輸出到文件,配置如下:
?????? <appender name="Hibernate_SQL" class="org.apache.log4j.DailyRollingFileAppender">
????????????? <param name="File" value="log/Hibernate_SQL.log" />
????????????? <param name="Append" value="true" />
????????????? <param name="DatePattern" value="'.'yyyy-MM-dd-HH" />
????????????? <layout class="org.apache.log4j.PatternLayout">
???????????????????? <param name="ConversionPattern" value="%d [%-5p](%C,%L) - %m%n" />
????????????? </layout>
?????? </appender>
??????
?????? <category name="org.hibernate.SQL">
????????????? <priority value="TRACE" />????????
????????????? <appender-ref ref="Hibernate_SQL" />
?????? </category>
?????? <category name="org.hibernate.type">
????????????? <priority value="TRACE" />????????
????????????? <appender-ref ref="Hibernate_SQL" />
?????? </category>
?????? 運用JMeter進行壓力測試,線程數50,運行4次,計算請求平均響應值(Rame-up Period: 1, 循環次數:1)
?
測試結果:AVG: 12565ms
?
??? 2) 測試用例:異步文件日志輸出
?????? Log4j.xml 配置修改如下:
??? <appender name="ASYNC_Hibernate_SQL" class="org.apache.log4j.AsyncAppender">???
???? <param name="BufferSize" value="512"/>???
???? <appender-ref ref="Hibernate_SQL"/>
?? </appender>
???
??? <category name="org.hibernate.SQL">
??????? <priority value="TRACE" />?????
??????? <appender-ref ref="ASYNC_Hibernate_SQL" />
??? </category>
???
??? <category name="org.hibernate.type">
??????? <priority value="TRACE" />?????
??????? <appender-ref ref="ASYNC_Hibernate_SQL" />
??? </category>
???
??? 在BufferSize為 32, 64,128,256,512,2048時測試的請求平均耗時,及較測試用例1中的性能提高率對比如下所示:
同步,異步日志性能對比分析
(每次50并發,運行4次)
?
sync 日志輸出
原時間消耗
?
?
12565
?
async 日志輸出
?
?
緩沖區大小
平均耗時
性能提高率
32
6744
46.33%
64
8487
32.46%
128
6899
45.09%
256
6606
47.43%
512
7306
41.85%
2048
3406
72.89%
?
??? 從結果可以看出,性能提高率最高 47%。最低32%。緩沖為256時性能改善最佳, 提高47%
???
結論:使用 Log4j的J2EE應用,日志的優化對系統性能有顯著影響:
??? ?1)盡量減少不必要的日志輸出,尤其要避免 root logger上過低級別的輸出,避免在生產環境上向控制臺輸出日志。例如,下面的配置是很影響性能的,:
??? <root>
??????? <priority value="DEBUG" />?
??????? <appender-ref ref="CONSOLE" >??
??? </root>
??? 2) 使用 Async logger輸出日志,buffersize在相應日志頻率下,越大越好,對于大型項目,可以選2048以上值。

log4j日志異步化大幅提升系統性能


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 中文字幕亚洲精品日韩精品 | 久久99热久久精品91 | 美日韩免费视频 | 综合婷婷丁香 | 国产高清不卡一区二区 | 在线中文字幕亚洲 | 伊人久久91 | 国产精品久久久久蜜芽 | 亚洲一区二区三区四区 | 国产在线精品香蕉综合网一区 | 天天干免费视频 | 亚洲精品国产啊女成拍色拍 | 波多野结衣精品中文字幕 | 五月天婷婷免费视频观看 | 色综合久久中文色婷婷 | 亚洲一区二区三区在线网站 | 免费观看日本污污ww网站精选 | 亚洲国产天堂久久九九九 | 性夜影院爽黄a爽免费看网站 | 久青草香蕉精品视频在线 | 婷婷综合国产激情在线 | 国产久热精品 | 日本一级毛片不卡免费 | av天天看| 欧美 日| 一区二区三区鲁丝不卡麻豆 | 国产99久久精品一区二区 | 国模极品一区二区三区 | 久久中文字幕亚洲精品最新 | 成人一区视频 | 中文字幕一区在线观看 | 天天做天天做天天综合网 | 国产精品久久久久久久久久久久 | 一级毛片大全 | 亚洲综合在线另类色区奇米 | 九九精品久久久久久久久 | 91视频社区| 久久伊人一区二区三区四区 | 亚洲精彩 | 香蕉免费看一区二区三区 | 夜夜操天天爽 |