我的理解是,vapor将队列驱动程序的配置设置为sqs,因此所有作业都在队列lambda上执行。我正在调度作业,可以清楚地看到它们没有在队列lambda上运行。我错过什么了吗?env.production没有queue_driver的条目,因为假设vapor像在我的其他项目中那样注入它。
//In a controller
RenamePhoto::dispatch($photo_id,$name);
class RenamePhoto implements ShouldQueue // so we are clear here
//RenamePhoto constructor
Log::info("Adding to the Rename Process ". $photo_id);
//RenamePhoto handle
Log::info("Processing rename of photo ". $this->photo_id. ' to '.$this->name);
这两个日志都显示在HTTP日志上
Laravel框架9.24.0
Laravel Vapor 1.42.0
这是由于我在config/queue.php中错过了对Laravel的更新。QUEUE_DRIVER became QUEUE_CONNECTION
和aws所需的一组值被添加为sqs部分中的env值。希望这能帮助人们将一个旧项目转移到Vapor。
请参阅https://github.com/laravel/laravel/blob/9.x/config/queue.php