社区
基础编程
帖子详情
php 用 redis做队列 运行过程是什么样的?
gink2006
2015-12-07 09:31:14
比如群发1000封邮件,或者同时有1000个用户一人一个发邮件的请求
先用1个或多个php脚本把 1000封邮件的信息存储到redis
然后用另一个php脚本 循环从redis中每次取20条出来 执行发送邮件的函数
那问题来了,那这个取数据脚本是不是一直要在后台跑呢? 而且就它一个线程,效率高吗?
我是不是理解错了?
...全文
483
7
打赏
收藏
php 用 redis做队列 运行过程是什么样的?
比如群发1000封邮件,或者同时有1000个用户一人一个发邮件的请求 先用1个或多个php脚本把 1000封邮件的信息存储到redis 然后用另一个php脚本 循环从redis中每次取20条出来 执行发送邮件的函数 那问题来了,那这个取数据脚本是不是一直要在后台跑呢? 而且就它一个线程,效率高吗? 我是不是理解错了?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gink2006
2015-12-07
打赏
举报
回复
引用 2 楼 fdipzone 的回复:
就是排队,先来先服务。后来的等着。 你多少个来都一样,按时间排队,如果并发,它系统都会按入队顺序排好的。
排队我懂。 我不理解的是取出数据后,到底是交给谁执行任务(如发邮件),是交给一个线程,还是可以同时交给多个线程,这里边到底是怎么操作的,一个线程是不是会很慢
gink2006
2015-12-07
打赏
举报
回复
php运行一个脚本是一个线程吧? 比如1000个用户一人一个发邮件的请求,如果每个请求都开启一个取数据线程 执行发邮件函数,那队列就没有意义了,相当于直接运行发邮件函数了 怎么让如每20个用户就开启一个线程取数据呢?
傲雪星枫
2015-12-07
打赏
举报
回复
就是排队,先来先服务。后来的等着。 你多少个来都一样,按时间排队,如果并发,它系统都会按入队顺序排好的。
xuzuning
2015-12-07
打赏
举报
回复
在哪里跑都行,按你业务的需要 只要你处理一条就删一条,多少的进(线)程同时跑都没关系
xuzuning
2015-12-07
打赏
举报
回复
邮件发送的快慢由很多因素决定,你实际能操控的是你的网卡的吞吐量(当然还有带宽的制约) 只要没超出他的上限,开多少个线程都无所谓 CPU(核) 在任何时刻都只会为一个进(线)程服务,如果你的程序在运行时没有停顿(没有IO请求),那么多线程和单线程并没有区别 你实际需要的是如何调度队列,使之尽快的空下来 1、你需要有一个后台进程,不时的处理队列里的数据 2、你可以在每当用户发来请求时,除了完成请求的工作外,在启动若干个进(线)程来处理队列中的数据
傲雪星枫
2015-12-07
打赏
举报
回复
或者入队时定义多几个队列,出队时就可以并发执行了。
傲雪星枫
2015-12-07
打赏
举报
回复
如果你出队时多线程的,就可以同时处理多个入队的数据了。
laravel-angular:Laravel+angular+CouchDb 锅炉模板
支持的功能: -Laravel 4.2:
PHP
框架-AngularJS 1.3:AngularJS 前端框架-CouchDB:NoSQL 数据库-
Redis
:缓存数据库-Sendgrid : 邮寄服务-Beanstalk:
队列
服务 选择您想要的所有或任何服务开始编码的完美样板...
php
队列
是什么,
php
用
redis
做
队列
运行
过程
是什么样的?
比如群发1000封邮件,或者同时有1000个用户一人一个发邮件的请求先用1个或多个
php
脚本把 1000封邮件的信息存储到
redis
然后用另一个
php
脚本 循环从
redis
中每次取20条出来 执行发送邮件的函数那问题来了,那这个取数据...
缓存
redis
,消息
队列
rabbitmq
redis
是一个key-value存储系统。它支持存储的value类型相对更多,包括string、list、set、zset和hash。为了保证效率,数据都是缓存在内存中。
redis
的出现,在部分场合可以对关系数据库起到很好的补充作用。 ...
php
种loop用法,一篇学会
redis
阻塞
队列
在
php
的正确使用
在捣鼓swoole结合
redis
做
队列
时碰到阻塞
队列
与无阻塞取数的疑惑,遂找了很多资料,发现很多想当然的
PHP
er的写法都是想当然的,进而导致阻塞和不阻塞没什么两样,直到看到下面这篇文章的用法,如醍醐灌顶……经测试在...
redis
异步
队列
php
,[PhalApi实战篇(1)]
Redis
队列
处理异步任务
[PhalApi实战篇(1)]
Redis
队列
处理异步任务 前言先在这里感谢phalapi框架创始人@dogstar,为我们提供了这样一个优秀的开源框架.哈喽大家好呀!之前编写的PhalApi入门篇和进阶篇已经过去了好久了,在此之间也回答了很多小...
基础编程
21,886
社区成员
140,364
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章