아폴로 몽구스 플러그인
apollo-mongoose-plugin
를 소개하겠습니다.It's a plugin to add mongoose query information on the Apollo GraphQL response extensions node.
이 플러그인이 필요한 이유는 무엇입니까?
apollo-mongoose-plugin
의 목적은 중복되거나 길거나 일괄 처리되지 않은 MongoDB 쿼리를 식별하는 데 도움을 주는 것입니다.GraphQL 덕분에 주문형으로 연결된 데이터를 로드하는 필드 확인자를 정말 쉽게 만들 수 있습니다.
그러나 작은 데이터 조각으로 작업하면 큰 그림을 놓치고 성능 문제로 이어질 수 있습니다.
이 플러그인을 사용하면 전역 성능과 Mongo 쿼리의 실행 계획을 계속 확인할 수 있습니다.
어떻게 작동합니까?
라이브러리는 2개의 플러그인으로 구성되어 있습니다. 한 번은 Mongoose에서 쿼리 정보를 수집하고 두 번째는 수집된 쿼리를 Apollo GraphQL 응답에 추가합니다.
용법
npm install apollo-mongoose-plugin
로 플러그인을 설치한 다음 mongoCollectorPlugin
를 Mongoose에 등록하고 ApolloMongoosePlugin
를 ApolloServer
에 등록합니다.import {
ApolloMongoosePlugin,
mongoCollectorPlugin,
} from 'apollo-mongoose-plugin';
import { ApolloServer } from 'apollo-server';
import mongoose from 'mongoose';
// first: register mongoose query collector plugin
// 🔔 Make sure you are registering the mongoose plugin
// before you are creating mongoose models
mongoose.plugin(mongoCollectorPlugin);
// then: register apollo plugin
const server = new ApolloServer({
// ...schema, dataSources
plugins: [new ApolloMongoosePlugin()],
});
성능 문제를 어떻게 처리할 수 있습니까?
나는 이 주제에 대한 전문가는 아니지만 내 경험을 통해 적어도 다음 몇 가지 팁을 사용했음을 인정해야 합니다.
Dataloader
를 사용하여 호출된 그룹을 하나로 묶습니다. Reference
이 문제에 관하여(아폴로 몽구스 플러그인), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/skauffmann/apollo-mongoose-plugin-2j7i텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)