WEB · GRAPHQL
GraphQL 요청 처리 지도
GraphQL 요청은 스키마가 허용한 Query나 Mutation으로 들어오고, Resolver가 데이터 소스를 조회해 클라이언트가 요청한 모양의 JSON을 반환합니다.
GraphQL 요청 처리 순서
graphql
schema/type
가능한 타입과 필드 정의
query/mutation
클라이언트 요청 모양
resolver
필드별 데이터 가져오기
json response
요청한 필드 구조로 응답
schema/type
→
query/mutation
→
resolver
→
json response
N+1 resolver
점검
N+1
resolver가 필드마다 DB를 때리면 DataLoader가 필요합니다.
검증
스키마 밖 필드는 실행 전에 거절됩니다.
권한
resolver 안에서 리소스별 권한을 확인해야 합니다.
과도한 요청
depth limit, cost limit으로 무거운 쿼리를 제한합니다.