Backend & Distributed Systems
점진적 전환을 위한 버전 API 어댑터
운영 중인 클라이언트를 유지하면서 내부 엔드포인트를 버전 자원 계약으로 옮기는 호환 어댑터 전략을 다룹니다.
API 전면 재작성은 설계도에서는 단순하지만 배포 위험이 크다. 목표 자원 계약을 먼저 정하고 기존 엔드포인트를 살려둔 채 수직 기능 하나씩 어댑터 뒤로 옮기는 편이 안전하다.
/v1 폴더만 추가해서는 부족하다. ID, UTC 시각, 서울 날짜 계산, 검증 오류, 멱등성, 소유권과 공개 범위가 안정된 계약이어야 한다. 기존 payload는 같은 원장으로 변환해 저장하고 데이터를 복제하지 않는다.
첫 수직 단위는 추천 이유, 일일 5개 제한, 타이머 복구, 세션 저장을 묶었다. 다음 단위는 주간 계획 생성과 잠금이었다. 외부 배포도 같은 경계를 쓴다. LinkedIn 어댑터는 자격증명과 --apply가 없으면 네트워크 쓰기를 하지 않고 API 버전을 헤더로 분리한다. 어댑터는 호출자 전환과 동등성 검증 뒤 제거할 임시 경계다.
관련 글
Backend & Distributed Systems
CI 디스패치로 연결한 이벤트 기반 비공개 초안
승인된 로컬 원문만 정책으로 거르고 비공개 초안을 만든 뒤 원본을 노출하지 않고 CI를 호출하는 이벤트 경계입니다.
Backend & Distributed Systems
D1 위에 학습 도메인 원장 확장하기
실행 중인 할 일 앱을 갈아엎지 않고 목표, 계획, 시도, 오답, 복습, 증거 원장을 단계적으로 추가한 사례입니다.
Backend & Distributed Systems
삭제 후 재생성을 막는 툼스톤 설계
사용자가 삭제한 기본 항목을 영구 삭제하면서 앱 초기화 로직이 같은 항목을 되살리지 못하게 하는 데이터 설계입니다.