Restful APIとGraphQLの違いは何ですか?!
2694 ワード
Restful APIとGraphQLの違い
1.GraphQL APIでは必要な情報のみ選択できます。
2.複数階層の情報を一度に受信することができる。
3.GraphQLは主に1つのendpointですべての要求を処理する。
GraphQLには欠点がありますか?
n+1問題は?
N+1 문제
性能に関する問題の一つであり、主にリレーショナル・データベースにおける一対のマルチリレーショナル・テーブルによる問題であるquery {
posts {
id
title
contents
author {...}
}
}
N + 1 문제
従って、N+1問題を解決するには、通常、3つのコンポーネントが必要である。
DataLoaderとは?
DataLoaderには2つの特徴があります。
1. batch
解決
n+1
の問題がbatchです.DataLoaderは、特定のデータを取得した各リクエストをbatchに送信します.すなわち、1回のリクエストを収集し、1回のリクエスト(クエリー)を手配し、リクエストの結果値を各リクエストに送信します.
const postsLoader = new DataLoader((author_ids) => getPostsByAuthorIds(author_ids));
postsLoader(1).then((posts) => console.log(posts);) // authorId 1에 해당하는 post들
postsLoader(2).then((posts) => console.log(posts);) // authorId 2에 해당하는 post들
postsLoader(3).then((posts) => console.log(posts);) // authorId 3에 해당하는 post들
// 위 작업이 한 번의 쿼리로 이루어진다.
2. cache
キャッシュ?
Reference
この問題について(Restful APIとGraphQLの違いは何ですか?!), 我々は、より多くの情報をここで見つけました https://velog.io/@minj9_6/Restful-API와-GraphQL-뭐시-다른데テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol