84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
我上次问了一个php队列使用场景和实现的问题,结果没人回答,然后我现在又看到了原来有这样一个函数ignore_user_abort 链接
ignore_user_abort
难道php队列是这样实现的吗?这样脚本一直不断掉会有问题吗?
传统情况后台PHP脚本还在计算运行用户突然关闭浏览器会导致php执行到一半吗?比如发帖子,多条sql语句要执行,会受到客户端用户突然关闭浏览器断掉连接的影响吗?
sql
希望大神帮我解答一下,谢谢了!
人生最曼妙的风景,竟是内心的淡定与从容!
你的需求是什么?队列计划任务和 ignore_user_abort 函数没关系。如果你想要有一个常驻的 php 的进程去处理某项工作,你可以写个脚本 whiel(true) 在 console 下一直运行。也可以创建 crontab 定时任务,每隔一段时间(比如,每秒执行,和常驻脚本效果差不了多少)。
这种情况专业的队列服务是很好的选择,比如rabbitmq ,beanstalkd。你也可以把异步任务存在数据库,然后用写一个驻留脚本去监控这个表,有新的任务就执行。
完全不懂题主想问什么,想要定时任务 如1楼所说,直接用crontab,cli方式执行PHP即可。至于ignore_user_abort 只是用来忽略浏览器中断的行为的
谁踩我啊,干嘛踩我啊!
你的需求是什么?
队列计划任务和 ignore_user_abort 函数没关系。
如果你想要有一个常驻的 php 的进程去处理某项工作,你可以写个脚本 whiel(true) 在 console 下一直运行。
也可以创建 crontab 定时任务,每隔一段时间(比如,每秒执行,和常驻脚本效果差不了多少)。
这种情况专业的队列服务是很好的选择,比如rabbitmq ,beanstalkd。你也可以把异步任务存在数据库,然后用写一个驻留脚本去监控这个表,有新的任务就执行。
完全不懂题主想问什么,想要定时任务 如1楼所说,直接用crontab,cli方式执行PHP即可。至于ignore_user_abort 只是用来忽略浏览器中断的行为的
谁踩我啊,干嘛踩我啊!