【发布时间】:2021-06-09 14:06:47
【问题描述】:
如何在 Lumen PHP 中传递 AWS SQS 中的优先级(高、中、低)。
包
"php": "^7.3|^8.0",
"aws/aws-sdk-php": "^3.158",
"laravel/lumen-framework": "^8.0"
queqe.php
<?php
return [
'default' => env('QUEUE_CONNECTION', 'sqs'),
'connections' => [
'sqs' => [
'driver' => 'sqs',
'key' => 'key',
'secret' => 'secret',
'prefix' => 'https://sqs.us-east-1.amazonaws.com/1234567891452',
'queue' => '',
'suffix' => 'dev-test-app',
'region' => 'us-east-1',
'after_commit' => false,
]
],
];
EmailJob.php
<?php
namespace App\Jobs;
use Log;
class EmailJob extends Job
{
public $queue;
public function __construct($data)
{
$this->queue = $data['queue'];
}
public function handle()
{
Log::info('Email job '.$this->queue.' is run at start time - '.microtime(true));
}
}
SmsJob.php
<?php
namespace App\Jobs;
use Log;
class SmsJob extends Job
{
public $queue;
public function __construct($data)
{
$this->queue = $data['queue'];
}
public function handle()
{
Log::info('Sms job '.$this->queue.' is run at start time - '.microtime(true));
}
}
加入队列
Queue::push(new EmailJob(array('queue' => 'email-test')));
Queue::push(new SmsJob(array('queue' => 'sms-test')));
我如何设置电子邮件、短信工作等的优先级(高、中、低)...可能还会添加新工作。
【问题讨论】:
标签: php laravel queue amazon-sqs lumen