简介
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo(redis之父)写的key-value存储系统。
Redis提供了一些丰富的数据结构,包括 lists, sets, ordered sets 以及 hashes还有和Memcached一样的strings结构.
Redis当然还包括了对这些数据结构的丰富操作。
总之它具有以下特点:
- 数据结构丰富
- 持久化
- 支持简单事务
- 主从配置方便
redis和memcached相比
- redis可以用来做存储(storge), 而memccached只能用来做缓存(cache),这个特点主要因为其有”持久化”的功能.
- 存储的数据有”结构”,对于memcached来说,存储的数据,只有1种类型–“字符串”,而redis则可以存储字符串,链表,哈希结构,集合,有序集合.
安装
Linux(centOS)下安装redis
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
tar zxvf redis-3.0.7.tar.gz
cd redis-3.0.7
# 源码是官方configure过的,这个地方可以跳过configure,直接make,但是在make的时候有可能遇到时间错误,原因是源码是在官方configure时,生成的文件有时间戳信息,Make只能发生在configure之后,如果虚拟机时间不对的话,就要重写时间
# date -s 'yyyy-mm-dd hh:mm:ss'
# clock -w
make PREFIX=/usr/local/redis install # 注意PREFIX是大写
# 可选步骤 make test 测试编译情况
安装完成之后得到以下几个文件:
redis-benchmark 性能测试工具
redis-check-aof 日志文件检测工具(比如断电造成日志损坏,可以检测并修复)
redis-check-dump 快照文件检测工具,效果类上
redis-cli 客户端
redis-server 服务端
Linux(centOS)下php-redis扩展编译
- 到pecl.php.net 搜索redis
- 下载stable版(稳定版)扩展
- 解压进入,执行/php/path/bin/phpize (作用是检测PHP的内核版本,并为扩展生成相应的编译配置)
./configure --with-php-config=/usr/bin/php-config
make && make install
- 编译完以后最后一行
Installing shared extensions: /usr/lib/php/modules/
告之扩展在哪里;然后在php.ini中添加既可;
也可以直接使用compose包
predis/predis
windows下安装
redis不建议在windows上使用,如果因为开发等因素的确需要安装的话,主要参考以下链接安装即可
redis在windows下的安装:
http://www.cnblogs.com/linjiq…
php-redis扩展的安装:
http://blog.chinaunix.net/uid…
redis的github
https://github.com/dmajkic/re…
php-redis.dll的github
https://github.com/nicolasff/…
启动
启动服务
让redis以后台进程的形式运行,编辑conf配置文件,修改如下内容:daemonize yes
/path/redis-server /path/redis.conf #这里的conf可以自由指定,可以先通过 --help来看一下
启动客户端
path/to/redis/bin/redis-cli [-h localhost -p 6379 ] # 如果是要在redis的shell中显示中文的话可以加上 --raw 启动