안녕하세요 현재 로그백 로깅 프레임 워크를 연구하고 있습니다. 비동기 Appender는 모든 스레드가 대기열에서 메시지를 대기열에 넣고 비동기식 appender의 작업 스레드가 대기열에서 특정 대상으로 메시지를 로깅 할 수있는 appenders로 결정할 수있는 방식으로 메시지를 로깅하기 위해 차단 대기열을 사용합니다. 파일, 데이터베이스, 소켓 등등.구성 및 Logback 프레임 워크에서 AsyncAppender 성능
메인 스레드가 I/O를 수행하지 않아 응답 시간에 성능 향상을 볼 수 있습니다. 대기열의 메시지 만 푸시합니다. 백그라운드 작업자 스레드는 비동기 애플릿이 해당 메시지를 검색하고 로그 파일에 추가하십시오.
내 이해가 맞습니까? 대기열 크기, maxFlushTime, neverBlock, discardingThreshold 및 includeCallerData와 같은 비동기 애플릿과 관련된 몇 가지 구성 속성을 읽습니다.
로깅 성능을 향상시키기 위해 이러한 속성을 사용해야하는 방법 async appender에 대한 현재 구성은 다음과 같습니다.
<appender name="ASYNC500" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="fileAppender"/>
<queueSize>500</queueSize>
<maxFlushTime>1000</maxFlushTime>
</appender>
성능 향상을 위해 누군가 나에게 약간의 조정을 제안 할 수 있습니까? ? 어느 것이 정상적인 appender인가 Async Appender인가?
은 log4j입니다. log4j 성능 통계에서이 이미지에 표시된 async appender와 async logger의 차이점은 무엇입니까? https://logging.apache.org/log4j/2.x/images/async -vs-sync-throughput.png – Prashank
은 log4j2가 더 나은 Logback입니까? – Prashank
그 질문에 대한 대답은 ** 귀하의 ** 사용 패턴에 달려 있다고 생각합니다. – glytching