キャッシュ

読み

きゃっしゅ

意味

  • 頻繁にアクセスされるデータを高速なストレージ(メモリなど)に一時的に保存し次回以降のアクセスを高速化する技術
  • CPUキャッシュ・ブラウザキャッシュ・CDNキャッシュ・アプリケーションキャッシュなど階層的に存在しパフォーマンス最適化の基本戦略
  • キャッシュヒット率やTTL(有効期限)・キャッシュ無効化戦略など適切な管理が必要で古いデータを返すリスクもある

比喩

よく読む本を手の届く場所に置いておくようなもの。本棚まで取りに行かなくてもすぐに読めて時間を節約できる。

語源

cache = 隠し場所・貯蔵庫。フランス語のcacher(隠す)が語源

例文

  • Redisでデータベースクエリ結果をキャッシュしレスポンスタイムを100ms から 5ms に短縮した
  • CDNでウェブサイトの静的ファイルをキャッシュし世界中のユーザーに低レイテンシでコンテンツを配信している
  • ブラウザキャッシュを活用してCache-Controlヘッダーで有効期限を設定しリピート訪問時のページ表示を高速化した

よくある勘違い

  • キャッシュを永続的なデータ保存だと思うこと → キャッシュは揮発性で元データが更新されたら無効化される
  • キャッシュすれば常に高速化すると思うこと → キャッシュヒット率が低いと逆にオーバーヘッドになる
  • キャッシュ無効化を考えずに実装すること → 古いデータが返され続けるバグの原因になる

関連用語