API 계약

생산자와 소비자가 준수하기로 합의한 API의 정형 명세(OpenAPI, gRPC proto, GraphQL 스키마)입니다.

API 계약란?

API 계약은 인터페이스를 암묵적 지식에서 버전 관리되는 산출물로 바꿉니다. 이를 통해 클라이언트 코드 생성, CI에서의 호환성 검사, 소비자 주도 계약 테스트가 가능해집니다. 팀 간 조율에 있어 아키텍처가 소유할 수 있는 가장 효과가 큰 문서 중 하나입니다.

관련 용어

  • 이벤트 채널 — 서비스들이 비동기적으로 발행하고 구독하는, 이름과 타입이 부여된 이벤트 스트림(흔히 Kafka 토픽 또는 그에 준하는 것)입니다.
  • 마이크로서비스 — 애플리케이션을 비즈니스 역량을 중심으로 구성된, 작고 독립적으로 배포 가능한 서비스들의 모음으로 구조화하는 아키텍처 스타일입니다.

자세히 보기