PHP + Redis 队列实战
环境
centos6.5
PHP5.3
Redis安装
#yum install redis
1.redis配置认证密码
#vi /etc/redis.conf
requirepass mypass
#service redis restart
2.命令行
#redis-cli -h 127.0.0.1 -p 6379 -a mypass
>keys *
>select 1
3.常用命令
>flushall
>set key value
>get key
>keys *
>keys cg*
PHP redis扩展
yum install php-redis
lPush.php
<?php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
for($i=0; $i<100; $i++){
$json = json_encode(array('title'=>'title '.$i, 'content'=>'i am content '.$i));
$redis->lPush('list-1', $json);
}
?>
rPop.php
<?php
$redis = new Redis();
$redis->pconnect('127.0.0.1', 6379);
while (true) {
$msg = $redis->rPop('list-1');
if ($msg !== false) {
$array = json_decode($msg, true);
var_dump($array);
continue;
}
sleep(1);
}
?>
lRange.php
<?php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$list = $redis->lRange("list-1", 0 ,5);
print_r($list);
?>
参考
https://github.com/phpredis/phpredis
交流QQ
492829339
PHP + Redis 队列实战的更多相关文章
- redis队列及多线程应用
由于xxx平台上自己的博客已经很久没更新了,一直以来都是用的印象笔记来做工作中知识的积累存根,不知不觉印象笔记里已经有了四.五百遍文章.为了从新开始能与广大攻城狮共同提高技术能力与水平,随决心另起炉灶 ...
- [bigdata] 使用Redis队列来实现与机器无关的Job提交与执行 (python实现)
用例场景: 定时从远程多台机器上下载文件存入HDFS中.一开始采用shell 一对一的方式实现,但对于由于网络或者其他原因造成下载失败的任务无法进行重试,且如果某台agent机器down机,将导致它对 ...
- 我心中的核心组件~MSMQ与Redis队列
回到目录 这个文章其实是我心中的核心组件的第七回,确实在时间上有些滞后了,但内容并不滞后!本文MSMQ只是个引题,我确实不太想说它,它是微软自己集成的一套消息队列,寄宿在Window服务里,稳定性十在 ...
- c#之Redis队列在邮件提醒中的应用
场景 有这样一个场景,一个邮件提醒的windows服务,获取所有开启邮件提醒的用户,循环获取这些用户的邮件,发送一条服务号消息.但问题来了,用户比较少的情况下,轮询一遍时间还能忍受,如果用户多了,那用 ...
- c#之Redis队列
摘要 这两天一直在考虑redis队列:一个生产者,多个消费者的情况,这里弄了一个demo进行测试. 一个例子 关于如何引用Redisclient 可以参考之前的这篇文章:c#之Redis实践list, ...
- redis队列的实现
redis中文官网:http://www.redis.cn/ 关于redis队列的实现方式有两种: 1.生产者消费者模式. 2.发布者订阅者模式. 详解: 1.生产者消费者模式. 普通版本: 比如一个 ...
- (3)redis队列功能
Redis队列功能介绍 List 常用命令: Blpop删除,并获得该列表中的第一元素,或阻塞,直到有一个可用 Brpop删除,并获得该列表中的最后一个元素,或阻塞,直到有一个可用 Brpoplpus ...
- 转载:【高并发简单解决方案 | 靠谱崔小拽 】redis队列缓存 + mysql 批量入库 + php离线整合
需求背景:有个调用统计日志存储和统计需求,要求存储到mysql中:存储数据高峰能达到日均千万,瓶颈在于直接入库并发太高,可能会把mysql干垮. 问题分析 思考:应用网站架构的衍化过程中,应用最新的框 ...
- redis 队列缓存 + mysql 批量入库 + php 离线整合
问题分析 思考:应用网站架构的衍化过程中,应用最新的框架和工具技术固然是最优选择:但是,如果能在现有的框架的基础上提出简单可依赖的解决方案,未尝不是一种提升自我的尝试. 解决: 问题一:要求日志最好入 ...
随机推荐
- mysql里max_allowed_packet的作用
MySQL根据配置文件会限制Server接受的数据包大小.有时候大的插入和更新会受 max_allowed_packet 参数限制,导致写入或者更新失败. 查看目前配置: 代码如下: show VAR ...
- 下载excel
使用struts2的方式完成下载 对于下载excel2003,contentType如此设置 <result name="success" type="stream ...
- iOS8不能通过itms-services协议下载安装app
问题:iOS包通过itms-services协议下载app无反应 使用 itms-services://?action=download-manifest&url=[ipa下载链接] 下 ...
- Android学习路-UI控件
- windows环境下搭建kafka
注意:请确保本地Java环境变量配置成功 1.安装Zookeeper Kafka的运行依赖于Zookeeper,所以在运行Kafka之前我们需要安装并运行Zookeeper 1.1 下载安装文件: h ...
- awk——getline
A.getline从整体上来说,应这么理解它的用法: 当其左右无重定向符 | 或 < 时,getline作用于当前文件,读入当前文件的第一行给其后跟的变量var 或$0(无变量):应该注意到,由 ...
- DC-学习
1.DC概论一:setup time, hold time之一 http://www.blogbus.com/bb2hh-logs/20463915.html 2.DC概论二:fanout, skew ...
- Serializers序列化组件
Django的序列化方法 .values 序列化结果 class BooksView(View): def get(self, request): book_list = Book.objects.v ...
- 电商项目中学到的git命令
1.在拉下来的文件夹被删除后的操作 创建了文件后 git init 增加了 .git文件 ls -al 查看后有.git文件夹 git remote add origin (ssh) 连接到git仓库 ...
- Wannafly挑战赛13 C:zzf的好矩阵(思维)
题目描述 一个8 * 8的棋盘,第一个格子放1个麦穗,第二个格子放2个麦穗,第三个格子放4个麦穗……那么最后,共要放几个麦穗呢? zzf表示这个问题实在太简单,于是重新规定了游戏的规则. 初始的棋盘为 ...