问题标签 [laravel-queue]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Laravel - 通过编码触发所有队列
我正在创建 5 个名为 q1、q2..q5 的队列,每个队列都有一个要执行的作业。要同时运行所有 5 个作业,请将每个作业放在不同的队列中。
使用 artisan 命令,我可以在单独的控制台中运行每个队列
我在控制台中使用上述命令取得了成功。但是现在我需要在不使用控制台的情况下在编码中执行上述命令。
所以我尝试使用下面的代码来执行。
但是现在的问题是,仅在 q1 完成后才选择 q2,这意味着队列按顺序执行,而不是并行执行。
我使用sync
了队列驱动程序的选项。这也首先执行 q1,然后仅在 q1 完成后才选择 q2。
我的技术配置是。
laravel - Elastic Beanstalk and Laravel queues
I'm implementig Laravel queues via database driver, and when I start the process for listening the jobs, another process is also started. So basically I'm doing php artisan queue:listen and the process that is automatically started is php artisan queue:work.
so basically the second process here is generated automatically, also the thing is that it doesnt point to the folder where it should be
php - 强制最后一个作业在 laravel 队列中同步运行
我已经实现了 laravel 队列和设置主管来监控作业执行。我已经为我的队列分配了 25 个工作人员,以便可以同时处理作业,我想强制队列中的最后一个作业同步处理,假设我调度了 263 个作业,所以作业 #263 必须在 262 个作业成功执行后执行。
我已经尝试过dispatchNow()
在最后一个作业上使用方法的解决方案,然后它将同步执行,但它不起作用。
有人有解决方案吗?
laravel - 我如何在 Laravel 中分派一份工作
我总是收到上述错误,现在我想在工作中同时使用 Dispatchable 和 DispatchJobs,我该怎么做?任何帮助或指导将不胜感激。在 Laracasts 上寻找了一些解决方案,但没有一个有效。
php - Laravel SQS 队列 -> 延迟作业失败
我试图延迟 Laravel 中被分派到 AWS SQS 队列的作业。未延迟的标准作业在该队列上运行良好,但一旦我延迟某些东西,它就会崩溃。我第一次尝试:
这会产生错误: Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR) Call to a member function delay() on string
接下来,我尝试使用 Laravel 在手册中解释的样式:
这给出了错误:
Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR) 调用未定义的方法 Maqe\LaravelSqsFifo\SqsFifoQueue::getSeconds()
我用谷歌搜索了最后一个错误,我很高兴地报告我不是唯一遇到该错误的人:https ://github.com/maqe/laravel-sqs-fifo/issues/7
无论如何,我不明白。我在 Laravel 5.5 上运行,并使用 composer update 更新了我的所有包,以确保我没有使用过时的包。
有任何想法吗?
这是该作业的(编辑的)代码:
这是完整的错误日志:
Symfony\Component\Debug\Exception\FatalThrowableError 抛出消息“调用未定义的方法 Maqe\LaravelSqsFifo\SqsFifoQueue::getSeconds()”
堆栈跟踪:
0 Symfony\Component\Debug\Exception\FatalThrowableError 在 /var/www/sparkwebsite/vendor/maqe/laravel-sqs-fifo/src/SqsFifoQueue.php:42
这是完整的堆栈跟踪。我现在使用标准队列,一切运行良好!
laravel - Laravel 5.5 - 通知通道不同的队列名称?
在事件监听器中,我向狗主人发送通知,如下所示:
问题是因为在下面的通知中有两个通道database
/mail
设置,它们都被添加为“通知”队列中的排队作业,在构造函数中设置。相反,我想将下面的邮件通道添加到emails
队列中,而不是“通知”构造函数中的默认设置。
知道如何让以下通知仅将邮件通道添加MailMessage
到emails
队列而不将database
通道添加到队列吗?(即使这意味着删除构造函数onQueue
)
php - Laravel - 作业报告失败(即使它正确退出)
我正在使用最新版本的 Homestead。我也设置了 Laravel Horizon。我使用 Redis 作为队列驱动程序。Laravel 是 5.6 版,是全新安装的。
发生的事情是我的工作都失败了(即使工作正确退出)。
我正在使用自定义命令通过命令行运行作业:
应用程序/控制台/命令/crawl.php
应用程序/工作/Crawl.php
应用程序/Crawl.php
工人日志
来自 Horizon 失败的工作细节
laravel-worker.conf
配置/队列.php
.env
概要
看着我的worker.log
我可以看到我的班级的输出已经奏效:
但该作业被报告为失败。为什么?奇怪的是,同样在 中,它对一份工作worker.log
说两次:Processing
任何帮助是极大的赞赏!
更新
删除exit()
已解决问题 - 这很奇怪,因为 PHP 手册说您可以使用exit()
“正常”退出程序:
php - 即使在 Laravel 中安装后,为什么“找不到类 'GuzzleHttp\Client'”?
我一直在阅读所有相关问题的答案,GuzzleHttp\Client
但情况越来越糟。我正在尝试使用 Laravel 队列向我的所有应用程序用户发送电子邮件更新。我不知道出了什么问题,但乔布斯失败了。
我正在正确缓存异常并将它们报告到laravel.log
文件中。这是我尝试执行队列工作者时得到的结果。
我已经GuzzleHttp\Client
使用composer require guzzlehttp/guzzle
. 它已成功安装,但仍然出现相同的错误。
即使我试图删除当前的应用程序文件并再次克隆我的整个存储库。仍然面临同样的问题。我什至尝试使用php artisan cache:clear
,php artisan cache:config
和php artisan clear-compiled
(这使我的整个应用程序崩溃) ,清除缓存php artisan dump-autoload
。
我找不到问题所在,但这就是所有日志所说的。
php - 向 Laravel 队列中的哨兵发送错误报告
我在我的 Laravel 项目中设置了 Sentry.io。我也在使用队列。
我想知道是否可以将失败的队列发送到 Sentry?因为他们在失败时不会自动发送。