php redis配置(php+redis实现消息队列功能示例)
php redis配置
php+redis实现消息队列功能示例本文实例讲述了php+redis实现消息队列功能。分享给大家供大家参考,具体如下:
个人理解在项目中使用消息队列一般是有如下几个原因:
把瞬间服务器的请求处理换成异步处理,缓解服务器的压力
实现数据顺序排列获取
redis实现消息队列步骤如下:
1).redis函数rpush,lpop
2).建议定时任务入队列
3)创建定时任务出队列
文件:demo.php插入数据到redis队列
|
<?php $redis = new Redis(); $redis ->connect( '127.0.0.1' ,6379); $password = '123456' ; $redis ->auth( $password ); $arr = array ( 'h' , 'e' , 'l' , 'l' , 'o' , 'w' , 'o' , 'r' , 'l' , 'd' ); foreach ( $arr as $k => $v ){ $redis ->rpush( "mylist" , $v ); } |
执行后结果如下
文件:index.php定时扫描出队列
|
<?php $redis = new Redis(); $redis ->connect( '127.0.0.1' ,6379); $password = '123456' ; $redis ->auth( $password ); //list类型出队操作 $value = $redis ->lpop( 'mylist' ); if ( $value ){ echo "出队的值" . $value ; } else { echo "出队完成" ; } ?> |
建立定时任务
*/1 * * * * root php /wwwroot/workplace/redis/index.php
*/3 * * * * root php /wwwroot/workplace/redis/demo.php
tail -f /var/log/cron
查看定时任务执行情况
Nov 7 00:30:01 dongzi CROND[6888]: (root) CMD (php /wwwroot/workplace/redis/demo.php)
Nov 7 00:30:01 dongzi CROND[6890]: (root) CMD (php /wwwroot/workplace/redis/index.php )
定时任务执行队列写入结果如下
127.0.0.1:6379> lrange mylist 0 -1
1) "h"
2) "e"
3) "l"
4) "l"
5) "o"
6) "w"
7) "o"
8) "r"
9) "l"
10) "d"
定时任务执行出队列后:
127.0.0.1:6379> lrange mylist 0 -1
1) "e"
2) "l"
3) "l"
4) "o"
5) "w"
6) "o"
7) "r"
8) "l"
9) "d"
希望本文所述对大家PHP程序设计有所帮助。
原文链接:https://www.cnblogs.com/lisqiong/p/6039460.html
- phpredis怎么设置队列(php使用lua+redis实现限流,计数器模式,令牌桶模式)
- docker redis安装配置(使用docker搭建redis主从的方法步骤)
- redis的scan命令的使用(scrapy-redis源码分析之发送POST请求详解)
- phpredis常用方法(PHP针对redis常用操作实例详解)
- php实现redis消息队列(redis+php实现微博三微博列表功能详解)
- docker配置redis集群(基于Docker搭建Redis主从集群的实现)
- phpredis怎么实现任务(PHP swoole和redis异步任务实现方法分析)
- redis新增数据分页(Scrapy-Redis结合POST请求获取数据的方法示例)
- phpredis使用场景(php和redis实现秒杀活动的流程)
- docker快速配置redis集群(基于docker搭建redis集群的方法)
- docker里面安装redis(Docker上实现Redis集群搭建)
- yield函数详解(Yii框架的redis命令使用方法简单示例)
- docker运行redis并操作(Docker安装MySQL和Redis的方法步骤)
- django测试服务器静态资源放哪里(Django使用redis缓存服务器的实现代码示例)
- phpredis消息队列(PHP+redis实现微博的推模型案例分析)
- phpredis高级用法(PHP Redis扩展无法加载的问题解决方法)
- 被鉴定的古董价值300万 当心,你可能遇到诈骗了(被鉴定的古董价值300万)
- 英语难学吗(初中英语难学吗)
- 如何追女孩子(如何追女孩子的技巧和方法)
- 是不是快乐全被你拿走了(而是你得到的)
- 世界上只有妈妈好(世界上只有妈妈好的歌词)
- 为什么现在社会越来越卷了(现在社会为什么发展那么快呢)
热门推荐
- CSS伪元素:before, :after
- python3正则表达式详解(Python正则表达式和re库知识点总结)
- html5基本结构图(HTML5中的网络存储实现方式)
- MySQL配置文件my.cnf的介绍
- html5视频播放(使用HTML5加载音频和视频的实现代码)
- dataset用法
- navicat连接mysql报错(解决Navicat Premium 连接 MySQL 8.0 报错"1251"的问题分析)
- vuekeep-alive源码(vue中keepAlive组件的作用和使用方法详解)
- mysql5.7.24rpm安装(MySQL系列-YUM及RPM包安装v5.7.34)
- javascript中的this判定(Javascript中函数分类&this指向的实例详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9