GraphQL

November 18, 2024

views

REST API

리소스 중심의 설계를 따르며, 각 리소스에 고유한 URI 각각의 엔드포인트에 맞는 DTO를 생성해서 관리 GraphQL

단일 엔드포인트 모든 요청은 graphql 엔드포인트의 쿼리로 처리 하나의 DTO만 생성 관리해야할 엔드포인트가 줄어듬 -> 유지보수에 용이 null에 대한 추가적인 처리가 필요할 수 있음 ex1) 게시판

유저 정보 조회 API

게시글 정보 조회 API

...

RestAPI는 다양한 정보가 필요하면 필요한만큼의 N번의 네트워크 요청을 하게 됨(설계에 따라) -> Under-Fetching 가능

Under-Fetching: 필요한 데이터를 한 번에 가져올 수 없음

네트워크 트래픽 증가 요청 대기시간 증가 GraphQL은 단일 쿼리를 통해 원하는 데이터를 한 번에 가져올 수 있음

RestAPI는 원하던 원치않던 불필요한 정보도 수신 가능(설계에 따라서) -> Over-Fetching 가능

Over-Fetching: 불필요한 데이터도 가져옴

네트워크 대역폭 증가 클라이언트에서 불필요한 데이터를 처리해야하는 부담 GraphQL은 쿼리를 통해 원하는 데이터만 지정해서 가져올 수 있음

댓글

댓글을 불러오는 중...