PHP
Redis

【メモ】redisをphpで使うまで

More than 5 years have passed since last update.

$ sudo su

$ cd /usr/local/src
$ wget http://redis.googlecode.com/files/redis-2.6.12.tar.gz
$ tar xzf redis-2.6.12.tar.gz
$ cd redis-2.6.12
$ make;make install
$ ln -s /usr/local/src/redis-2.6.12 /usr/local/redis
$ sudo mkdir -pv /var/data/redis
$ sudo chown -R root:wheel /var/data/redis

もしmake段階で、gccが無くerrorが出た場合

$ sudo yum install gcc

$ make distclean
$ make;make install


/usr/local/redis/redis.conf

-dir ./

+dir /var/data/redis/


PHP用ライブラリ


phpredisインストール

$ sudo su

$ cd /usr/local/src
$ git clone git://github.com/nicolasff/phpredis.git
$ cd phpredis/
$ phpize
$ ./configure
$ make;make install

-rwxr-xr-x 1 root root 845018 May 1 02:05 /usr/lib64/php/modules/redis.so

もしserializeを効率よく使える様にするなら

Memcached 拡張内でおこなわれるシリアライズ処理の最適化のために igbinary 拡張を導入します。

git clone git://github.com/igbinary/igbinary.git

cd igbinary/

phpize

./configure CFLAGS="-O2 -g" --enable-igbinary

make;make install

-rwxr-xr-x 1 root root 176964 May 1 02:17 /usr/lib64/php/modules/igbinary.so

echo "extension=igbinary.so" > /etc/php.d/igbinary.ini

cd ../phprize

./configure --enable-redis-igbinary

make;make install

-rwxr-xr-x 1 root root 845858 May 1 02:21 /usr/lib64/php/modules/redis.so


php.ini追加

echo "extension=redis.so" > /etc/php.d/redis.ini


redisの確認

php -m | grep redis


ドキュメント

https://github.com/nicolasff/phpredis/blob/master/README.markdown

"redisクライアント一覧":http://redis.io/clients

AWSに導入する場合:http://dev.classmethod.jp/server-side/in-memory-kvs-redis/