커밋 그래프

5 커밋

작성자 SHA1 메시지 날짜
2e9361ee58 refactor: SNP API 전환 및 레거시 코드 전면 정리
- CollectDB 다중 신호 수집 → S&P Global AIS API 단일 수집으로 전환
- sig_src_cd + target_id 이중 식별자 → mmsi(VARCHAR) 단일 식별자
- t_vessel_latest_position → t_ais_position 테이블 전환
- 레거시 배치/유틸 ~30개 클래스 삭제 (VesselAggregationJobConfig, ShipKindCodeConverter 등)
- AisTargetCacheManager 기반 캐시 이중 구조 (최신위치 + 트랙 버퍼)
- CacheBasedVesselTrackDataReader + CacheBasedTrackJobListener 신규 추가
- VesselStaticStepConfig: 정적정보 CDC 변경 검출 + hourly job 편승
- SignalKindCode enum: vesselType/extraInfo 기반 선종 자동 분류
- WebSocket/STOMP 전체 mmsi 전환 (StompTrackStreamingService ~40곳)
- 모니터링/성능 최적화 코드 mmsi 기반 전환
- DataSource 설정 통합 (snpdb 단일 DB)
- AreaBoundaryCache Polygon→Geometry 캐스트 수정 (MULTIPOLYGON 지원)
- ConcurrentHashMap 적용 (VesselTrackStepConfig 동시성 버그 수정)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 09:59:49 +09:00
e729316edf feat: IntegrationVessel 전용 DataSource 지원 및 프로파일 호환성 보장
- IntegrationVesselService에 전용 DataSource 자체 생성/관리 추가
  - vessel.integration.datasource.* 설정으로 별도 DB 연결 가능
  - @PostConstruct에서 경량 HikariDataSource 생성 (max 3, min 1)
  - 미설정 시 queryDataSource 자동 폴백 (기존 동작 유지)
- prod: 별도 DB (mdadb2 gis.t_ship_integration_sub) → 전용 DataSource
- dev/prod-mpr: queryDB signal 스키마 → queryDataSource 폴백
- 기존 DataSourceConfig 4개 파일 수정 없이 프로파일 완벽 호환

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 07:23:44 +09:00
cc165fc36a feat: 항적 조회 안정성 개선 - 계층적 폴백, 선박 누락 방지, 2-pass 뷰포트 필터링
- GisService: 하위 구간 미집계 감지 시 상위 테이블에서 보완 집계하는
  계층적 폴백 로직 추가 (daily→hourly→5min)
- ChunkedTrackStreamingService: 빈 LineString으로 인한 선박 객체 누락 방지,
  MAX_TRACKS_PER_CHUNK를 500,000으로 증가
- ChunkedTrackStreamingService: 2-pass 뷰포트 필터링 구현
  Pass 1에서 뷰포트 교차 선박 ID를 수집하고, Pass 2에서 해당 선박의
  전체 항적을 viewport 필터 없이 조회하여 선박 소실 현상 해결
- TrackConverter: 빈 geometry에서도 선박 객체 반환하도록 수정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-05 06:53:47 +09:00
89482d854f feat: Add V2 REST API with WebSocket-compatible responses
- Add GisControllerV2/GisServiceV2 for CompactVesselTrack responses
- Add nationalCode and shipKindCode fields to REST API responses
- Add flexible DateTime parsing support (multiple formats)
- Add TrackConverter utility for track data conversion
- Update SwaggerConfig with V2 API endpoints and unified tags
- Update ProdDataSourceConfig for prod-mpr profile support
- Enhance Swagger documentation for all DTOs
2026-01-20 13:38:31 +09:00
2a708b3318 Initial commit 2025-11-19 16:03:16 +09:00