在php中创建作业队列系统的最佳实践是什么?

时间:2010-10-08 09:41:49

标签: php windows

有很多队列系统,比如beanstalkd,gearman等,但是如果你想在Windows上运行守护进程作为服务,并且处理存储在sql数据库中的作业,你自己怎么办? / p>

主要是我要求提供有关处理作业,锁定作业等的最佳方法的建议。

2 个答案:

答案 0 :(得分:3)

尝试使用CRON + ScriptAlone

答案 1 :(得分:0)

只能在PHP中执行

如果你真的想在PHP / MySQL中这样做,我会使用

  

交易

     

简单地说,交易是一个系列   执行的SQL语句的   一个单位;要么全部   语句完全执行或   没有人会被执行。

  • 将项目添加到已完全原子
  • 的队列列表中
  • TRANSACTION (教程)中删除队列中的项目。首先 SELECT 最后一项(FIFO)。下一个删除具有ID(PK)的项目。但是这一切都在交易中完成。

应该使用其他语言编码。

首先,我不会在PHP中这样做,但在java中,如果我在Windows平台上。我在java中创建了一个非常简单的消息队列,我将打包为一个jar,稍后在有空的时候与stackoverflow共享。