php安装redis扩展模块,[教程]为PHP安装phpRedis扩展模块

一.安装phpredis

# wget https://download.github.com/owlient-phpredis-2.1.1-1-g90ecd17.tar.gz

# tar -zxvf owlient-phpredis-2.1.1-1-g90ecd17.tar.gz

# cd owlient-phpredis-2.1.1-1-g90ecd17

# /usr/local/php/bin/phpize

# ./configure –with-php-config=/usr/local/php/bin/php-config

# make && make install

修改php.ini文件,应用扩展

# /usr/local/php/etc/php.ini

加入:

extension=redis.so

重启httpd

# service httpd -k restart

我这里使用的是php-fpm模块运行的Nginx

/usr/local/php/sbin/php-fpm restart

通过phpinfo()函数查看,可以看到redis扩展

format,png

如果想用redis来存储session的话,可以这样配置SESSION,不过好像我们用memcached来存储session的比较多一些的,呵呵:

#ini_set(‘session.save_handler’, ‘redis’);

#session_save_path(“tcp://host1:6379?weight=1,tcp://host2:6379?weight=2&timeout=2.5,tcp://host3:6379?weight=2”);

?>

如果要安装最新的php扩展.先安装版本控制.这里用的是git.安装教程请参考:http://blog.haohtml.com/archives/10093

//下载源码再安装扩展

二.测试phpredis:

php测试代码:

$redis = new Redis();

$redis->connect(‘127.0.0.1′,6379);

$redis->set(‘test’,’hello world!’);

echo $redis->get(‘test’);

?>

输出hello world!

队列测试代码:

入队列操作文件 list_push.php

$redis = new Redis();

$redis->connect(‘127.0.0.1’, 6379);

while (true) {

$redis->lPush(‘list1’, ‘A_’.date(‘Y-m-d H:i:s’));

sleep(rand()%3);

}

?>

执行

# php list_push.php &

出队列操作 list_pop.php文件

$redis = new Redis();

$redis->pconnect(‘127.0.0.1’, 6379);

while(true) {

try {

var_export( $redis->blPop(‘list1’, 10) );

} catch(Exception $e) {

//echo $e;

}

}

其他测试代码:

$redis = new Redis();

$redis->connect(‘127.0.0.1’, 6379);

$redis->set(‘key’, ‘value’);

echo $redis->get(‘key’).”\n”;

$redis->setex(‘key’, 3600, ‘value’); // sets key → value, with 1h TTL.

$redis->set(‘key1’, ‘val1’);

$redis->set(‘key2’, ‘val2’);

$redis->set(‘key3’, ‘val3’);

$redis->set(‘key4’, ‘val4’);

$redis->delete(‘key1’, ‘key2’);

echo $redis->get(‘key3’).”\n” ;

$redis->delete(array(‘key3’, ‘key4’));

?>

================

注意事项:

# redis目前提供四种数据类型:string,list,set及zset(sorted set)。

# * string是最简单的类型,你可以理解成与Memcached一模一个的类型,一个key对应一个value,其上支持的操作与Memcached的操 作类似。但它的功能更丰富。

# * list是一个链表结构,主要功能是push、pop、获取一个范围的所有值等等。操作中key理解为链表的名字。

# * set是集合,和我们数学中的集合概念相似,对集合的操作有添加删除元素,有对多个集合求交并差等操作。操作中key理解为集合的名字。

# * zset是set的一个升级版本,他在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序。可以理解了有两列的mysql表,一列存value,一列存顺序。操作中key理解为zset的名字。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值