엔지니어로 가는 길

비동기 로직에 대한 예외처리 AOP를 이용하여 개선하기 본문

private note/한 일, 할 일, 하고싶은 일

비동기 로직에 대한 예외처리 AOP를 이용하여 개선하기

탐p슨 2022. 11. 9. 22:32
728x90

여유롭지 않으므로 의식의 흐름대로 작성하고 나중에 수정하기로 한다.

 

사용자에게 알려야 하는 특정 이벤트가 발생하면 문자, 알림톡, 앱 push 등의 수단을 이용하여 사용자에게 해당 이벤트가 발생했음을 비동기적으로 알린다. 사용자에게 알림을 보낼 때 관련 알림 서비스의 이슈로 인해 알림을 보내는 데 실패할 수 있다.

 

예를 들면, 특정 클라우드의 문자 발송 서비스를 이용하고 있을 경우 우리 서비스가 아닌 해당 클라우드와 관련한 이슈로 인해 알림을 발송하는 데 실패할 수 있다. 이러한 예외는 얼마든 발생할 수 있고, 재발송을 시도하면 되기 때문에 예외에 대한 처리도 명확하다. 또한 알림은 핵심 로직이 아니기 때문에 알림이 실패했다고 해서 이후에 있는 작업이 진행되지 않는 것도 적절하지 않다.

 

이러한 이유로 알림에 대한 예외를 잡고는 있는데 몇 가지 문제가 있다.

 

1. 로그만 찍고 있다.

2. 알림에 대한 동일한 예외처리가 서비스 이곳 저곳에 산재되어 있다.

 

AOP 강의도 들었겠다 AOP를 이용하여 아래의 작업을 해볼 예정이다.

 

1. 이곳저곳에 산재되어 있는 예외처리 한 곳에 모으기

2. 실패시 정해진 횟수만큼 재시도하도록 만들기

 

728x90
Comments