FlightItemRepository

항공편 아이템 Redis 저장소. Hash 구조로 개별 항공편 캐싱.

설정

항목
캐시 키 접두사international-flight-items
TTL20분

메서드

save()

fun save(listKey: UUID, flightItems: List<FlightItem>)

항공편 목록 저장. Hash 구조로 저장 (detailKey → FlightItem).

Caller설명
FlightSearchService검색 결과 캐싱

find()

fun find(listKey: UUID, detailKey: String): FlightItem?

특정 항공편 조회.

Caller설명
FlightDetailService상세 조회 시 항공편 조회

findAll()

fun findAll(listKey: UUID): List<FlightItem>?

전체 항공편 목록 조회.

캐시 키 형식

international-flight-items::{UUID}

Hash 구조

Key: international-flight-items::{listKey}
Field: {detailKey}
Value: FlightItem

사용처

사용 위치용도
FlightSearchService검색 결과 개별 항공편 캐싱
FlightDetailService상세 조회 시 항공편 조회

특징

  • Redis Hash: HashOperations 사용
  • detailKey 기반 조회: 개별 항공편 빠른 조회
  • 20분 TTL: 검색 결과와 동일한 TTL
  • 벌크 저장: putAll로 전체 목록 한번에 저장