선박 항적 실시간 수집 및 배치 집계 시스템 (Spring Boot + Spring Batch)
L1(5min) + L2(hourly, 신규) + L3(daily) 3계층 캐시로 오늘 범위 조회를 DB 쿼리 대신 인메모리 캐시에서 처리하도록 전환. 신규: - HourlyTrackCache: Caffeine L2 캐시 (TTL 26h, 780K entries) - CacheWarmupService: L1/L2/L3 통합 비동기 워밍업 - VesselTrackToCompactConverter: VesselTrack → CompactVesselTrack 변환 변경: - GisServiceV2: todayRange → hourlyRange(L2) + fiveMinRange(L1) 캐시 우선 조회 - DailyTrackCacheManager: SplitQueryResult에 hourlyRange/fiveMinRange 분리 - CompositeTrackWriter: hourly 저장 시 L2 캐시 동시 적재 - HourlyAggregationJobConfig: hourly 완료 → L1 cleanup 리스너 - DailyAggregationJobConfig: daily 완료 → L2 cleanup 리스너 - AsyncConfig: cacheWarmupExecutor 전용 스레드 풀 추가 - [CACHE-MONITOR] 임시 모니터링 로그 9개 파일 추가 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .claude | ||
| .githooks | ||
| .mvn | ||
| docs | ||
| scripts | ||
| sql | ||
| src | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .sdkmanrc | ||
| CLAUDE.md | ||
| mvnw | ||
| mvnw.cmd | ||
| pom.xml | ||
| run-on-query-server-dev.sh | ||
| vessel-batch-control.sh | ||