Apollo Server Lambda медленная производительность - PullRequest
2 голосов
/ 28 января 2020

Я использую Apollo Server Lambda для создания некоторых API, размещенных на AWS API Gateway и AWS Lambda. Но что я заметил, так это то, что спектакли очень медленные, когда у результата много полей. Что я делаю, так это запрос на получение некоторых документов из MongoDB, сам запрос выполняется около 200 мс, однако ответ от сервера Graph приходит через 2 секунды! Есть ли что-то, что я могу настроить на сервере apollo, чтобы оптимизировать это? Так я настроил сервер apollo

const app = new ApolloServer({
  schema: Schema,
  introspection: process.env.NODE_ENV !== "production" || true,
  playground: process.env.NODE_ENV !== "production" || true,
  context: async ({ context }) => {
    context.callbackWaitsForEmptyEventLoop = false;
    var dataloaderFactory = new MongooseDataloaderFactory();
    return { ...context, dataloaderFactory };
  },
  persistedQueries: {
    cache: new DynamoDBCache(dynamoDBClient, {
      tableName: process.env.CLIENT + "-" + process.env.NODE_ENV + "-Cache",
      partitionKeyName: "Hash",
      valueAttribute: "Query",
      ttlAttribute: "TTL",
      defaultTTL: 300
    })
  },
  dataSources: () => ({
    data: new Data()
  })
});
...