• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

실무에서 몇 개 정도의 어떤 어즈바이저를 적용해서 사용중인가요?

22.05.03 23:18 작성 조회수 192

0

영한님, 안녕하세요.

DB접근기술 강의를 듣고나니, 스프링 핵심원리 강의들이 다시 떠올라서 핵심원리 복습을 하고 있습니다. 스프링 AOP 에서 여러 어드바이저를 적용해도 프록시는 하나만 생성되어 사용된다 라고 콕 찝어서 설명을 해주셨는데요. 혹시 소속되어 계신 배민이나 그 전에 경험하신 시스템에서 주로 몇 개 정도의 어드바이저를 적용했고, 대략 어떤 부가기능들이 적용되어 있었는지 알 수 있으면 좋겠습니다. (참고용으로요)

로강을 위해 데이터베이스에 정보를 기록하는 부가기능들도 본 적이 있는데, 이런 부가기능들이 모이면 시스템 성능에 영향을 줄 수 있을텐데요.  보통 성능에 문제가 생길까봐 AOP 등록을 해도 될 지 고민되는 경우가 많은데 이를 어떻게 판단할 수 있을까요? 너무 애매한 질문을 드린 건 아닌가 모르겠네요. 작은 도움될만한 정도라도 답변을 주시면 감사하겠습니다. 

답변 1

답변을 작성해보세요.

1

안녕하세요. 아리마님

AOP 자체는 단순히 자바 코드에 메서드 호출이 발생하는 것이기 때문에 성능에 거의 영향을 주지 않습니다.

대신에 AOP 구현 자체에서 성능에 영향을 줄 수 있습니다. 예를 들어서 AOP를 구현할 때 너무 많은 로그를 남기면 성능에 영향을 주겠지요?

성능 부분은 별도로 성능 테스트를 해보셔야 합니다.

AOP로 사용되는 부가기능은 보통 트랜잭션, 로깅 등에 많이 사용하고, 부수적으로 1~2 개 정도 더 사용되는 편입니다. (꼭 필요한 곳에만 사용된다고 이해하시면 됩니다.)

감사합니다.