백엔드 커리큘럼 심화: Protobuf 스키마 진화, 필드 번호와 의미를 함께 지키는 호환성 플레이북
Protobuf·gRPC 계약을 바꿀 때 필드 번호, presence, enum, JSON 변환, producer·consumer 배포 순서를 함께 관리해 조용한 데이터 손실과 롤백 불능 배포를 막는 방법을 정리합니다.
Protobuf·gRPC 계약을 바꿀 때 필드 번호, presence, enum, JSON 변환, producer·consumer 배포 순서를 함께 관리해 조용한 데이터 손실과 롤백 불능 배포를 막는 방법을 정리합니다.
API 응답 필드 추가·삭제·이름 변경·enum 확장·nullable 변경이 클라이언트 호환성과 성능에 어떤 영향을 주는지, 배포 전 어떤 숫자와 기준으로 판단해야 하는지 정리합니다.
API를 없애거나 바꿀 때 클라이언트 장애를 만들지 않도록 deprecation notice, sunset window, 호환성 게이트, 관측 지표를 숫자 기준으로 운영하는 방법을 정리합니다.
URI/Header/Content Negotiation 방식의 API 버전 관리와 하위 호환성 전략