중요
최신의 정확한 정보는 항상 MongoDB Atlas 와 WunderGraph 의 공식문서를 참조하세요. 구체적인 단계는 프로젝트 의 세부 정보와 사용된 기술에 따라 달라질 수 있습니다.
WunderGraph 는 광범위한 오픈 소스 도구 및 SDK가 장착된 포괄적인 개발자 플랫폼입니다.
이러한 도구 중 하나는 프론트엔드용 백엔드(BFF) 프레임워크입니다. 이 BFF 프레임워크는 프로덕션 환경에 추가할 수 있는 강력한 사양 호환 서버 프레임워크 입니다. 이 프레임워크 모든 소스의 데이터를 통합할 수 있습니다. 여기에는 MongoDB Atlas 의 데이터가 포함됩니다. 자세한 내용은 Atlas 용 WunderGraph Docs 페이지를 참조하세요. GraphQL Federation을 사용할 계획이라면 WunderGraph Cosmo를 살펴보세요.
WunderGraph로 마이그레이션
WunderGraph BFF는 데이터를 번들로 제공하고 프론트엔드 프레임워크 를 위한 유형 안전 클라이언트를 생성하는 오픈 소스 게이트웨이입니다. 또한 후크를 사용하여 비즈니스 로직을 추가하거나 사용자 지정 GraphQL 리졸버 를 사용하여 클라이언트를 데이터베이스에서 분리할 수 있습니다.
다음은 GraphQL 호스트를 Atlas App Services에서 WunderGraph로 마이그레이션하는 방법에 대한 개요입니다. 구체적인 단계는 프로젝트의 세부 정보와 사용된 기술에 따라 달라질 수 있습니다.
처음부터 시작하는 경우 MongoDB / Atlas 데이터 소스 설명서 를 따르세요. 자세한 내용은 Atlas 용 WunderGraph Docs 페이지를 참조하세요.
GraphQL Federation을 사용할 계획이라면 WunderGraph Cosmo를 살펴보세요.
GraphiQL UI로 데이터 찾아보기
WunderGraph 서버를 실행하고 쿼리 작업을 추가한 후에는 GraphiQL 사용자 인터페이스를 사용하여 GraphQL API를 통해 Atlas 데이터를 탐색할 수 있습니다. 이는 앱을 개발 중일 때 유용할 수 있습니다. 프로덕션 앱의 경우 WunderGraph의 JSON-RPC 인터페이스를 사용하는 것이 좋습니다(다음 단계 참조).
WunderGraph 서버가 실행 중인 상태에서
http://localhost:9991/graphql로 이동합니다.GraphiQL 사용자 인터페이스에 다음 쿼리를 추가합니다.
query Users { db_findManyusers { id name email } } 재생 버튼을 클릭합니다.
프로덕션에 WunderGraph의 JSON-RPC 인터페이스 사용
GraphiQL은 개발에는 유용하지만 프로덕션 환경에서는 WunderGraph의 JSON-RPC 인터페이스를 사용하여 Atlas 데이터와 상호 작용하는 것을 고려해야 합니다.
즉, WunderGraph는 GraphQL 작업을 호출할 수 있는 JSON-RPC 엔드포인트로 컴파일합니다.
wunderctl up 를 실행한 후 WunderGraph는 .wundergraph/operations 디렉토리에서 *.graphql 파일을 확인하고 처리합니다. 이 작업을 수행하려면 각 파일에 정확히 하나의 GraphQL 작업이 포함되어야 합니다.
각 파일은 JSON-RPC 엔드포인트로 컴파일됩니다. 엔드포인트의 이름은 파일 이름에 따라 결정됩니다.
다음은 JSON-RPC API 쿼리의 예시입니다.
curl http://localhost:9991/operations/Users
다음 단계
GraphQL Federation을 위한 WunderGraph Cosmo
WunderGraph 코스모 Docs 여러 GraphQL API를 결합하여 통합 그래프 생성하는 분산된 GraphQL 아키텍처를 빌드 방법을 학습 보세요.
Cosmo를 사용하면 팀과 조직이 GraphQL 아키텍처를 쉽게 관리하고 확장할 수 있습니다. 구성 검사를 통해 중단 없이 빠르게 반복할 수 있습니다.
WunderGraph Cosmo는 로컬, 온프레미스 또는 클라우드에서 관리형 서비스로 쉽게 실행할 수 있습니다. Cosmo는 배터리가 포함된 솔루션으로, 전체 플랫폼의 라우팅부터 분석에 이르기까지 모든 것을 포괄합니다.
Cosmo는 모놀리식 GraphQL API와 구독을 포함한 Federation v1 및 v2 를 지원합니다.