CentOSでRedisサーバを使う

CentOSでRedisサーバを使う

Linux(FreeBSD)CentOSでRedisサーバを使う

冗長化した Web サーバなどで、セッションの管理や、セッションや特定のユーザーに紐付く一時データを管理するのに memcache を使う場面は多いと思います。その memcache の中でも主流なのが memcached ですが、最近では redis の言葉をよく聞くようになりました。下記のブログ記事でもわかる通り、速度面ではかなりの評価のようです。

redis、それは危険なほどのスピード

今回は、手元の VMware にある CentOS 6.3(64bit)環境のインストール手順と設定についてまとめておきたいと思います。phpredis.so も提供されているので、PHP との連携もすぐにできちゃいます。Windows 上で redis サーバを立ち上げる方法もありますが、コードを書くのは Windows、Web サーバやその他ミドルウェアは VMware 上の Linux というのが私の中では一番楽です。実際に運用する環境は Linux ですしね。

ただ、XAMPP を使って開発している人も多いかもしれませんので、Windows 上に redis サーバを立ち上げて PHP と連携する方法も次回書いておきたいと思います。

RedisのLinuxへのインストール手順

yum でも redis サーバとクライアントのインストールはできるかもしれませんが、今回はソースからインストールを行います。最新版のバージョン 2.6.2 を取得して、make するだけでインストールは完了です。

$ cd /usr/local/src

$ wget https://redis.googlecode.com/files/redis-2.6.2.tar.gz

$ tar xvzf redis-2.6.2.tar.gz

$ cd redis-2.6.2

$ make && make install

次に設定をします。以前は redis のサイトの Installation ページに詳しく設定内容が書いてあったと思うのですが、今はなくなってしまっていますね。

redis 用の設定ファイルを配備する /etc/redis と、/var/redis のディレクトリを作成します。その後、用意されている初期ファイルを、作成したディレクトリにコピーします。

$ mkdir /etc/redis

$ mkdir -p /var/redis/6379

$ cp utils/redis_init_script /etc/init.d/redis_6379

$ cp redis.conf /etc/redis/6379.conf

コピーが完了したら、まずは redis サーバの設定ファイルを調整します。編集部分だけ抜粋して書いておきます。

$ vi /etc/redis/6379.conf

#daemonize no
daemonize yes

#pidfile /var/run/redis.pid
pidfile /var/run/redis_6379.pid

#logfile stdout
logfile /var/log/redis_6379.log

#dir ./
dir /var/redis/6379

次にサービスの設定をします。chkconfig で管理できるように起動スクリプトを調整します。

$ vi /etc/init.d/redis_6379

# chkconfig: - 58 74
# description: redis_6379 is the redis daemon.

chkconfig でサービスの登録をして、起動確認と自動起動の設定をします。

$ chkconfig --add redis_6379

$ chkconfig redis_6379 on

$ /etc/init.d/redis_6379 start

$ netstat -an | grep 6379

起動に問題がなければ実際に動作確認をしてみます。まずは定番の、foo というキーに bar という値を設定してみます。そして、foo の中身を確認して、bar が取得できることを確認します。また、f から始まるキーを検索して foo が見付かることも確認してみます。他にもリストを使う機会も多くなると思いますが、詳しくはコマンドリファレンスを見るようにしましょう。

Command reference – Redis

$ redis-cli -p 6379 set foo bar

OK

$ redis-cli -p 6379 get foo

"bar" 

$ redis-cli -p 6379 keys f*

1) "foo" 

最終更新日:

関連記事

人気記事

新着情報