首页  >  问答  >  正文

mysql - php队列计划任务怎么做呢,用的是ignore_user_abort吗?

我上次问了一个php队列使用场景和实现的问题,结果没人回答,然后我现在又看到了原来有这样一个函数ignore_user_abort 链接

难道php队列是这样实现的吗?这样脚本一直不断掉会有问题吗?

传统情况后台PHP脚本还在计算运行用户突然关闭浏览器会导致php执行到一半吗?比如发帖子,多条sql语句要执行,会受到客户端用户突然关闭浏览器断掉连接的影响吗?

希望大神帮我解答一下,谢谢了!

黄舟黄舟2772 天前690

全部回复(4)我来回复

  • 黄舟

    黄舟2017-04-10 16:42:08

    你的需求是什么?
    队列计划任务和 ignore_user_abort 函数没关系。
    如果你想要有一个常驻的 php 的进程去处理某项工作,你可以写个脚本 whiel(true) 在 console 下一直运行。
    也可以创建 crontab 定时任务,每隔一段时间(比如,每秒执行,和常驻脚本效果差不了多少)。

    回复
    0
  • 迷茫

    迷茫2017-04-10 16:42:08

    这种情况专业的队列服务是很好的选择,比如rabbitmq ,beanstalkd。你也可以把异步任务存在数据库,然后用写一个驻留脚本去监控这个表,有新的任务就执行。

    回复
    0
  • ringa_lee

    ringa_lee2017-04-10 16:42:08

    完全不懂题主想问什么,想要定时任务 如1楼所说,直接用crontab,cli方式执行PHP即可。至于ignore_user_abort 只是用来忽略浏览器中断的行为的

    回复
    0
  • 阿神

    阿神2017-04-10 16:42:08

    谁踩我啊,干嘛踩我啊!

    回复
    0
  • 取消回复