IT105 [GraphQL] SDL (Schema Definition Language) 이번 포스팅에서는 GraphQL의 query language인 SDL에 대해 알아보려고 한다. GraphQL의 SDL은 간단하고 직관적이다. 그럼 실제 예시를 하나씩 보면서 확인하도록 하자.type Person { name: String! age: Int! }위의 예시는 Person 타입을 표현하는 SDL이다. Person 타입에는 String 타입을 가진 name 필드와 Int 타입을 가진 age 필드가 존재한다.(그리고 각 필드 뒤에 '!' 는 required 표시한다.)type Post { title: String! author: Person! }그리고 다음은 Post 타입을 표현한다. Person 타입과 비슷하긴 하지만 조금 다른 점은 내부 필드의 타입이 Custom하게 만든 Person 이라는 .. 2019. 3. 16. [GraphQL] Architecture Pattern GraphQL을 접목해서 사용하는 방식은 시나리오에 따라 다양하다. 그렇지만 이번 포스팅에서는 일반적으로 널리 사용되는 3가지 아키텍쳐 패턴에 대해 알아보려고 한다. 그림 1. GraphQL server with a connected database 그림 1은 첫 번째 GraphQL 사용 패턴을 보여준다. 웹 서버에 GraphQL을 올려서 클라이언트의 요청을 받는 방식이다. 즉, 서버에서는 클라이언트의 Query 요청을 받아 Query의 페이로드를 읽고 관련 정보를 데이터베이스로부터 가져온다. 그림 2. GraphQL layer that integrates existing systems 그림 2는 GraphQL을 기존의 레거시 시스템과 연동하는 방식이다. 즉, GraphQL이 클라이언트로 부터 Query.. 2019. 3. 16. [GraphQL] Overview GraphQL은 빠르게 변화하는 Web 환경에 대응하고자 개발된 query language이다. 특히나 이전에는 (현재에도 많이 사용되고 있지만) 통신 표준으로 REST API가 많이 사용되고 있지만 최근 REST API가 가진 한계점으로 인해 점차 GraphQL이 각광을 받고 있다. 실제로 GraphQL 개발을 했던 (현재는 주체가 GraphQL Foundation으로 넘어갔지만) Facebook 외에도 Github, Pinterest 등 많은 서비스가 GraphQL을 사용하고 있다.그렇다면 GraphQL이 무엇이기에 많이 사용되고 있는지 알아보도록 하자. GraphQL은 API를 구성하는 query language로 클라이언트 입장에서 정확히 필요한 데이터만 요청 할 수 있게 한다.그런데 생각해보면 .. 2019. 3. 15. [Netflix] EVCache - Intro 이번 포스팅에서는 Netflix에서 오래전에 개발한 EVCache에 대해 조금 자세히 알아보려고 한다. EVCache는 이전 포스팅 (https://timewizhan.tistory.com/entry/Netflix-Distributed-Inmemory-Datastore?category=1026894)에서 간략히 살펴보았듯이 클라우드 환경에서 사용하는 Memcache 기반의 분산 캐시이다. 물론 캐시를 사용하는 목적 자체가 자주 사용하는 데이터를 더 빠르게 가져오는 용도이지만 Netflix에서는 어떤 배경을 가지고 개발을 시작했는지 알아보도록 하자. Netflix 내부적으로 아래와 같은 요구 사항이 존재했다.- 빠른 응답 시간 필요- 세션 기반 앱을 Stateless로 저장 필요- NoSQL 사용 필요그래.. 2019. 3. 11. 이전 1 ··· 16 17 18 19 20 21 22 ··· 27 다음