Stack
BE(Back-end)
기술 스택
- SpringBoot
- Spring data JPA, Querydsl, Spring Redis
- Spring batch
- Spring Security, JWT, OAuth2.0
- JUNIT
- MySQL
- AWS(EC2, RDS, CloudFront)
- NginX 배포
- ElasticSearch
- SSE
Stack 사용 이유
Querydsl
- 문자가 아닌 코드로 쿼리를 작성함으로써, 컴파일 시점에 문법 오류를 쉽게 확인하기 위함
- 동적인 쿼리 작성이 편리
Redis
- 자주 사용하는 데이터에 대한 접근 속도를 높이기 위함
- 로그아웃 시 AccessToken을 blackList로 관리하기 위함
- 유효시간을 부여하여 토큰을 효율적으로 관리하기 위함
Batch
- 사용자가 적은 시간에 부가적인 로직들을 일괄처리하기 위함
OAuth2.0
SSE
- 실시간 알림기능을 구현하기 위해 서버에서 클라이언트 방향으로만 데이터를 보내고 리소스 낭비도 적은 SSE를 선택
ElasticSearch
- 사용자의 관심을 보다 정확하게 반영하는 검색 기능을 구현하기 위함
CloundFront
- S3 버킷에 저장한 이미지 정적, 동적 컨텐츠를 빠르게 응답하기 위해 캐시 기능을 제공하는 CloudFront 사용