해외 부띠끄 상품 가격/할인율 모니터링 → 수익성 검증 → 자동 주문까지 처리하는 개인 프로젝트
| 역할 | 저장소 | 주요 기술 | 비고 |
|---|---|---|---|
| 모니터링 앱 (현재 Repo) | monitoring_java | Java, Spring Boot, Selenium | 가격/할인율 모니터링, 자동 주문 트리거 |
| 검색 · 주문 서버 | search_java | Java, Spring Boot | 품번 검색, 주문 API |
| 관리자 페이지 | Monitoring_Admin | React, Spring | 품번/설정 관리, 리포트 조회 |
- 개인 프로젝트
- 2024.04.21 ~ 진행 중
- Backend: Java, Spring Boot
- FronetEnd: React
- Crawling: Selenium, ChromeDriver
- Infra / 기타: Discord Bot API, Scouter APM, VPN/Proxy
- 여러 해외 부띠끄 사이트의 상품 가격 및 할인율을 주기적으로 모니터링
- 가격/할인율 변동 발생 시 Discord 봇으로 알림 전송
- 변동된 상품을 크림(국내 리셀 플랫폼)에서 검색해 설정한 마진율 이상이면 추가 알림
- 특정 품번 업로드 시, Admin에서 관리 중인 품번이고 특정 가격 및 수량에 해당하면 해당 부띠끄에 자동 주문
- 외부 사이트 HTML 스냅샷을 저장해 회귀 테스트 수행
- Service 레이어는 Unit Test, 실제 사이트 연동은 통합 테스트로 분리
- Spring
@Scheduled+ Java Thread Pool로 병렬 실행
- 사이트마다 다른 품번 포맷을 Converting Layer로 통합 처리
- 설정파일을 기동 시 로드해 런타임에서 매핑
- 요청 간 Think Time 적용
- User-Agent / Cookie 로테이션
- ChromeDriver 환경을 일반 사용자처럼 세팅
- VPN/Proxy 활용
- 핵심 로직: 외부 의존 제거 후 단위 테스트로 커버
- 외부 연동부: 실제 상호작용은 통합 테스트로 검증
- DB 접근 최소화, In-Memory 비교 로직 우선
- 필요한 데이터만 파일 기반 저장(DB 대체)
- Scouter APM으로 Heap / Young GC 모니터링
- Snapshot 기반 회귀 테스트로 UI 변경 감지
- Smoke Test로 파이프라인 정상 동작 확인
- Discord 알림 채널을 운영 모니터링에도 활용



