繁体   English   中英

在PHP中使用Iron.mq推送队列

[英]Using Iron.mq push queue with PHP

我正在尝试使用iron.mq推送队列,但是在弄清楚接收到消息后如何正确响应队列时遇到了困难。 我意识到我可能还没有完全理解队列系统的行为,但是我的理解是,它是这样的:

  1. 邮件已发送到队列
  2. 消息从队列推送到我的端点
  3. 消息被“保留”,直到我的端点响应或超时
  4. 端点以2xx(成功)响应并被删除或4xx / 5xx失败,在这种情况下,队列将尝试将消息重新发送到端点。

例如,我的脚本(使用FuelPHP)具有以下内容:

    $headers = Input::headers(); //gets array of headers sent from ironmq
    $data = @file_get_contents('php://input'); //get the body

现在,我已经收到该消息,我想执行以下两项操作之一:

  1. 处理消息并将成功返回到Ironmq服务器的响应
  2. 延迟该过程(通过发送4xx / 5xx?),并在定义的时间段后重新发送。

但是...您如何回应推送消息? 使用PHP SDK的deleteMessage方法会导致异常,因为该消息似乎不再存在。

所以-两种方式:

  1. 202->长时间工作-> deleteMessagePushStatus()
  2. 4xx或5xx-> 4xx或5xx(多次)-> 200

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM