본문 바로가기

IT/Web4

[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.
Golang Web Framework 비교 Golang의 Web Framework에 대해 비교해보려고 합니다.Golang이 기본 라이브러리로 http를 지원하긴 하지만, 다양한 Web Service를 구축하기 위해서는 Web Framework을 사용하는게 낫다고 생각합니다.(물론 모든 기능이 필요 없을 수도 있어서 만들어도 되긴 합니다.) Golang으로 개발한 Web Framework는 종류가 정말 많습니다.- Revel- Iris- Echo- Gin- Buffalo- Gocraft- Gorilla- 등등... 그래서 전체적으로 Web Framework를 파악하기 위해서 여러 사이트를 뒤져보았습니다. 먼저, https://github.com/najeira/go-frameworks-benchmark 에서 benchmarking 테스트 한 것을 보.. 2018. 8. 6.