1. はじめに
こんにちは!株式会社Definerの阪本です!
今回は、Redisをキャッシュサーバとして使う方法をご紹介したいと思います。
今回は、Redisをキャッシュサーバとして使う方法をご紹介したいと思います。
2. 目的・ユースケース
この記事では、Redisをキャッシュサーバとして使用したいときに、参考になる情報やプラクティスをまとめています。
3. 基本概念の復習
まずは、基本の概念をおさらいします。
・キャッシュサーバ
顧客情報や購入履歴等のサーバとクライアントで頻繁にやり取りされるようなデータについて、サーバやデータベースなどの代替としてデータ提供する機能です。
これによって、サーバやデータベースの負荷軽減や、トラフィックの軽減が可能となります。
・Redisとは
シングルスレッドで動作するキャッシュエンジンであり、メモリ上で動作するインメモリデータベースでもあります。
もっと具体的に言うと、NoSQL型でのデータベースのことで、KVS(キーバリューストア)として動作します。
それでは早速、Redisを使ってみます。
・キャッシュサーバ
顧客情報や購入履歴等のサーバとクライアントで頻繁にやり取りされるようなデータについて、サーバやデータベースなどの代替としてデータ提供する機能です。
これによって、サーバやデータベースの負荷軽減や、トラフィックの軽減が可能となります。
・Redisとは
シングルスレッドで動作するキャッシュエンジンであり、メモリ上で動作するインメモリデータベースでもあります。
もっと具体的に言うと、NoSQL型でのデータベースのことで、KVS(キーバリューストア)として動作します。
それでは早速、Redisを使ってみます。
4. Redisをキャッシュとして使ってみる
早速、Redisをキャッシュとして使ってみます。
今回使用しているOSは、ubuntu20.04です。
①Redisのインストール
以下コマンドでインストールします。
redis-server(Redis)やredis-cli(コマンドライン)などが同時にインストールされます。
②redis-pyのインストール
PythonでRedisを使えるようにするため、インターフェースであるredis-pyもインストールします。
これで、セットアップは完了です
今回使用しているOSは、ubuntu20.04です。
①Redisのインストール
以下コマンドでインストールします。
redis-server(Redis)やredis-cli(コマンドライン)などが同時にインストールされます。
②redis-pyのインストール
PythonでRedisを使えるようにするため、インターフェースであるredis-pyもインストールします。
これで、セットアップは完了です
## Redisのインストール
sudo add-apt-repository ppa:redislabs/redis
sudo apt-get update
sudo apt-get install redis
## Redis CLIのバージョン確認(インストール確認)
redis-cli -v
## Redisのバージョン確認(インストール確認)
redis-server -v
## Redis-pyのインストール
pip install redis
③最後に、Redisの動作確認をします。
以下コードを使用しました。
「set」でRedisに値をセットし、「get」で値を取得しています。
値を取得できることが確認できます!
import redis
cache = redis.Redis(
host='localhost',
port=6379,
db=0
)
# Redisに値をセット
cache.set('key', 'test')
# Redisから値を取得
response = cache.get('key')
print(response)
cache.close()
## testが表示される
5. 引用・参考記事
6. 独自ソリューション「PrismScaler」について
7. お問合せ
本記事では、入門編として有益な情報を無料公開しています。ご相談やお問い合わせは「株式会社Definer」へ。
8. Definerに関して。
・ Definer Incは、ITの上流から下流まで一気通貫のワンストップソリューションをご提供しております。
・ AIやクラウドのITインフラなど、先進的なIT技術のコンサルティングから要件定義 / 設計開発 / 実装、保守運用に至るまでの統合的な支援にコミットしています。
・ DevOpsとCI/CDコンサルティングにより「少ないエンジニアで事業が成長する仕組みづくり」「エンジニアが喜ぶ、採用しやすい環境づくり」「高速なアジャイル開発環境」を実現しています。
・ また、自社プロダクトとしてPrismScalerを展開しております。PrismScalerは、AWS、Azure、GCPなどのマルチクラウド / ITインフラの高品質かつ迅速な、「自動構築」「自動監視」「問題検知」「構成可視化」を実現します。
・ AIやクラウドのITインフラなど、先進的なIT技術のコンサルティングから要件定義 / 設計開発 / 実装、保守運用に至るまでの統合的な支援にコミットしています。
・ DevOpsとCI/CDコンサルティングにより「少ないエンジニアで事業が成長する仕組みづくり」「エンジニアが喜ぶ、採用しやすい環境づくり」「高速なアジャイル開発環境」を実現しています。
・ また、自社プロダクトとしてPrismScalerを展開しております。PrismScalerは、AWS、Azure、GCPなどのマルチクラウド / ITインフラの高品質かつ迅速な、「自動構築」「自動監視」「問題検知」「構成可視化」を実現します。