
DGS: NETFLIX가 스프링 부트로 대용량 트래픽을 처리하는 방법
Burger
Netflix가 REST 대신 선택한 DGS! 실제로 Netflix가 대용량 트래픽을 처리하기 위해 사용하고 있는 프레임워크로 Spring Boot에서 GraphQL을 쉽고 강력하게 활용하는 방법을 배워봅시다! 🔥
초급
GraphQL, Spring Boot, netflix-dgs
GraphQL
Spring Boot GraphQL
Node.js GraphQL
REST API의 문제점에 대해 고민해보신 적 있으신가요?
알게 모르게 안고갔던 문제점들을 해결해줄 기술을 소개합니다! 😄
우리에게 너무나 익숙한 REST API는 문제가 있지는 않을까요? 🤔
요청에 불필요한 데이터가 포함된다던지 (오버페칭)
또는 한 번의 요청으로 필요한 데이터를 다 가져오지 못한다던지 (언더페칭)
또는 엔드포인트별 다른 필드 네이밍으로 혼란을 겪는다던지
또는 API 문서화에 많은 시간을 들인다던지
REST API에는 우리에게 너무 당연하지만 다시 생각해보면,
이런 문제점들은 알게 모르게 우리의 개발속도를 지연시키고 있습니다.
GraphQL은 오버페칭, 언더페칭, 동일한 데이터의 다른 네이밍, 문서화 같은 문제를 깔끔하게 해결할 수 있는 기술입니다.
물론 GraphQL 만이 가지고 있는 또다른 문제들이 있기는 합니다.
예를 들어 N+1, 파일 전송, 높은 학습곡선 등...
하지만 이런 문제점들은 GraphQL 커뮤니티가 성숙해지고, 많은 기업에서 활용함에 따라 해결되고 개선되어가고 있습니다.
대표적으로 Apollo나 Netflix DGS 라이브러리를 사용하면 많은 문제점들을 해결할 수 있습니다.
이 강의에서는 프론트엔드와 백엔드의 관점에서 GraphQL의 기본적인 사용법을 모두 알아가는 과정을 포함하고 있습니다.
이 섹션에서는 GraphQL이 어떻게, 왜 만들어졌는지를 이해하고, 어떤 특징들을 가졌는지 알아봅니다.
이 섹션에서는 GraphQL 클라이언트 도구인 Altair를 설치하고, 기본적인 사용방법을 알아봅니다.
그리고 기본 문법들을 알아보고, 이 도구를 통해 실습을 진행합니다.
이 섹션에서는 GraphQL 서버의 구동 방식과 문법같은 기본 이론들을 알아보고, 실제로 서버를 구현하는 실습을 진행합니다.
실습은 Node.js와 Spring Boot 두가지 프레임워크로 진행합니다.
사용하시는 프레임워크에 맞게 수강해주시면 됩니다.
이 섹션에서는 이전 섹션에서 구현한 GraphQL 서버와 react로 개발한 웹페이지를 연동해서 직접 사용해보는 실습을 진행합니다.
여기에 사용된 웹 프로젝트는 미리 구현되어서 github에 배포되어있습니다.
이 프로젝트를 클론받아 사용하시기만 하면 됩니다.
실제로 Netflix에서는 GraphQL을 Spring Boot의 프레임워크로 만들어 사용하고있습니다.
이 기술의 이름은 Netflix DGS입니다.
Spring Boot에서 GraphQL을 사용하실 분들이라면 GraphQL강의를 수강 후 DGS 강의도 수강하신다면
GraphQL을 2배 더 효율적으로 사용하실 수 있을거라 장답합니다!
운영 체제 및 버전(OS): macOS
사용 도구: Altair GraphQL Client, vscode, intelliJ
github를 통해 웹 프론트(react), Node.js 서버, Spring Boot 서버(kotlin, java) 를 배포해놨습니다. 언제든지 받아서 사용해보실 수 있습니다!
API관련 기본적인 지식이 있으시면 좋습니다.
백엔드 실습에 관심이 있으신 분들은 Node.js나 Spring Boot를 기본적인 다루실 수 있으면 좋습니다.
강의 수강 중 불편하거나 개선점이 있으시다면 언제든 수강평이나 문의 남겨주세요!
학습 대상은
누구일까요?
GraphQL 을 배우고싶은 분
새로운 기술을 배우고 싶은 분
1,786
명
수강생
50
개
수강평
46
개
답변
4.8
점
강의 평점
3
개
강의
AWS Certificated Professional 및 Associate 다수 보유
현 스타트업 CTO
전체
31개 ∙ (2시간 48분)
전체
21개
무료
지식공유자님의 다른 강의를 만나보세요!
같은 분야의 다른 강의를 만나보세요!