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
- docker怎么设置redis(docker安装redis并以配置文件方式启动详解)
- pythonredis使用场景(python 通过SSHTunnelForwarder隧道连接redis的方法)
- docker redis配置文件放哪里(最详细的docker中安装并配置redis图文详解)
- win7redis安装教程(Docke中安装redis的方法)
- phpredis高级用法(PHP Redis扩展无法加载的问题解决方法)
- phpredis常用方法(PHP针对redis常用操作实例详解)
- php消息队列redis(redis+php实现微博二发布与关注功能详解)
- python编辑redis(python使用pipeline批量读写redis的方法)
- redis数据超过可用内存
- phpredis消息队列(PHP+redis实现微博的推模型案例分析)
- docker查找redis配置文件(解决docker重启redis,mysql数据丢失的问题)
- docker部署redis集群查看版本(docker下的 redis 之持久化存储详解)
- php redis应用场景(PHP商品秒杀问题解决方案实例详解mysql与redis)
- docker实现redis集群(详解使用Docker进行Redis主从复制实践)
- docker部署tomcat(Docker安装Tomcat、MySQL和Redis的步骤详解)
- dockermysql配置详解(Docker 部署Mysql 服务和Redis 服务的方法)
- 原创图画书,以儿童视角讲述中国故事(以儿童视角讲述中国故事)
- 八月再见 愿你岁月不扰,余生静好(八月再见愿你岁月不扰)
- 赏读 八月再见,九月你好(赏读八月再见九月你好)
- 散文 八月再见,九月,我在风中等你(散文八月再见九月)
- 8月再见 9月你好(8月再见)
- 魔兽世界 设计师爆料,原始版本并无PVP,跨阵营属于返璞归真(魔兽世界设计师爆料)
热门推荐
- 常用的mysql查询语句(MySQL查询重写插件的使用)
- apache服务配置详解(APACHE 多站点配置方法)
- python微信自动化(python微信撤回监测代码)
- php怎么根据字符串长度设置(php常用字符串长度函数strlen与mb_strlen用法实例分析)
- 安装phpstudy注意哪些问题(phpstudy怎么卸载?phpstudy卸载图文教程)
- sqlserver怎么查看数据库版本(Sql Server数据库各版本功能对比)
- python怎么判断对象属性(判断python对象是否可调用的三种方式及其区别详解)
- python 并发传输文件(python单线程文件传输的实例C/S)
- html5列表与布局(HTML5逐步分析实现拖放功能的方法)
- sleep线程不安全(当master down掉后,pt-heartbeat不断重试会导致内存缓慢增长的原因及解决办法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9