问题标签 [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.

0 投票
1 回答
1988 浏览

laravel-5 - 如何使用 Laravel 5.4 在 VueJS 中存储数据

我正在构建像实时仪表板这样的应用程序。使用许多数据库和外部 API。

(第一个想法是 AJAX + Laravel 队列,但我发现了 VueJS 并且很有趣。)

这个想法是使用 Laravel 队列从所有来源获取后台数据,然后将其存储在本地。下一步是使用 VueJS 获取这些数据。

我遇到的问题是存储部分。我不知道,实际上也不知道如何存储它,因此 VueJS 可以有效地从存储中获取这些数据,另一方面,Laravel 可以将数据保存到相同的位置。

会有很多用户登录系统,所以我为他们创建了 MySQL 数据库,但不知道这是否是一个好的解决方案。

感谢您的建议!

0 投票
0 回答
364 浏览

laravel - Laravel 队列:如何跟踪进度并知道哪些子作业成功/失败

目前我正在构建一个平台,必须将 android FCM 消息发送到安装了我的应用程序的设备。

我的后端有一个通知生成器,它允许管理员添加通知。这还分派了一个 NotificationJob,它将查询数据库并查找所有已安装该应用程序的设备(例如 1000 个最终用户)并分派一个子作业以发送推送通知(1000 个子作业)。

在通知管理面板中,我想显示与每个通知条目相对应的状态,如 950 成功/50 失败。

laravel 队列可以实现这样的事情吗?

子作业真的是矫枉过正吗?

0 投票
0 回答
280 浏览

php - Laravel 5.4 MultiSite,每个站点都有队列

我的 Laravel 设置了一个 MultiSite Middleware Provider,它检查地址的子域,并基于此子域动态更改与另一个数据库的连接。

例如

这一切都很棒,除了我现在想将 Laravel 队列与内置的数据库驱动程序一起使用(同步实际上工作正常,但会阻碍长报告生成的用户体验)。

除了 Artisan 不确定要连接到哪个数据库,所以我猜它连接到默认数据库,这是一种存储所有子域和相应数据库名称等的主管数据库。

请注意,这些数据库都没有在我的数据库配置中设置为连接,它们存储在一个单一的管理数据库中,因为它们有很多。

我尝试克隆内置的队列侦听器并将其修改为交换到不同的站点连接,如下所示:

但这失败了

Listener 类缺少 $commandPath 参数。

尝试在 fire() 或 handle() 方法中进行类似的数据库/站点交换会停止 $commandPath 错误,但它什么也不做,没有反馈,也没有开始处理数据库中的任何作业。

我不知道如何让它在多站点环境中工作,有没有人有任何想法或者我在这方面走错路了?

我的理想方案是能够运行一个单一的 Queue 命令,让主管监控它并跳过每个数据库检查。但如有必要,我也愿意为每个数据库/站点生成一个队列命令。

0 投票
3 回答
6740 浏览

laravel - laravel 反序列化/解码作业原始正文

我在这里遇到一个问题。样品会自己说话。

这就是 $job_details 的样子:

我想从 $job_details['data']['command'] 获取一些参数。有没有一些简单的方法可以做到这一点,或者我需要一些自制的灵魂?

0 投票
1 回答
7438 浏览

php - Laravel 数据库队列,几秒钟后“杀死”

我在我的 Laravel 项目中遇到问题,我正在尝试对大小约为450MB的FFMPEG视频文件进行转码,由于这需要很长时间,我在 Laravel 中使用队列来执行此操作。

由于我的生产环境的配置,我必须使用数据库队列,问题是每次我php artisan queue:work在我的Vagrant框中使用命令时,排队的作业在大约 60 秒后被终止。

Vagrant 盒子有 4GB 的可用内存,启用 2D 和 3D 加速,并且memory_peak_usage()在整个过程中,该命令从不列出超过 20MB 的任何内容。

我按预期检查了php_sapi_name()它的cli,因此它在执行时间方面根本不应该有任何限制,无论我转到 cli php.ini文件并再次删除任何限制以确定。

尝试重新启动流浪者,无论如何几秒钟后被杀死。

所以我决定尝试为转码过程创建一个 Laravel命令,我对文件路径和内容进行了硬编码,你瞧,它在没有被杀死的情况下工作......

我错过了关于队列的一些东西吗?我只是在运行php artisan queue:work我没有指定任何类型的超时,为什么我的队列被杀死了?

预先感谢您的帮助。

0 投票
2 回答
3168 浏览

laravel-5 - Laravel JobId 如何使用它来检查工作是否完成

我有问题如何检查作业是否完成。我到处寻找,但我没有看到 Laravel/Lumen 有什么可以使用的,我可能错过了一些。示例代码:

我已经安装了https://github.com/gilbitron/laravel-queue-monitor这真的很有帮助,可以保存已完成工作的数据。那里我也看不到任何东西。

我有 Lumen 5.4 框架。

0 投票
2 回答
2336 浏览

php - 收到错误:在 Laravel 中发送邮件队列时的“最大执行时间”

我使用 Laravel Mail Queue 发送快速邮件。

我有一个错误,如:

SendWelcomeEmail.php 中超过了 60 秒的最大执行时间(第 38 行)

很难描述我的错误,因为我没有使用 Laravel 的经验。所以,我试着一步一步地记录我所做的。

我的问题是:当用户单击发送信息时,Send Mail它被激活并且它使用了太多时间来完成这项工作。这对用户体验有影响。

我期待一个答案或其他方法来解决我的问题。

我的演示是一步一步制作的:

第 1 步

第 2 步:更新我的 .env 文件并设置电子邮件:

第 3 步

在函数__contruct()

功能build()

第 4 步:在views/emails/contact.blade.php是:

第 5 步:创建工作SendWelcomeEmail

它将创建SendWelcomeEmail.php如下所示:

最后:当用户单击提交表单时,将作业发送到队列app\Http\Controllers\RegisterForm.php

我运行两个命令:

并经过测试。它像问题一样显示错误。

0 投票
0 回答
929 浏览

laravel - 如何发送laravel重置密码电子邮件排队

我使用 laravel 5.4.20,我想让重置密码电子邮件排队。

我稍微定制了重置密码电子邮件(用于更改主题)。

首先我为它创建了通知:

然后我在我的应用程序/用户模型中使用了这个功能

电子邮件是正确的,它将发送。但现在我应该怎么做才能让这封电子邮件排队?谢谢你

0 投票
2 回答
896 浏览

php - Laravel Nexmo,使用通知时凭据错误

我正在尝试使用 Nexmo 和 Laravel 发送一些文本消息。当我直接在路由中发送消息时,它工作正常:

但是,当我尝试使用通知类发送短信时,我收到错误“凭据错误”。我一直在关注官方文档: https ://laravel.com/docs/5.5/notifications#sms-notifications

这是扩展通知的类:

我无法弄清楚为什么我在尝试使用通知类而在路由文件中完成工作时收到“错误凭据”错误?

谢谢!

编辑:调用 notify() 的控制器:

我还应该补充一点toNexmo()

0 投票
8 回答
19025 浏览

laravel - 运行 laravel 队列:在共享主机上工作

我希望我的 laravel queue:work 继续在共享主机上运行,​​这是一个共享主机(不在 VPS 上)我无法安装任何东西,因为在我搜索此内容时几乎所有在线资源都建议安装主管。所以基本上我想我可以创建一个 cron 作业来检查队列是否没有运行并启动它,关于如何解决这个问题的任何帮助,因为我有点卡住了,谢谢。

PS Am 在 Linux 服务器和 Laravel 5.3 上