Redis という単語をバックエンドまわりで見かけると、「なんか難しそう」「データベースっぽい」「でもキャッシュとも書いてある」と、少し正体が分かりにくいと思います。
先にひとことで言うと、Redis は サーバー側で使う、とても高速なデータ置き場 です。
Redis は「キャッシュそのもの」ではなく、キャッシュやセッション管理、レート制限などに使える高速なサーバー側ツールです。
Redis の公式サイトはある?
あります。公式サイトは Redis です。
今回の記事用に、2026年3月17日時点のトップページをスクリーンショットしておきました。

トップでも「速さ」をかなり前面に出していて、Redis がパフォーマンス寄りのプロダクトだと分かります。
Redis って何?
Redis は、主に メモリ上で高速に読み書きするためのデータストア です。
普通のデータベースとしてよく名前が出る MySQL や PostgreSQL は、「大事な本番データをきちんと保存する倉庫」に向いています。
一方 Redis は、「今すぐ取り出したい情報を、すぐ近くに置いておく机の上」に近いです。
だから Redis は、
- すごく速い
- 一時データに向いている
- アプリの応答速度を上げやすい
という特徴があります。
Redis はサーバー側の話?
はい、基本は サーバー側の話 です。
ブラウザから直接 Redis を触るものではなく、よくある構成はこうです。
ブラウザ → APIサーバー → Redis
↓
DB
たとえばユーザーがページを開いたとき、サーバー側では次のような流れになります。
- ブラウザが API にアクセスする
- API サーバーが Redis を見る
- すでにデータがあれば Redis から即返す
- なければ DB から取得して、Redis に一時保存してから返す
このように、Redis はバックエンドの中で使われることがほとんどです。
キャッシュとは違うの?
ここが一番ひっかかりやすいポイントです。
結論から言うと、違うというより関係が違います。
- キャッシュ = 目的や仕組み
- Redis = それを実現する道具のひとつ
つまり、「よく使うデータを一時保存して速くする」という考え方がキャッシュで、その保存先として Redis がよく使われます。
Redis はキャッシュに使える代表的な道具ですが、Redis = キャッシュそのもの、ではありません。
たとえば冷蔵庫でたとえると、
- キャッシュ = すぐ飲むものを冷やしておく考え方
- Redis = そのための冷蔵庫
というイメージです。
Redis は何に使うの?
Redis は「速く取り出したい一時データ」に向いています。代表的なのはこのあたりです。
- キャッシュ
- ログインセッション管理
- API のレート制限
- ジョブキュー
- カウントやランキング
1. キャッシュ
一番よくある用途です。
商品情報や記事一覧など、毎回 DB から引くと重いものを Redis に一時保存しておくと、表示が速くなります。
2. セッション管理
「この人はログイン中」「買い物かごに何が入っている」といった短期的な状態管理にも向いています。
3. レート制限
API を叩きすぎるユーザーを制限するときにもよく使われます。
たとえば「1分間に10回まで」のような制御は、Redis と相性が良いです。
4. キュー
「今すぐ返事を返しつつ、重い処理はあとで実行する」という構成でも使われます。
メール送信、画像変換、バッチ処理などを後ろで回すときに便利です。
普通の DB とどう違う?
ざっくり分けると、役割が違います。
MySQL / PostgreSQL 向き
- 注文データ
- 会員情報
- 売上データ
- 長く残すべき正式データ
Redis 向き
- すぐ消えてもよい一時データ
- 毎回 DB から取ると重いデータ
- 短時間だけ必要な状態情報
Redis は便利ですが、「本番データを全部 Redis に置けばよい」という話ではありません。長期保存の主役は普通の DB で、Redis は高速補助として使うのが基本です。
Redis 以外の選択肢は?
あります。Redis は有名ですが、唯一の答えではありません。
1. アプリ内メモリ
アプリ自身の変数やメモリに持つ方法です。
- 最速
- 実装が簡単
- ただし再起動で消える
- サーバーが複数台になると同期しにくい
小さなアプリなら、最初はこれで足りることもあります。
2. Memcached
Redis よりシンプルな、キャッシュ寄りの選択肢です。
- 軽い
- シンプル
- ただし Redis より機能が少ない
「単純なキャッシュだけ欲しい」なら候補になります。
3. MySQL / PostgreSQL
普通の DB にそのまま保存する方法です。
- 永続化に強い
- データ管理がしやすい
- でも高速な一時データ置き場としては Redis より重いことが多い
4. CDN キャッシュ
Cloudflare などでページや画像を外側でキャッシュする方法です。
- Webサイト表示の高速化には強い
- 静的ファイル配信に向いている
- ただしアプリ内部の状態管理には向かない
5. フレームワーク内蔵のキャッシュ
フレームワークが持っているキャッシュ機能をそのまま使う方法です。
小規模ならこれで十分なこともあります。
じゃあ Redis はどんなときに必要?
Redis が欲しくなりやすいのは、たとえばこういうときです。
- API が少し重くなってきた
- 毎回同じ DB クエリを投げている
- ログイン状態を複数サーバーで共有したい
- レート制限を入れたい
- ジョブ処理やキューを安定して回したい
逆に、次のような段階では必須ではありません。
- 小さい個人開発
- 単一サーバーで十分
- 同時アクセスが少ない
- キャッシュしなくても速度に困っていない
つまり Redis は、「最初から必須のもの」というより、アプリの成長に合わせて欲しくなる高速化パーツ と考えると分かりやすいです。
初心者向けに一言でまとめると
Redis は、
- サーバー側で使う
- とても速い
- 一時データや高速化に強い
- キャッシュ、セッション、レート制限、キューでよく使う
という道具です。
「キャッシュと違うの?」で混乱しやすいですが、そこは
キャッシュは考え方、Redis はそれを実現する手段のひとつ と覚えておけば大きくズレません。
まとめ
Redis は、バックエンドでよく出てくるわりに、最初は少し正体がつかみにくい技術です。
ただ、理解の入口はそこまで難しくありません。
Redis は「サーバー側で使う高速な一時データ置き場」です。DB の代わりというより、DB を助ける高速補助パーツだと考えるとかなり分かりやすいです。
もしバックエンドの会話で Redis 入れようか と出てきたら、だいたいは
- 速くしたい
- 一時データを持ちたい
- 状態管理を楽にしたい
このどれかをやりたい場面だと思って大きく外れません。