Categories: 정보처리기사

정보처리기사 기출문제 총정리 ㉒ 마이크로서비스 API – REST·GraphQL·gRPC 설계

API(Application Programming Interface) 설계

API는 소프트웨어 컴포넌트 간 통신을 위한 인터페이스입니다. 정보처리기사에서는 REST API 설계 원칙과 최신 API 기술(GraphQL, gRPC)이 출제됩니다.

REST API 설계 원칙

REST 6가지 제약 조건

  • 클라이언트-서버: UI와 데이터 저장 분리
  • 무상태(Stateless): 각 요청은 필요한 모든 정보를 포함, 서버는 세션 저장 불필요
  • 캐시 가능(Cacheable): 응답에 캐시 가능 여부 표시
  • 계층화(Layered System): 클라이언트는 중간 서버(프록시, LB) 존재 여부 모름
  • 균일한 인터페이스(Uniform Interface): 자원 식별, 표현을 통한 조작, 자기 서술적 메시지, HATEOAS
  • 주문형 코드(Code on Demand): 서버가 클라이언트에 실행 코드 전송 (선택적)

Richardson Maturity Model

  • Level 0: HTTP 터널 (단일 URI, 단일 동사)
  • Level 1: 리소스 (URI로 자원 식별)
  • Level 2: HTTP Verbs (GET/POST/PUT/DELETE 적절히 사용)
  • Level 3: Hypermedia Controls (HATEOAS – 링크로 가능한 다음 동작 안내)

REST API 설계 규칙

  • URI는 명사로 자원 표현 (동사 사용 금지)
  • 계층 구조: /users/{id}/orders/{orderId}
  • 복수형 사용: /users (not /user)
  • HTTP 메서드로 동작 표현: GET(조회), POST(생성), PUT(전체 수정), PATCH(부분 수정), DELETE(삭제)

GraphQL

Facebook이 개발한 API 쿼리 언어로, 클라이언트가 필요한 데이터를 정확히 지정하여 요청합니다.

REST vs GraphQL

  • Over-fetching 해결: GraphQL은 필요한 필드만 선택 → 불필요한 데이터 수신 없음
  • Under-fetching 해결: 여러 자원을 단일 쿼리로 조회 (REST는 여러 엔드포인트 호출 필요)
  • 단일 엔드포인트: 모든 요청이 /graphql로 집중
  • 강력한 타입 시스템: Schema로 API 계약 정의

GraphQL 연산

  • Query: 데이터 조회
  • Mutation: 데이터 변경
  • Subscription: 실시간 데이터 구독

gRPC

Google이 개발한 고성능 RPC 프레임워크입니다.

  • Protocol Buffers(protobuf): 이진 직렬화 포맷. JSON보다 빠르고 용량 작음
  • HTTP/2 기반: 다중화, 스트리밍, 헤더 압축 지원
  • 스트리밍: 단방향/양방향 스트리밍 지원
  • 마이크로서비스 내부 통신에 적합

API 버전 관리

  • URI 버전: /api/v1/users
  • 헤더 버전: Accept: application/vnd.api+json;version=1
  • 쿼리 파라미터: /api/users?version=1

시험 핵심 포인트

  • REST 무상태: 서버는 클라이언트 세션 저장 안 함
  • HATEOAS: 응답에 다음 가능한 동작 링크 포함 (REST Level 3)
  • GraphQL 장점: Over-fetching/Under-fetching 해결, 단일 엔드포인트
  • gRPC: protobuf + HTTP/2, 마이크로서비스 내부 통신
  • PUT: 전체 교체 / PATCH: 부분 수정

마무리

API 설계는 정보처리기사 실기에서도 설계 문제로 출제될 수 있습니다. REST 제약 조건과 HTTP 메서드의 적절한 사용, GraphQL의 특징을 중심으로 학습하세요.

zerg96

Recent Posts

사이버보안 위기 경보: 해커들이 AI로 무장했다, 당신의 데이터는 안전한가

AI가 해킹 도구로 진화했습니다. 27초 만에 공격 코드 작성, AI 봇의 랜섬웨어 협상, GPU 탈취까지—삼성SDS…

3시간 ago

정보보안기사 필기 핵심 개념, 접근통제·인증 8문제로 정리

필기 시험의 접근통제 영역은 용어 하나만 알아도 풀리는 문제와 개념을 뒤집어 묻는 문제가 섞여 나옵니다.…

8시간 ago

유튜브 AI 영상 범람, 진짜 크리에이터는 어떻게 살아남나

유튜브에 AI 자동 생성 영상이 넘쳐납니다. 진짜 크리에이터들은 어떻게 살아남아야 할까요? AI와 경쟁하는 3가지 생존…

9시간 ago

코스피 사이드카 이틀 만에 또 발동, 올해만 27번째…5분간 멈추는 건 ‘프로그램 매도’뿐입니다

이틀 전에 사이드카가 걸렸을 때만 해도 "한 번 놀란 장"으로 끝날 줄 알았는데요. 15일 아침…

10시간 ago

코스피 낙폭 7%로 확대, 외국인 1.7조 순매도: 10월 15일 오전 10시 시황

오전 시황 글에 이어 장중 후속 정리입니다. 코스피는 개장 직후 5%대였던 낙폭이 오전 10시 전후에…

13시간 ago

코스피 5.59% 급락 출발, 개장 7분 만에 매도 사이드카: 10월 15일 오전 시황

10월 15일 목요일 아침, 코스피가 전날 종가보다 5.59% 낮은 5,673.01로 출발했습니다. 장 시작 7분 만에…

13시간 ago