Skip to content

타임존 관련 설정 개선 #3

Description

@thkwag

1. Jackson 타임존 설정 (HIGH)

현재 설정:

# apps/api-server/src/main/resources/application.yml
spring:
  jackson:
    time-zone: Asia/Seoul

현황:

  • 모든 API 응답의 날짜/시간이 Asia/Seoul 기준으로 직렬화됨
  • 해외 사용자는 서울 시간을 받아 프론트엔드에서 변환 필요

선택지:

옵션 장점 단점
Asia/Seoul 유지 변경 없음, 한국 사용자 편의 해외 사용자 혼란 가능
UTC로 변경 국제 표준, 명확함 프론트엔드 변환 로직 필요
설정 제거 (ISO-8601) 오프셋 명시적 표현 응답 문자열 길어짐

  1. Cron Job 타임존 (MEDIUM)

현재 상태:

  • Cron 표현식이 JVM 기본 타임존에서 해석됨
  • 예: "0 0 2 * * ?" → JVM 타임존의 새벽 2시 실행

영향 파일:

  • apps/api-server/src/main/resources/application-prod.yml (세션 정리)
  • apps/scheduler/src/main/resources/application.yml (스케줄 작업)

잠재적 문제:

  • 서버 배포 위치에 따라 동일한 cron이 다른 UTC 시간에 실행
  • 유지보수 윈도우, 빌링 주기, 데이터 집계 타이밍에 영향 가능

선택지:

  1. 배포 문서에 서버 타임존 전제조건 명시
  2. spring.task.scheduling.zone: UTC 설정 추가
  3. 모든 서버가 동일 타임존이면 현재 상태 유지

완료 조건

  • 글로벌 배포 시 Jackson 타임존 전략 결정
  • Cron 작업 타임존 처리 방식 결정
  • 배포 가이드에 타임존 전제조건 문서화
  • 필요시 설정 파일 업데이트

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions