2012-02-22 6 views
3

간단한 질문은 FastCommonAccessLogValve를 통해 AccessLogValve를 사용하는 데 결정적이며 계량 할 수있는 오버 헤드가 있습니까?JBoss의 AccessLogValve를 사용하여 요청을 기록 할 때 성능에 미치는 영향은 무엇입니까?

JBoss 4.2.3GA에서 액세스 로깅을 활성화하면 FastCommonAccessLogValve 또는 AccessLogValve (http://tomcat.apache.org/tomcat-5.5-doc/config/valve.html에 설명 된대로)를 사용할 수 있습니다. FastCommonAccessLogValve는 프로덕션 용도로 최적화되어 있지만 요청을 처리하는 데 걸리는 시간 (내가 수행해야하는 주요 정보)을 기록하지 못하게합니다.

가벼운 부하로 내 응용 프로그램을 배치하여 몇 가지 비교 부하 테스트를 실행하여 서버로드로 인한 처리 시간이 길어서 AccessLogValve의 오버 헤드가 숨겨지지 않도록하십시오. 그러나 FastCommonAccessLogValve 또는 로깅 없음과 비교 된 AccessLogValve의 오버 헤드는 응용 프로그램 자체에서 얻는 변형보다 작습니다. 예를 들어, 로깅 밸브가없는 벤치 마크에 비해 평균 99.7 % (AccessLogValve 사용), 103.4 % (AccessLogValve 사용) 또는 105.4 % FastCommonAccessLogValve 사용).

이 결과 범위는 오버 헤드가 ~ ​​5 %를 의미합니까? 또는 내로드 테스트에서 로깅을 사용하지 않고 훨씬 더 일관된 타이밍을 생성 할 수 있도록 시간을 소비해야합니까? 복잡한 응용 프로그램이므로 가능한지 확실하지 않습니다.

답변

1

응용 프로그램을 벤치마킹하여 올바른 작업을 수행하고 있다고 생각합니다. 성능 영향을 이해하는 유일한 방법은 AccessLogValve의 유무에 관계없이 벤치마킹하는 것입니다.

AccessLogValve의 개발자는 밸브의 성능을 최적화하기 위해 상당한 성능을 발휘했습니다. 적어도 가장 일반적인 패턴은 성능이 무시할 만합니다 (테스트에서 1-3 %).

그 벤치 마크를하지 않고서는 말하기가 정말 어렵다.

희망이 있으면 도움이됩니다.

행운을 빈다.

+0

감사합니다. 그건 의미가 있습니다. 결국 우리는 다른 로그 (웹 서버 로그)에 의존하기로 결정했지만 JBoss 로깅을 다시 방문 할 수 있습니다. –

관련 문제