sproutt / eussya-eussya-api

개발자 동기부여 서비스 플랫폼 '으쌰으쌰'
20 stars 1 forks source link

회원 가입 api 내부 로직 분리 #54

Closed Bellroute closed 3 years ago

Bellroute commented 4 years ago

회원 생성과 메일 전송을 분리시켜서 클라이언트에서 요청을 두 번 하는 방식으로 변경하면 어떨까요?

회원 가입 요청 -> 회원 생성 -> 회원 생성 성공 응답 -> 메일 인증 코드 전송 요청 -> 인증 코드 전송 -> 인증 코드 전송 성공 응답

hyukjin-lee commented 4 years ago

서비스 로직은 하나의 트랜잭션으로 묶여야하느냐 에 대해서 생각해보면 좋을 것 같아요. 회원가입은 성공했는데 메일 보내는 과정에서 에러가 발생했을 경우? 트랜잭션이 분리되어있으면 롤백 하는 것이 어려울 것으로 보입니다. 디비에는 있는데 메일은 안보내진.. 그런 상태가 되겠죠? 이 관점에서 같이 고민해보면 좋을 것 같습니다