🏆 카카오 클라우드 스쿨 1기 개발자 과정 최종 프로젝트 우수상 🏆
📆 개발 기간: 2022.11.01 ~ 2022.12.12 📆
- 카카오 쇼핑, 11번가, 홈플러스 등 다양한 쇼핑몰의 식품 특가 정보를 30분 주기 로 업데이트하여 한눈에👀 보여주는 클라우드 네이티브 웹 서비스 입니다.
- 다양한 쇼핑몰에서 빠르게 변동하는 식품의 특가 정보를 한눈에 확인하기 어렵다는 기존의 문제점을 해소합니다.
- 사용자가 편리하게 식품 특가 정보를 확인하고 쇼핑할 수 있도록! 로그 기반의 상품 추천, 봇을 통한 사용자 친화적인 검색, 획일화된 카테고리 등 다양한 기능들을 제공합니다.
연동되는 데이터베이스 종류, 주요 기능을 고려하여 백엔드를 회원 서비스, 관리자 서비스, 검색 & 봇 서비스 총 3개의 서비스로 분리했습니다.
서비스 분리를 통해 각 서비스는 독립적으로 실행되고 각각 명확하고 세분화된 역할을 갖습니다. 세분화된 서비스 덕분에, 디버깅, 로깅 등의 모니터링과 유지보수가 용이해지고 각 서비스 별로 자유로운 스케일 아웃이 가능합니다. 또한 다른 서비스의 장애로 부터 영향을 받지 않습니다.
쿠버네티스 환경에서는 DNS 기능과 로드밸런싱 기능을 내장하고 있기 때문에 Service Mesh, API Gateway 또는 spring cloud를 사용하지 않고 모듈을 분리하는 방식 으로 서비스를 분리했습니다. 이때, 각 모듈이 spring security, error handler 등의 공통 기능을 수행하는 공통 모듈을 하위 모듈로 참조하도록 함으로써 서비스 간의 코드 중복을 최소화했습니다.
레포지토리 | 링크 | 설명 |
---|---|---|
SpecialPriceInformationCrawler | 링크 | 상품 크롤링 코드 |
CategoriesML | 링크 | 카테고리 분류 코드 |
soup-frontend | 링크 | 프론트엔드 코드 |
soup-backend | 링크 | 백엔드 코드 |
soup-docker | 링크 | docker-compose 코드 |
manifest | 링크 | kubernetes manifest files |