问题标签 [laravel-jobs]
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.
laravel - Laravel:作业失败 - SQLSTATE [42S02]:未找到基表或视图
我正在使用 Laravel v5.7 开发多租户,并且我成功发送队列电子邮件,因为我的模型定义了属性“连接”。
但是,例如,当尝试使用 Jobs 类发送电子邮件时,同样会失败并通知模型表不存在。
从表'failed_jobs'中记录的错误来看,即使定义了属性'connection',作业似乎仍然尝试连接到主数据库而不是属性的指定数据库。
有什么方法可以在 Job 中指定要使用的数据库,因为在模型中也有相同的信息?
数据库.php
],
样品模型
失败的工作
laravel - Laravel - 队列作业不被重用?
我知道,这个问题很奇怪...
场景:我有一个发送电子邮件的 Job 类,但是这封电子邮件的内容被修改了,因为在发送之前选择了电子邮件的模板。
我不知道这是否属实,但显然 Laravel 保留了他第一次解雇的内容缓存。即使通过更改属性值,Job 也会发送完全相同的电子邮件。
如果这是真的,我想知道如何使用同一个工作类别来发送不同的电子邮件,或者什么是最好的选择。
\app\Jobs\SenderEmail001.php
我的控制器
php - 通过事务开始工作 [PHP Laravel]
我需要在事务中触发 laravel 作业。
由于作业是异步的,有时它们会在事务提交之前完成。在这种情况下,作业无法使用 id 获取相关原始数据。(因为事务还没有提交,变化对外不可见)
请提出一种方法,而不是将这部分放在事务之外来解决这个问题。
php - Laravel jobs (database) do not execute handle
I have a problem with laravel jobs. I configured laravel jobs to work with the database and it is working.
When I execute a job, the entry is created in database and the constructor is well executed.
However, the handle function is never executed ... and the jobs stay in the jobs table.
Someone already had this problem?
(I use Laravel 5.7).
php - 系统找不到指定的路径1
赢了我运行这个鳕鱼我有这个错误
该系统找不到指定的路径。
php - Laravel 一旦失败就删除作业
我有一份工作超时,一旦失败,它就会像自己一样调度另一个工作,这样它就可以无限运行而不会重叠。然而,失败的工作留在队列中并被重试,所以我最终有不止一项工作在运行,这破坏了整个目的。
以下是我处理工作失败的方式:
$this->delete()
来自InteractsWithQueue
特质。我究竟做错了什么?
编辑:我使用horizon来运行作业,这里是自定义队列的配置config/horizon.php
我正在调度的工作是创建一个 Thruway 客户端以连接到 Web-socket 服务器并订阅更新频道,所以我想永远运行这个工作,但在任何时候只运行这个工作的一个实例。这就是为什么我希望它在没有任何尝试的情况下运行一次,并且一旦超时调度另一个将运行的实例并且循环将继续。我想不出更好的方法来实现这一点,还有其他方法可以做得更好吗?
laravel - Laravel:检查是否有新项目添加到 db 表并安排一个工作给用户发送电子邮件
我想在我的 Laravel 应用程序的表中添加新行时触发一封电子邮件。但是我想添加一个缓冲区,所以如果快速连续添加 5 行,那么只会发送 1 封电子邮件。
我选择的方法是每 15 分钟安排一次检查,看看是否添加了新行。如果有,那么我将排队发送电子邮件。
目前我的日程安排有误。我将在下面运行我的代码:
在我们设置时间表的Kernel.php中,我有:
我用它来触发在App\Jobs\ProcessActivity.php中找到的作业:
我在上面发布了我的完整代码,其中还显示了我的 JobItems 和 Project 模型之间的关系。正如我在代码中评论的那样,我不会详细说明。
问题
当我在 JobItem 表中添加新行时,我可以看到作业已安排并处理(使用 Laravel Telescope 进行检查)。
但是,我还可以在我的日志中看到,对于每个作业,我都会收到两条日志消息:
首先:“失败”,然后是“活动作业运行”
我的电子邮件没有发送,我不确定如何确定失败的原因。
所以似乎 onFailure 被触发了,我的 ProcessActivity 有问题。
任何关于我哪里出错以及如何确定错误的线索将不胜感激。
laravel - Laravel 作业失败问题
如果失败,我需要重新运行队列作业。我设置$tries = 3
但我需要知道我是否在工作中捕获异常这将被视为已提交的工作并将重新运行?
php - Laravel 作业(队列)不起作用
我的一个工作 laravel 有问题。(这是我第一次遇到这个问题,我还有其他工作没有问题......)
我有一个监听器,当一个模型更新时,他会派出一份工作,所以:
- 一名模型观察员(工作中)
- 观察者发起的一项活动(工作中)
- 一个监听前一个事件的监听器(工作中)
- 由听众派遣的一项工作(不工作......)
该作业已执行,但他在我的数据库中执行失败的作业,并出现错误“ErrorException:未定义变量:...。” ...
很奇怪,因为所有变量都被定义了,为什么它会一分为二地起作用?
如果有人对此有任何想法,我会接受它:D
提前致谢!
工作代码:
完整的例外:
laravel - laravel 5.4 在 10 个进程上向主管发送呼叫
在我的应用程序中,我在 10 个进程上发送了一些呼叫,然后等待响应,如果其中一个呼叫关闭或无法访问用户,我想召回用户 3 次并使用它: