DEVELOPER BLOG

開発者ブログ

HOME > 開発者ブログ > 【Redis入門】Redisをキャッシュサーバとして使う - PrismScaler

【Redis入門】Redisをキャッシュサーバとして使う - PrismScaler

1. はじめに

こんにちは!株式会社Definerの阪本です!
今回は、Redisをキャッシュサーバとして使う方法をご紹介したいと思います。

2. 目的・ユースケース

この記事では、Redisをキャッシュサーバとして使用したいときに、参考になる情報やプラクティスをまとめています。

3. 基本概念の復習

まずは、基本の概念をおさらいします。
 
・キャッシュサーバ
顧客情報や購入履歴等のサーバとクライアントで頻繁にやり取りされるようなデータについて、サーバやデータベースなどの代替としてデータ提供する機能です。
これによって、サーバやデータベースの負荷軽減や、トラフィックの軽減が可能となります。
 
・Redisとは
シングルスレッドで動作するキャッシュエンジンであり、メモリ上で動作するインメモリデータベースでもあります。
もっと具体的に言うと、NoSQL型でのデータベースのことで、KVS(キーバリューストア)として動作します。
 
それでは早速、Redisを使ってみます。

4. Redisをキャッシュとして使ってみる

早速、Redisをキャッシュとして使ってみます。
今回使用している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」について

・ PrismScalerは、開発・運用を要さずにたった3ステップで、AWSやAzure、GCPなどのマルチクラウド基盤構築を実現するWebサービスです。
・ クラウド基盤にまつわる「自動構築」「自動監視」「問題検知」「構成可視化」などの効率化を実現し、クラウドエンジニア、SRE/DevOpsエンジニアが行う泥臭く大変な作業を肩代わりするソリューションです。
・ クラウド基盤構築/クラウド移行や、クラウドの保守運用・コスト最適化など幅広い利用シーンを想定しており、IaaSやPaaSを適切に組み合わせた数百を超える高品質な汎用クラウド基盤を容易に実現できます。
 

7. お問合せ

本記事では、入門編として有益な情報を無料公開しています。ご相談やお問い合わせは「株式会社Definer」へ。

8. Definerに関して。

・ Definer Incは、ITの上流から下流まで一気通貫のワンストップソリューションをご提供しております。
・ AIやクラウドのITインフラなど、先進的なIT技術のコンサルティングから要件定義 / 設計開発 / 実装、保守運用に至るまでの統合的な支援にコミットしています。
・ DevOpsとCI/CDコンサルティングにより「少ないエンジニアで事業が成長する仕組みづくり」「エンジニアが喜ぶ、採用しやすい環境づくり」「高速なアジャイル開発環境」を実現しています。
・ また、自社プロダクトとしてPrismScalerを展開しております。PrismScalerは、AWS、Azure、GCPなどのマルチクラウド / ITインフラの高品質かつ迅速な、「自動構築」「自動監視」「問題検知」「構成可視化」を実現します。