목록 보기
[코드가 환경을 모르는 구조 4/7] 타임머신 — 시간 축을 교체한다
아키텍처

[코드가 환경을 모르는 구조 4/7] 타임머신 — 시간 축을 교체한다

flex
flex
2026년 5월 6일

두줄요약

HR SaaS에서는 시간이 급여와 연차 결과를 바꾸는 입력이므로 요청 단위로 교체 가능하게 만들었습니다. Clock 포트와 헤더 기반 Adapter, 비동기 컨텍스트 전파, 환경별 활성화로 타임머신을 구현했습니다.

핵심 내용

  • HR SaaS에서 시간은 급여, 연차, 퇴직금 등 결과를 바꾸는 비즈니스 입력
  • Clock 포트와 헤더 기반 Adapter로 요청 단위 시간 축 교체 가능
  • ThreadLocal, 코루틴, Kafka 등 비동기 경계까지 시간 컨텍스트 전파
  • 환경별 값 주입으로 dev/qa에서만 타임머신 활성화, prod는 비활성

주의할 점

  • 비즈니스 코드가 시스템 시계를 직접 호출하지 않는 규율 필요
  • 서드파티 라이브러리의 직접 시계 접근은 완전히 제어 불가
  • Kafka 재처리 시 과거 헤더가 현재 계산에 섞일 수 있어 주의 필요

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...