メインコンテンツへスキップ
ツール・製品

GraphQL DataLoader

GraphQL DataLoader

GraphQL等のデータ取得層で、複数の取得をまとめ、同じキーの取得をメモ化するために使うライブラリ。バックエンドへの細かな要求を減らすが、認可や顧客間の分離は別途設計する。

異なる利用者で同じインスタンスを共有すると、メモ化した値が権限境界を越えて使われるおそれがあります。利用者・要求の文脈ごとに寿命を設計し、取得処理でも認可します。N+1問題の改善と、受け付ける操作全体のコスト制限は別に必要です。

  • 初心者向けには「細かい取得をまとめて重複を減らす道具」
  • キャッシュの寿命と利用者の境界を合わせる
  • 効率化しても認可と負荷上限を省略しない
← 用語集一覧に戻る
ESC