PAGE TOP


Redis インストール編

2017年3月25日その他

最近、個人的なことかもしれませんが、RedisというWordをよくみるようになってきたので、少し、試してみることにしました。まずはインストールですが、その手順をメモしてみます。

まずは、Redisとは?

Redisは、メモリで処理を行うインメモリーデータベースであり、keyとvalueでデータを管理するという特徴があります。メモリに展開するので高速に処理ができるようです。用途としては、大量のデータをリアルタイムで処理しなければならない場合に強いようで、限定的な部分に使用するのが向いています。Instagram,Flickr,Tumblr、Twitter,Kickstarter,GitHub……その他、多くの海外WEBサービスでも使用されています。それぞれ、使用箇所は限定的のようです。日本では、あまりきかないので、あまり使われてないのではないかと推測します。サイバーエージェント公式エンジニアブログでは、速度を検証されたエンジニアの方が、評価を公開しています。読み込み・書き込みの速度比較をMySQLとで比較検証されたようで、書き込みは、MySQLよりも若干早く、一方で読み込みは、MySQLの約1/2ほどにり、かなり早いです。今後、すぐに広まるということはないかもしれませんが、徐々に使われていくかもしれません。

WindowsでRedisを使う

このRedisをローカル環境で起動したいと思い、Windows7にインストールを試しました。
公式サイトのダウンロードページの説明では、Redisプロジェクトの公式サポートはないとのことです。しかし、Microsoft Open Tech group が開発したWinodws用のRedisがあるということなのでそれをインストールてみます。今回は、Redis on Windows 3.2を利用することにしました。ダウンロードはGitHubより、Redis-x64-3.2.100.msiをインストールしました。手順としては、ダウンロードしたファイルを実行して、案内どおりに進めていきます。

「Add the Redis installation folder to the PATH enviroment variable.」のチェックボックスには、チェックをして環境変数を設定しておきましょう。今回なぜか、チェックしたはずなのに、パスがとおってなくて、後から自分でコントローラーパネルより設定しました。原因は不明です。

次に、メモリに制限をつけます。このあたりは、チェックを入れて、とりあえず、デフォルトである100 でOKします。あとは、そのまま進んでいけばFinishです。起動は、自動起動されるようなので、タスクマネージャーのサービスより確認して手動に変更することもできます。

確認するには、タスクマネージャーのサービスにRedisがあれば、しっかり起動しています。また、コマンドプロンプトより、任意の場所で、redis-server –version  で実行すれば、バージョン情報が帰ってきます。もし帰ってこない場合は、パスが通ってない可能性がありますので、確認してください。

あとは、それぞれの開発言語より接続ください。
xamppより接続する場合は、phpの拡張モジュールが必要なようで、php.iniに拡張する機能をします。

php.iniに追加

extension=php_igbinary.dll
extension=php_redis.dll

また、igbinary.dllとphp_redis.dllをダウンロードして、\xampp\php\ext にそれぞれ置いておく必要があります。
igbinaryのダウンロード先より入手
https://pecl.php.net/package/igbinary/1.1.1/windows
redisのダウンロード先より入手
http://windows.php.net/downloads/pecl/snaps/redis/2.2.5/
※ 新しいバージョンだと、php7に対応になるようで、xamppが古いと対応できないかもしれません。今回は、php5.6に対応できるものにしました。これにより、Predisクラスが利用できますので、Railsが利用可能になります。

仮想環境にRedisを使う

VirtualBoxとVagrantで過去に作った仮想環境にもRedisを入れてみました。
こちらは、公式サイトにも載っていますが、
ダウンロード・展開して、

$ wget http://download.redis.io/releases/redis-3.2.8.tar.gz
$ tar xzf redis-3.2.8.tar.gz
$ cd redis-3.2.8
$ make

Redisを起動します。

$ src/redis-server

また、この状態では、パスがとおっていないので、違う場所で実行できません。従って、パスを通しますが、
PATH=$PATH:/home/vagrant/redis-3.2.8/src とやるだけでもOKですが、

このままだと、Vagrantで起動させるたびにパスを通さないとだめなので、
home/vagrnat/.bash_profile にexportでパスを追加します。

# Redis
export PATH=$PATH:/home/vagrant/redis-3.2.8/src

これで、どこでも使えます。

まずは、なんらかのWEBアプリケーションに部分的に組み込んでみようと思います。
続く