/////
Search
Duplicate

24년 3월 12일 화요일

날짜
2024/03/12

페이먼츠 리팩토링 (완료 시  )

문제

{비동기 + 이벤트 호출} 에는 문제점이 아래와 같이 있었어요
비동기
페이먼츠 구조상 비동기 호출 시, 페이API 비정상 응답임에도 정상처리가 될 가능성이 있어요
비동기 시도에 대한 예외처리는 컨트롤러 어드바이스에서 잡지 못 해요.
이벤트 호출
페이API 호출 이후 도메인 로직 작성이 불가능해요
예외케이스에 대한 전체 롤백 처리가 불가능해요
전체 로직이 하나의 트랜잭션에 묶여서 호출되지 못 하기 때문이예요
재시도 처리가 필요할까?
페이먼츠
에러로깅 / 에러코드 바로 반환하기.
클라이언트에게 재시도를 위임
서버는 재시도 처리 x
이메일 / 알림
에러로깅
서버가 직접 재시도 처리 o
페이먼츠 ⇒ 바로바로 에러 로깅 / 에러코드 던져주기. 재
알림 / 이메일 ⇒ 값 반환 x. 이메일 서버에 데이터 전송해줘야 이메일 전송 o. 재시도 처리 o

해결방안

파사드 패턴을 쓸 예정

RDS Proxy (완료 시  )

문제

RDS Read Replication 이 죽는 경우 정적으로 연결한 URL 간 연결이 끊김 ⇒ SPoF
따라서 아래와 같은 옵션 중 택 1 해야함
AWS RDS 에 대해서 여러 Slave 에 대한 쓰레드풀을 잡고 커넥션이 끊김에 따라 다른 DB로 변경하기
쓰레드풀 미리 잡아놓기 ⇒ 커넥션이 끊기는지 감지 & 다른 DB 선택 기준안 설정
vs
RDS Proxy 사용하여 여러 Slave 에 대한 Connection Pool 관리를 AWS에 위임

해결방안

RDS Proxy 사용하여 여러 Slave 에 대한 Connection Pool 관리를 AWS에 위임

대주제 (완료 시  )

문제

해결방안