现在手上的项目要求在php中使用redis操作,今天倒腾了一下。
Redis官方推荐的PHP客户端(或者说扩展)是Predis和php_reids,前者是完全使用PHP代码实现的原生客户端,后者是用c编写的PHP扩展,功能上二者区别不大,就性能而言后者更优。但是除非执行大量的Redis命令,否则很难区分二者的性能。而且施继忠执行Redis命令的开销更多在网络传输上,单纯注重本地性能开销意义不大。
下面是已有PHP开发环境的情况下配置Redis的操作:
php_redis
github:https://github.com/nicolasff/phpredis/
项目主页:http://pecl.php.net/index.php
目前最新为2.2.7:http://pecl.php.net/package/redis/2.2.7/windows
- 下载扩展包,注意对应的php版本,以及是否是线程安全的。我一开始下载错了线程版本,结果一直提示缺少
php5.dll
文件,实际上并不需要。 - 把扩展包里的php_reids.dll文件放到php目录的ext文件夹下面。
- 在php目录下找到配置文件
php.in
,添加配置项extension=php_redis.dll
- 重启web服务器
- 鼓掌
$redis = new redis();
$redis->/*各种操作*/
对象的方法在github的主页里有详细说明
上面几步只是简单的配置可运行的过程,更高级的技巧在扩展包里有详细说明。
predis
github:https://github.com/nrk/predis
1.下载predis项目
2.解压到项目目录
3.引入文件require 'predis/autoload.php';
4.鼓掌
$redis = new Predis\client();
$redis->/*各种方法*/
用法都一样。。。
理论上php_redis性能更优,但是实际上的项目一般还达不到那个性能瓶颈,所以不如配置方便一点用predis。