Introduction

GraphQL 은 API를 위한 쿼리 언어이며 타입 시스템을 사용하여 쿼리를 실행하는 서버사이드 런타임입니다

graphQL의 장점

Overfetch 방지

  • Overfetch란 어플리케이션에서 실제 필요한 데이터보다 클라이언트에서 더 많은 데이터를 다운받는 것을 말하며, rest api를 사용하게되면 실제 사용되는 정보만 불러오는것이 아니라 사용하지 않는 정보들도 불러오기 때문에 overfetch이 발생된다. graphql의 경우는 사용하는 정보만 요청하기 때문에 일어나지않습니다.

Underfetch 방지

  • Underfetch란 특정 엔드포인트가 필요한 정보를 충분히 제공하지 못하는 경우를 말하며, 특정 정보들을 얻기위해서 1번의 요청이아니라 여러번 요청을 보내야하는 경우를 말합니다.

Typed schema

  • API로 노출되는 모든 타입들은 스키마에 정의됩니다. 이 스키마를 통해 클라이언트와 서버간의 data type 차이로 인한 버그를 없앨 수 있습니다.

Last updated