spring boot, Mybatis, Java, Mysql, Redis, Jenkins, Github, Naver cloud platform
- 자가진단 검사과 기분 일기장, 커뮤니티를 통해 스트레스를 관리하는 것이 목표입니다.
- 단순 기능 구현뿐 아니라 Extensibility와 Scailibility한 서비스를 구현하는 것이 목표입니다.
- 대규모 트래픽 처리를 위한 애플리케이션 아키텍처를 구현
- Mysql에서 인덱스 설정과 실행계획 분석 후 쿼리 최적화
- 다중 서버 환경에서 JWT 토큰과 쿠키를 활용한 인증 구현
- 로그인을 했는지 확인하는 부가기능 반복 문제에 AOP를 적용하여 문제 해결하기
- 스프링의 @Transactional을 이용하여 작업의 완전성 보장하기
- 의존적이지 않은 단위테스트 작성
- Redis Cache를 이용해 자가진단 조회 기능 구현
- ControllerAdvice, ExceptionHandler를 사용하여 비즈니스 예외 처리 전략
- Redis 트랜잭션에는 롤백이 없기 때문에 직접 트랜잭션 롤백 후처리하기
- Jenkins를 사용하여 CI/CD 환경 구축
- 게시글 목록 조회 시 중복된 일대다 데이터를 가져오는 문제를 메서드 분리와 쿼리 튜닝으로 해결하기
- Redis Pipeline을 이용하여 한번에 많은 데이터 추가 시 네트워크 병목 개선
- Redis에 Look Aside 캐시 구조를 적용하여 가용성 확보하기
- naver Cloud Platform을 이용하여 로드밸런싱