EVO

멤버 초대 이메일 발송 설계

기능 요구사항 관리자는 이메일 주소를 입력하여 새로운 멤버를 초대할 수 있습니다. 초대 이메일은 지정된 템플릿 형식으로 발송되어야 합니다. 초대 링크는 10분간 유효합니다. 초대 링크는 1회만 사용가능합니다. 만료되거나 사용된 초대 링크는 더 이상 사용할 수 없습니다. 비기능 요구사항 초대 링크는 추측할 수 없는 안전한...

커넥션 풀 고갈 문제를 Redis Atomic 연산으로 개선하기

장애 상황 이슈 생성 API의 부하 테스트를 통해 안정적인 서비스 제공과 우수한 성능을 달성하는 것을 목표로 설정했습니다. 그러기 위해서 대규모 조직(1000명 이상)에서 50~100명의 사용자가 동시에 이슈를 생성하는 상황을 가정했을 때, 다음과 같이 요청-응답 시간(MTT)은 1~2초 이내, TPS는 30~40, 에러율은 0.1% 이하, 테스트...

500만 건 데이터의 페이징 API 성능 최적화

문제 사항 1. 책 조회 페이징 API (TPS 4.3) 책 조회에 대한 페이징 API를 구현한 뒤, Ngrinder를 통해 TPS를 확인해보니 4.3 으로 매우 낮은 상태였습니다. 책 ID(클러스터 인덱스)로 조회했을 때 최대 TPS는 약 230에 비해 현저히 낮은 상태였습니다. 이 문제점을 개선하기 위해 다음과 같은 과정을 진행했습니다. 테스...