나는이 질문을 가지고있다. 들어오는 모든 요청을 로깅하기위한 내 스프링 기반 REST API 서버를위한 작은 로깅 기능을 구현하고 있습니다.1000 명 이상의 사용자가이 API를 사용하여 블로킹 I/O 로거와 함께 사용할 것을 기대하고 있습니다. 모든 것을 느리게 할 것입니다. 문제를 해결하기위한 두 가지 접근 방법이 있습니다. 1. 메모리 내 arrylist를 사용하여 비동기 로거를 만듭니다. 그런 다음 스프링 스케줄러를 사용하여이를 정기적으로 로그 파일로 내 보냅니다. 2. JMS를 사용하여 로그를 대기열로 보냅니다. 큐가 비동기 적으로 로깅을 처리하게하십시오.비동기 로거 (봄)
누구나 봄에이 작업을 했습니까? 비록 내가 옵션 2에 대한 것이지만, 이것을하는 더 좋은 방법이 있습니까? 전문가의 조언이 필요합니다. 모두에게 감사드립니다!
추가 정보 -이 REST API가 프런트 엔드 RoR 앱에서 사용되기 때문에 동기 로깅이 병 목이 될 것입니다. 그래서 한 세션의 사용자는 분명히 매우 자주 발생하는 100 건의 API 호출을 초래할 것입니다. POST에서 전송 된 JSON과 함께 실제 요청을 로깅합니다.
기본 솔루션을 사용하지 않는 이유는 무엇입니까? 목수가 자신의 망치를 만들고, 자신의 손톱을 만들고, 자신의 도구 벨트를 바느냐, 아니면 수년간의 기존 R & D를 활용 한 잘 알려진 회사가 만든 도구를 사용하여 집을 짓기를 원하십니까? – jmort253
동기 로깅이 병목 현상이 될 수 있습니다. 대개 느려지는 경우 로깅 양을 줄여야합니다. 그래서 DEBUG, INFO 등의 레벨이 있습니다. – artbristol
감사합니다. 그냥 동기화 로깅이 병목 현상이라고 생각하는 이유에 대한 quesiton을 업데이트했습니다. – gotz