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