2

我在 HHVM 上运行 Laravel 并使用 Amazon SQS。我能够连接到队列并向其推送消息。我也可以连接并从中接收。

问题: 使用 HHVM,从队列返回的作业是空的,而当我在传统的 php 5.5 上运行该站点时,我得到了完整的队列消息

用 HHVM 响应

Guzzle\Service\Resource\Model Object
(
    [structure:protected] => 
    [data:protected] => Array
    (
    )

)

使用 PHP 5.5.9 响应

object(Guzzle\Service\Resource\Model)#1154 (2) {
  ["structure":protected]=>
  NULL
  ["data":protected]=>
  array(2) {
    ["ResponseMetadata"]=>
    array(1) {
      ["RequestId"]=>
      string(36) "requestID here"
    }
    ["Messages"]=>
    array(1) {
      [0]=>
      array(5) {
        ["Body"]=>
        string(102) "{"job":"GameWisp\\Commands\\ProcessThisThing","data":{"url":"https:\/\/domain.com\/thing\/id"}}"
        ["MD5OfBody"]=>
        string(32) "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"    
        ["ReceiptHandle"]=>
        string(300) "stuff was here"
        ["MessageId"]=>
        string(36) "ID was here"
        ["Attributes"]=>
        array(1) {
          ["ApproximateReceiveCount"]=>
          string(1) "3"
        }
      }
    }
  }
}

细节:

  • 我正在使用 aws sdk 并通过 composer 加载它。
  • 在我看来,问题实际上发生在 aws sdk 的某个地方

你们中有人遇到过这样的事情吗?

4

1 回答 1

2

不保证适用于 PHP 的 AWS 开发工具包可在 HHVM 上运行。在 Guzzle 和适用于 PHP 的 AWS 开发工具包完全兼容之前,HHVM 仍有一些问题需要解决。

于 2014-03-26T18:22:00.587 回答