WEB · GRAPHQL

GraphQL 요청 처리 지도

GraphQL 요청은 스키마가 허용한 Query나 Mutation으로 들어오고, Resolver가 데이터 소스를 조회해 클라이언트가 요청한 모양의 JSON을 반환합니다.

GraphQL 요청 처리 순서

graphql
schema/type가능한 타입과 필드 정의
query/mutation클라이언트 요청 모양
resolver필드별 데이터 가져오기
json response요청한 필드 구조로 응답
schema/typequery/mutationresolverjson response

N+1 resolver

점검
N+1resolver가 필드마다 DB를 때리면 DataLoader가 필요합니다.
검증스키마 밖 필드는 실행 전에 거절됩니다.
권한resolver 안에서 리소스별 권한을 확인해야 합니다.
과도한 요청depth limit, cost limit으로 무거운 쿼리를 제한합니다.