- 일반적인 중고 거래 서비스에 "경매" 기능을 추가한 중고 거래 플랫폼 API 서버입니다.
- 대용량 트래픽 처리를 고려해 개발하였으며 테스트 코드 작성, CI/CD 자동화 등을 통해 프로젝트의 완성도를 높였습니다.
- Java 11
- Spring Boot + Gradle
- Hibernate/SpringJPA/QueryDSL
- Docker
- Jenkins
- Flyway
- Mockito
- AWS
- 코드 PR 후 develop 브랜치에 코드가 merge 되면 Webhook으로 Jenkins에 알린다.
- Jenkins는 SpringBoot를 테스트/빌드 후 jar 파일을 만든다.
- Dockerfile로 jar 파일이 포함된 DockerImage를 만들어 ECR에 업로드한다.
- ECR에 업로드된 이미지로 ECS에 컨테이너를 새로 배포한다.
- 2~4 과정 중 실패하면 개발자에게 Email을 보내 알린다.
- RDBMS를 이용한 입찰 시스템
- 실시간 경매 가격을 위한 SSE와 Redis Pub/Sub
- 경매 결과 안내를 위해 Lambda에서 SMS 발송
- Dockerfile을 이용한 이미지 생성
- Jenkins를 이용한 CI/CD 자동화
- AWS ECS 무중단 배포
- 인증/인가를 위한 JWT