Tasuke HubLearn · Solve · Grow
#HTTP

HTTPキャッシュ実践【ETag/SWR/2025年】:速さと一貫性を両立する設計

ETag/If-None-Match、Cache-Control(max-age/immutable/swr)、条件付き要求、段階的キャッシュ、CDNとの連携、Next.js Route Handlers実装まで。動的ページでも体感速度を上げる実践レシピ。

時計のアイコン13 September, 2025
TH

Tasuke Hub管理人

東証プライム市場上場企業エンジニア

情報系修士卒業後、大手IT企業にてフルスタックエンジニアとして活躍。 Webアプリケーション開発からクラウドインフラ構築まで幅広い技術に精通し、 複数のプロジェクトでリードエンジニアを担当。 技術ブログやオープンソースへの貢献を通じて、日本のIT技術コミュニティに積極的に関わっている。

🎓情報系修士🏢東証プライム上場企業💻フルスタックエンジニア📝技術ブログ執筆者

まず押さえる3層

  1. ブラウザキャッシュ 2) CDN/エッジ 3) オリジン

ベストマッチ

最短で課題解決する一冊

この記事の内容と高い親和性が確認できたベストマッチです。早めにチェックしておきましょう。

ETagと条件付きGET

// app/api/items/[id]/route.ts
export async function GET(req: Request, { params }: { params: { id: string } }) {
  const item = await db.find(params.id);
  const etag = `W/"${item.version}"`;
  if (req.headers.get('if-none-match') === etag) return new Response(null, { status: 304 });
  return Response.json(item, { headers: { ETag: etag, 'Cache-Control': 'max-age=60, stale-while-revalidate=300' } });
}

さらに理解を深める参考書

関連記事と相性の良い実践ガイドです。手元に置いて反復しながら進めてみてください。

SWRの考え方(短期新鮮+裏で更新)

Cache-Control: max-age=60, stale-while-revalidate=300

60秒までは新鮮、期限切れでも5分はキャッシュを返しつつ裏で更新。


さらに理解を深める参考書

関連記事と相性の良い実践ガイドです。手元に置いて反復しながら進めてみてください。

静的/準動的/動的の切り分け

  • 静的: immutable 長期キャッシュ
  • 準動的: max-age + swr で高速化
  • 動的: no-store だが一部断片はキャッシュ化(段階的キャッシュ)

さらに理解を深める参考書

関連記事と相性の良い実践ガイドです。手元に置いて反復しながら進めてみてください。

段階的キャッシュ(HTMLとデータ)

  • HTMLは短期キャッシュ、データAPIをSWRで分離
  • OGP/メタなど変化の少ない要素は長期化

さらに理解を深める参考書

関連記事と相性の良い実践ガイドです。手元に置いて反復しながら進めてみてください。

CDNとの連携

  • パス/ヘッダでキャッシュキーを明確化
  • 認証付きはパブリックキャッシュ不可(Cookieバインドor鍵付き)

さらに理解を深める参考書

関連記事と相性の良い実践ガイドです。手元に置いて反復しながら進めてみてください。

まとめ

「ETag+SWR+段階的キャッシュ」を組み合わせれば、整合性を維持しつつ体感速度を大きく改善できます。

さらに理解を深める参考書

関連記事と相性の良い実践ガイドです。手元に置いて反復しながら進めてみてください。

この記事をシェア

続けて読みたい記事

編集部がピックアップした関連記事で学びを広げましょう。

#HTTP

HTTPキャッシュの落とし穴【2025年版】:認証・個別化・キー設計を完全理解

2025/9/13
#HTTP

HTTP/REST超入門【2025年版】:メソッド/ステータス/キャッシュの基本

2025/9/13
#Web Performance

INP最適化決定版【2025年版】:反応性を根本から改善する実践テクニック

2025/9/13
#AI

【2025年最新】LLMファインチューニング効率化ガイド:コスト削減と精度向上を両立する実践テクニック

2025/11/27
#React

React Hooks中級【パフォーマンス最適化/2025年】:再レンダ抑制と入力応答性の実践

2025/9/13
#RAG

【2025年版】エッジRAGアーキテクチャ設計ガイド

2025/11/23