budtree
나를 조금만 더 완성해보는 날
budtree
전체 방문자
오늘
어제
  • 분류 전체보기 (77)
    • 💝 Computer Science (5)
      • OS (1)
      • Network (1)
      • Database (3)
    • 🐤 study (21)
      • kubernetes🕸️ (0)
      • Spring Boot🍃 (1)
      • JPA (2)
      • Infra (2)
      • HTML | CSS (3)
      • Java (6)
      • Kotlin (3)
      • etc (4)
    • 💻 Project (3)
      • memoir & diary 📚 (1)
      • class (0)
      • project (2)
    • 🔥 Problem Solving (38)
      • programmers (30)
      • SQL (8)
      • BOJ (0)
    • ✨ daily (10)
      • diary (5)
      • exercise (5)
      • travel (0)
      • review (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 개린이
  • 코딩테스트
  • 카카오코딩테스트
  • css
  • 자바
  • 서울대입구 헬스장
  • 코린이
  • programmers
  • 일기
  • Summer/Winter Coding
  • 취업
  • kotlin
  • 월간 코드 챌린지
  • 취업준비
  • 2018 KAKAO BLIND RECRUITMENT
  • 헬스장
  • 카카오코테
  • 프린이
  • ArrayList
  • pt
  • 카카오
  • java
  • HashMap
  • 코테
  • 코틀린
  • 월간코드챌린지
  • 헬린이
  • 프로그래머스
  • 피티
  • 블랙멀티짐

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
budtree

나를 조금만 더 완성해보는 날

🐤 study/etc

[GraphQL] graphQL이란? | restAPI vs graphQL | graphQL 장단점 비교

2022. 6. 29. 17:16

https://www.youtube.com/watch?v=EkWI6Ru8lFQ&list=PLE0hRBClSk5Lcgv3c-I3PH-1LGkv96oYN&index=19

개념

  • facebook이 개발한 API를 위한 query language
  • client에게 필요한 것만 정확하게 요청할 수 있는 기능을 제공

 

RestAPI 방식과의 비교

✔️ RestAPI

  • 장점
    • 메소드와 URI를 조합해서 예측가능하고 일정한 정보와 작업을 요청할 수 있다.
    • 정보들을 읽고, 쓰고, 수정하고, 삭제할 수 있음
    • 받아야하는 형식이 일정한 경우에 많이 사용
    • 커스터마이징할때 좋음.
  • 단점
    • overfetching : 필요하지 않은 정보들까지 볼 수 있음. → 데이터 측면에서 소모가 많음.
    • underfetching : 필요한 데이터를 얻기 위해 요청을 여러번 보내야함.

✔️ GraphQL

  • 장점
    • body에 필요한 정보만 한번에 넣어서 서버에 요청할 수 있음
    • POST방식으로만 보낼 수 있지만 body에 class를 구성하는 방식에 따라 수정, 삭제 요청도 가능
  • 단점
    • 잘못된 요청 필터링이 어려움
    • 요청 방식이 복잡함 (필요한 모든 필드를 작성해야 하기 때문)

✨ 요약

RestAPI GraphQL
단순한 요청방식 복잡한 요청방식
복잡한 data 리턴 효율적인 데이터 리턴

'🐤 study > etc' 카테고리의 다른 글

Mac에서 Redis Cluster 구성 가이드: 실행/종료/노드상태 확인까지 (+ start/stop 스크립트)  (1) 2025.05.17
[VSCode] vscode에서 emmet 설정하는 법 / emmet 적용 안될때 (Mac)🛠  (0) 2022.06.20
[GIT] git 브랜치 전략 | git flow, github flow 차이  (0) 2022.06.19
    '🐤 study/etc' 카테고리의 다른 글
    • Mac에서 Redis Cluster 구성 가이드: 실행/종료/노드상태 확인까지 (+ start/stop 스크립트)
    • [VSCode] vscode에서 emmet 설정하는 법 / emmet 적용 안될때 (Mac)🛠
    • [GIT] git 브랜치 전략 | git flow, github flow 차이
    budtree
    budtree
    개발, 운동, 일상등의 글을 올립니다.

    티스토리툴바