email verification
-
Reactive stream을 이용하여 Non blocking 이메일 서비스 구현하기 (Implement Non blocking email service using Reactive stream)Library/Backend 2019. 8. 25. 22:50
안녕하세요. Backend library 첫 게시물로, Reactive stream을 이용하여 Blocking email service를 Non blocking email service로 개선한 사례를 공유해보고자 합니다. 문제의 시작 개인적으로 진행중인 한 프로젝트에서, 이메일 인증 기능이 있는 회원 가입을 구현하고 있었습니다. 폼을 모두 작성하고, 가입 요청하는 단계에서 평균 5초간 지연이 발생했습니다. 5초는 사용자가 느끼기에 굉장히 긴 시간입니다. (버튼을 누르고 5초동안 아무것도 못하고 기다린다고 상상해보세요.) 그래서 반드시 해결해야 하는 문제라 판단하고, 어디가 문제인지 로그를 남기면서 파악해보기 시작했습니다. 그 결과, 회원 가입 과정에서 인증용 이메일을 발송하는 곳에서 병목이 발생한다는 ..