使用Listener Laravel 5.2处理AWS SQS队列

时间:2016-06-07 20:58:31

标签: php amazon-web-services queue laravel-5.2 amazon-sqs

我是AWS SQS和Laravel的新手。通过遵循Laravel 5.2文档,我已将$ customer_id(整数)发送给AWS SQS。

控制器代码:

$this->dispatch(new ExampleJob($customer_id));

ExampleJob代码:[app \ jobs

public function handle(Mailer $mailer)
{
     $mailer->send('Customer.Queue', ['Customer' => $this->customer],  function ($m) {

//            });

每当我通过控制器发布数据时,新消息($ customer_id)都会插入到SQS队列中。这很好。

现在我的问题是我在处理SQS队列中的消息时遇到困难。我需要处理每个客户ID并将记录插入另一个应用程序(如NetSuite)。  如何处理运行Queue Listener的SQS队列?如果我错了,请帮助我并纠正我。

1 个答案:

答案 0 :(得分:0)

然后您需要运行队列侦听器,如:

中所述

https://laravel.com/docs/5.2/queues#running-the-queue-listener

php artisan queue:listen

看到这个监听器将调度所有作业......

我在JAR中开发了这个监听器以使其更简单,因为一旦你拥有大量的工作,普通的监听器根本就没有效率,而且它消耗了大量的资源。

https://github.com/smaugho/TunedQueue