简介

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo(redis之父)写的key-value存储系统。
Redis提供了一些丰富的数据结构,包括 lists, sets, ordered sets 以及 hashes还有和Memcached一样的strings结构.
Redis当然还包括了对这些数据结构的丰富操作。

总之它具有以下特点:

  1. 数据结构丰富
  2. 持久化
  3. 支持简单事务
  4. 主从配置方便

redis和memcached相比

  1. redis可以用来做存储(storge), 而memccached只能用来做缓存(cache),这个特点主要因为其有"持久化"的功能.
  2. 存储的数据有"结构",对于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扩展编译

  1. 到pecl.php.net 搜索redis
  2. 下载stable版(稳定版)扩展
  3. 解压进入,执行/php/path/bin/phpize (作用是检测PHP的内核版本,并为扩展生成相应的编译配置)
  4. ./configure --with-php-config=/usr/bin/php-config
  5. make && make install
  6. 编译完以后最后一行 Installing shared extensions: /usr/lib/php/modules/告之扩展在哪里;然后在php.ini中添加既可;
[info] 也可以直接使用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 启动


菜问
625 声望132 粉丝

10年后端开发,常用编程语言PHP,java,golang,python。