[springboot]使用log4j2異步日志提升性能

      網友投稿 1648 2022-05-28

      文章目錄

      一、引入disruptor

      二、 全局異步模式

      三、異步/同步混合模式

      日志放入隊列的耗時,肯定比磁盤寫IO文件耗時要少的多得多,所以對主業務流程影響極小。

      一個單獨的線程進行日志寫IO磁盤操作,所以不會阻塞主業務線程的執行。

      一、引入disruptor

      Log4j2基于LMAX公司開發Disruptor(一個開源的無鎖并發框架),改善了Log4j和Logback在架構設計方面的缺陷,具有超高的吞吐量和低延遲。所以我們想獲取log4j2異步日志帶來的性能提升,要先引入disruptor 。

      com.lmax disruptor 3.3.6

      [springboot]使用log4j2異步日志提升性能

      1

      2

      3

      4

      5

      6

      二、 全局異步模式

      全局異步模式對日志的輸出性能有非常大的提升,是官方推薦的異步日志輸出方式。可以有兩種方式為Spring Boot應用配置異步日志,第一種就是在應用啟動類里面使用System.setProperty,代碼如下:

      @SpringBootApplication public class BootLaunchApplication { public static void main(String[] args) { //下面語句使得Log4j2日志輸出使用異步處理,減小輸出日志對性能的影響 System.setProperty("Log4jContextSelector", "org.apache.logging.log4j.core.async.AsyncLoggerContextSelector"); SpringApplication.run(BootLaunchApplication.class, args); } }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      第二種是通過啟動參數來設置全局異步日志

      java -jar -DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector boot-launch-1.0.jar

      1

      在以上配置完成之后,我們可以在log日志打印的位置下斷點。當我們看到下圖中紅色邊框部分的Log4j2-TF-1-AsyncLogger線程的時候,說明我們的全局異步日志配置成功了。

      三、異步/同步混合模式

      除了全局異步模式,slf4j還支持異步/同步混合模式。全局異步模式雖然是性能最好的日志輸出方式,但是也是耗費主機資源最多的方式,如果你的應用服務器性能一般,你又想獲得較好的日志輸出性能,可以采用如下的方法。

      采用異步/同步混合模式就不需要配置第二小節中的Log4jContextSelector

      在log4j2 xml里面對Loggers配置進行改造,加入AsyncLogger也就是異步日志,只針對com.zimug.boot.launch包(假如已知這個包對處理性能要求比較高)下的代碼產生的日志采用異步模式,其他的日志仍然使用同步模式。

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      Spring Boot 任務調度

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:操作系統學習筆記(二十七)~文件系統接口單元測試
      下一篇:Redis的數據類型、事務以及持久化
      相關文章
      va天堂va亚洲va影视中文字幕| 亚洲高清免费在线观看| 亚洲va成无码人在线观看| 久久亚洲精品无码AV红樱桃| 亚洲阿v天堂在线| 国产亚洲精品自在久久| 亚洲国产另类久久久精品小说| 亚洲中文久久精品无码| 亚洲综合网站色欲色欲| 亚洲精品无码专区在线在线播放| 亚洲永久无码3D动漫一区| 中文字幕中韩乱码亚洲大片| 亚洲一区二区三区免费| 亚洲一区二区三区在线视频| 久久久久亚洲AV综合波多野结衣| 国产亚洲精品无码拍拍拍色欲| 在线观看亚洲精品国产| 久久精品国产亚洲麻豆| 亚洲国产精品无码久久一线| 久久久久亚洲精品成人网小说| 久久91亚洲精品中文字幕| 亚洲久本草在线中文字幕| 亚洲激情黄色小说| 中文字幕亚洲男人的天堂网络 | 亚洲日韩精品无码专区网址| 亚洲精品无码高潮喷水在线| 亚洲AV无码一区二区乱子伦| 久久亚洲私人国产精品vA | 少妇亚洲免费精品| 国产亚洲精彩视频| 久久精品亚洲男人的天堂| 亚洲综合精品网站在线观看| 亚洲精品无码av人在线观看 | 亚洲av无码乱码国产精品| 亚洲美女aⅴ久久久91| tom影院亚洲国产一区二区| 亚洲av无码一区二区三区在线播放 | 亚洲精品又粗又大又爽A片| 亚洲成av人片在线观看天堂无码| 中文字幕日韩亚洲| 亚洲精品国产成人99久久|