다챠 서비스의 주요 데이터 처리 작업을 자동화하여 주기적으로 수행하기 위한 모듈입니다.
스케줄링을 통해 매일 또는 매시간 처리 작업을 수행하여 시스템의 안정성과 효율성을 유지하는 역할을 담당합니다.
이 모듈은 다음과 같은 핵심 기능들을 제공합니다.
입찰 판매글의 낙찰자를 선정하여 거래를 진행합니다.
-
최종 입찰자 선정: 매일 스케줄링을 통해 각 판매글에 대한 낙찰자를 선정합니다.
-
거래 프로세스 진행: 선정된 낙찰자와 판매자 간 거래 프로세스를 진행합니다.
제재 기간이 종료된 사용자에 대한 권한 복구 처리를 수행합니다.
- 제재 만료 대상 권한 복구: 매일 스케줄링을 통해 제재 기간이 종료된 사용자를 조회하여 권한을 복구합니다.
만료일자가 지난 판매글을 만료처리합니다.
- 판매글 만료 처리: 매일 스케줄링을 통해 만료일자가 지난 판매글을 조회하고, 해당 판매글을 기간만료 처리합니다.
이벤트 쿠폰과 데이터 충전권의 만료를 자동 처리합니다.
-
데이터 충전권 만료 처리: 매일 스케줄링을 통해 만료일자가 지난 데이터 충전권을 조회하고, 해당 충전권을 기간만료 처리합니다.
-
이벤트 쿠폰 만료 처리: 매일 스케줄링을 통해 만료일자가 지난 이벤트 쿠폰을 조회하고, 해당 쿠폰을 기간만료 처리합니다.
매달 사용자 보유데이터 및 판매데이터를 초기화합니다.
-
보유데이터 초기화: 매일 스케줄링을 통해 데이터 초기화 일자에 해당하는 사용자의 보유데이터를 해당 요금제에 설정된 초기 데이터 용량으로 초기화합니다.
-
판매데이터 초기화: 매일 스케줄링을 통해 데이터 초기화 일자에 해당하는 사용자의 판매데이터를 요금제에 있는 0으로 초기화합니다.
서비스 거래량과 시세를 주기적으로 통계 내립니다.
-
거래량 통계: 매 시간별로 통신사별 일반거래 및 입찰거래의 총 거래량을 집계하여 통계를 생성합니다.
-
시세 통계: 매 시간별로 통신사별 일반거래 및 입찰거래의 100MB당 평균 거래 가격을 계산하여 통계를 생성합니다.
-
Backend: [Spring Boot, Java 17, Spring Data JPA, Spring Batch]
-
Database: [MySQL]
-
Infrastructure: [AWS, Docker]
-
Monitoring: [Grafana, loki]