问题标签 [laravel-horizon]

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 投票
12 回答
78621 浏览

php - 如何解决“laravel/horizo​​n v1.1.0 需要 ext-pcntl * -> 您的系统中缺少请求的 PHP 扩展 pcntl”?

当我composer install在命令提示符下运行时,存在如下错误:

我该如何解决这个错误?

0 投票
1 回答
4281 浏览

php - Redis“从服务器读取行时出错。” Laravel 5.6 升级后

今天升级到 Laravel 5.6 后,我遇到了很多 Redis 错误,都说:

应用程序堆栈包括:

  • 拉拉维尔 5.6
  • 地平线 1.0.6
  • 回声 1.3.2
  • Laravel 回声服务器 1.3.6

在 5.5 上一切都运行顺利,我发现的所有文档似乎都没有解决这种情况。除了一些 Cache 使用外,没有通过外观或应用程序内的服务容器之外的 Redis 使用。

有没有其他人遇到过这个?我已经三次检查了升级指南以及 GitHub 发行说明,没有任何内容被认为是可疑的。根据堆栈跟踪,它似乎与 Horizo​​n 相关。

全栈跟踪

0 投票
1 回答
225 浏览

laravel - 我可以在 Laravel 5.3 中安装 Laravel Horizo​​n 吗?

我的项目使用 laravel 5.3

我想在我的项目中实现 laravel Horizo​​n

我在文档 laravel 5.3 中搜索参考。但我没找到。它似乎只存在于 laravel 5.5

我可以在 laravel 5.3 中安装 laravel horizion 吗?

0 投票
1 回答
1974 浏览

php - 工匠队列:工作和工匠地平线:工作有什么区别?

我在 Horizo​​n 中使用 Laravel 队列和 Redis。主管正在运行artisan horizon,这反过来又产生了进程/usr/bin/php7.2 artisan horizon:work redis

是否需要运行queue:work或者 Horizo​​n 已经可以自己处理队列?

0 投票
1 回答
2001 浏览

php - Laravel 5.5 - Horizo​​n 没有自动运行第二个队列

在 Forge 上使用 Laravel Horizo​​n 和 Redis,我有一个default队列和一个notifications队列。

通知作业都是在最近的作业下以暂停状态建立的,不会得到处理。这是使用的代码:

我发现处理它们的唯一方法是显式手动运行以下命令进行notifications处理:

这不应该是自动的吗?我错过了什么?

0 投票
1 回答
4000 浏览

php - Laravel - 作业报告失败(即使它正确退出)

我正在使用最新版本的 Homestead。我也设置了 Laravel Horizo​​n。我使用 Redis 作为队列驱动程序。Laravel 是 5.6 版,是全新安装的。

发生的事情是我的工作都失败了(即使工作正确退出)。

我正在使用自定义命令通过命令行运行作业:

应用程序/控制台/命令/crawl.php

应用程序/工作/Crawl.php

应用程序/Crawl.php

工人日志

来自 Horizo​​n 失败的工作细节

laravel-worker.conf

配置/队列.php

.env

概要

看着我的worker.log我可以看到我的班级的输出已经奏效:

但该作业被报告为失败。为什么?奇怪的是,同样在 中,它对一份工作worker.log说两次:Processing

任何帮助是极大的赞赏!

更新

删除exit()已解决问题 - 这很奇怪,因为 PHP 手册说您可以使用exit()“正常”退出程序:

https://secure.php.net/manual/en/function.exit.php
0 投票
1 回答
2662 浏览

laravel - Laravel Homestead 中没有主管在运行

我最近在一个在 Homestead Vagrant 盒子上运行的 Laravel 项目上安装了 Horizo​​n。

我的问题是队列工作人员没有接任任何工作。我没有主管:

这是我的主管(horizo​​n.conf)配置:

当我启动这台机器时,我的日志和 Web 界面显示“ Horizo​​n 已成功启动。 ”。

而我的地平线(horizo​​n.php)配置:

我的主管似乎也很活跃:

关于我的主管为什么不工作的任何想法或想法?

0 投票
1 回答
2658 浏览

php - Laravel 5.5 - 队列事件监听器的 Horizo​​n 自定义作业标签

Horizo​​n 的文档中,它提到可以将自定义标签添加到排队的事件侦听器中。但是,我找不到任何方法来拉入包含我需要的数据的事件实例。给出的示例使用类型提示将相关模型从服务容器中拉出,并将其分配给构造函数中的实例变量,然后在tags()方法中使用该实例变量来获取有关正在操作的特定模型实例的数据。

但是,在排队的事件侦听器中执行此操作时,它不起作用。事实上,构造函数似乎根本没有被调用,因为模型在执行时被序列化并“重新水化”。所以构造函数中的类型提示什么都不做,并且tags()似乎在之前被调用过handle(),所以我无法访问我正在收听的事件对象。

有谁知道在这种情况下如何在标签中获取事件信息?

更新:

控制器中调用的事件:

事件PostWasCreated

侦听器PostWasCreatedNotificationSend

这个问题$this->queueTags永远不会被分配,所以在 Horizo​​n 中没有标签用于这个排队的监听器......(虽然显示了队列名称,但我们也需要标签)。

0 投票
0 回答
838 浏览

laravel - 未在生产环境中使用 Laravel 和 Mailgun 发送邮件

我正在使用MailablewithShouldQueueQueueabletrait。在我的本地机器上触发邮件时,邮件被发送。但是邮件不会发送,在生产中使用相同的Mailgun 环境。由于我的邮件已排队,因此我尝试同时使用syncredis。在我的本地机器上,这些都可以工作,但同样,在生产环境中也不能。

我已经添加\Log::info("Building mail");build()邮件中的方法。该消息已记录,并且使用Laravel Horizo​​n我检查了该作业是否被解雇。但是,不会向Mailgun发送任何邮件(检查日志,而不仅仅是实际邮件)。我还清除了配置缓存以确保没有错误地缓存任何内容。

这里似乎有什么问题?会不会是某种防火墙问题?日志中没有提供错误,Horizo​​n 也没有提供错误。生产服务器在Laravel Forge上,我在设置服务器时使用了 Chris Fidao 的本指南。

0 投票
1 回答
1988 浏览

laravel-5 - Laravel Horizo​​n:作业总是被暂停

在 Laravel Horizo​​n 仪表板上,某些作业总是显示为“暂停”:

在此处输入图像描述

我怎样才能防止这个问题?