解压安装:
复制代码代码如下:
make
sudo make install
为方便使用,在/usr目录下创建redis目录,讲如下几个文件拷贝到/usr/redis/目录下:
当然,你也可以通过软连接的方式达到方便使用的目的.此外,你也可以将redis-server加入开机启动,此处从略.
②redis测试
①.)先开启redis服务端程序
为方便测试,我们将redis.conf配置文件中的loglevel和logfile的值,修改后如下:
loglevel debug
logfile "/tmp/redis.log"
以最简单的key操作为例,实例如下:
OK
"hello,world"
(integer) 1
(nil)
""
③安装phpredis扩展
①.)我们通过安装php开发者工具来获取phpize.执行如下命令即可:
②.)获取phpredis源文件
按照GitHub上的说明进行如下安装时,
phpize
./configure --enable-redis-igbinary
make make install
可能会出现如下出错说明:
checking for igbinary includes... configure: error: Cannot find igbinary.h
订单超时,活动过期解决方案:php监听redis键重复触发引发事件
①我们先订阅频道称为?redisChat
接收到的消息如下:
③Key过期事件的Redis配置
需要这里配置notify-keyspace-events的参数为"EX" .X代表了过期事件.notify-keyspace-events "Ex"保存配置后,重启Redis的服务,使配置生效.
PHP Redis实现订阅键空间通知
redis实例化类:
redis.class.php
①.个
②.
③.
④.
⑤.
⑥.
⑦.
⑧.
⑨.
①.0
①.1
②.0
②.1
③.0
③.1
④.0
④.1
{
private$redis;
$this-redis = newRedis();
$this-redis-connect($host, $port);
}
publicfunctionsetex($key, $time, $val)
return$this-redis-setex($key, $time, $val);
publicfunctionset($key, $val)
return$this-redis-set($key, $val);
publicfunctionget($key)
return$this-redis-get($key);
publicfunctionexpire($key= null, $time= 0)
return$this-redis-expire($key, $time);
publicfunctionpsubscribe($patterns= array(), $callback)
$this-redis-psubscribe($patterns, $callback);
publicfunctionsetOption()
$this-redis-setOption(\Redis::OPT_READ_TIMEOUT, -1);
过期事件的订阅:
psubscribe.php
require_once'./Redis.class.php';
$redis-setOption();
$redis-psubscribe(array('__keyevent@0__:expired'), 'keyCallback');
// 回调函数,这里写处理逻辑
functionkeyCallback($redis, $pattern, $chan, $msg)
echo"Pattern: $pattern\n";
echo"Channel: $chan\n";
echo"Payl
oad: $msg\n\n";
//keyCallback为订阅事件后的回调函数,这里写业务处理逻辑,
//比如前面提到的商品不支付自动撤单,这里就可以根据订单id,来实现自动撤单
设置过期事件:
index.php
$redis-setex('order_id',10,$order_id);
先用命令行模式执行?psubscribe.php
在浏览器访问?index.php
效果如下:
⑧.至此,大功告成.
②.、解压缩之后得到两个文件,分别将两个文件复制到php 目录的 ext目录下.
③.、修改php.ini文件.加入extension 扩展
extension=php_igbinary.dll
extension=php_redis.dll
④.、 重启apache ,查看phpinfo 界面.如下则表示安装成功
⑤.、phpredis ? hellow word ? 开始你的redis使用
php
$redis?= new?Redis();??? //redis对象
$redis-set("test","Hello World");?? //set字符串值
echo?$redis-get("test");??? //获取值
感谢网友分享.
以上就是土嘎嘎小编大虾米为大家整理的相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!