Laravel 队列工作者与 cron

2024-01-09

我试图让我的网站在每次有人新注册时发送确认电子邮件。

我在阅读完相关内容后按照下面的方式做了,但我仍然不相信这是最好的方法。

在我的 cron 中每分钟运行并调用php artisan schedule:run

在我的控制台/内核中

protected function schedule(Schedule $schedule)
{
    $schedule->command('queue:work --once')->everyMinute()->withoutOverlapping();
}

我添加了 --once 参数,因为完成后队列工作程序不存在,并且我不希望每分钟运行许多新进程。

有没有一种方法可以让队列工作人员完成所有作业并退出,然后在一分钟后再次启动它,这样我就没有很多实例,或者只是一个实例?

我读到我可以返回 null 来退出工作人员,但如果可以做到这一点,那么我如何才能仅在最后一个工作完成后返回 null 呢?


对于任何仍在寻找解决方案的人,在 laravel 5.7 中,他们添加了支持运行队列中的所有作业,然后在所有作业完成后停止队列工作线程。

你的 cronjob 应该运行这个:php /path/to/laravel/artisan queue:work --stop-when-empty

Github 上的队列工作命令源代码 https://github.com/laravel/framework/blob/51cec6a7fafcc08212da8515fdc9e3d103e3fc06/src/Illuminate/Queue/Console/WorkCommand.php#L26

另外还有一个适用于旧版本 laravel 的软件包

奥罗博吉尼斯/sansdaemon https://github.com/orobogenius/sansdaemon

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Laravel 队列工作者与 cron 的相关文章

随机推荐

  • 自动将产品分配到 WooCommerce 中定义的产品类别

    在 Woocommerce 中 如果产品具有特定的自定义字段值 使用高级自定义字段插件生成此字段 我会尝试自动将给定的产品类别分配给产品 In my functions php我有 function auto add category pr
  • 使用 Visual C++ 将二维数组 int[n][m] 写入 HDF5 文件

    我刚刚开始使用 HDF5 希望得到有关以下内容的一些建议 我有一个二维数组 data 传递到一个方法中 该方法如下所示 void WriteData int data 48 100 int sizes 48 数据的大小实际上不是 48 x
  • CMake 和 XCode:“找不到‘NSObject’的接口声明”

    我正在尝试使用 CMake 生成 XCode 项目 但遇到了一些问题 CMake 生成的项目很好 但后来很明显它没有链接到 Foundation 和 UIKit 框架 我对 CMake 还很陌生 一直在努力克服这个问题 但没有成功 CMak
  • 匹配 IRC 昵称的正则表达式

    如何使用正则表达式来匹配 IRC 昵称 如果这会产生影响的话 这是在 Ruby 中完成的 可能会 使用正则表达式的语法 但谁知道呢 编辑 IRC 昵称可以包含任何字母 数字或以下任何字符 lt If you are testing a si
  • 创建新DataFrame的性能

    我很惊讶timings创建 DataFrames 的这个问题 https stackoverflow com q 41861846 2901002 30000 rows x 2 columns df pd concat pd DataFra
  • 在 Lance Game 中向各个玩家发送“秘密”数据

    我想知道 lance gg 中是否有一种简单的方法可以仅向每个玩家发送特定于玩家的数据 而不是向所有玩家发送所有数据 我希望创建一个扑克游戏 并且不希望每个玩家持有的数据向所有玩家广播 而是只让每个玩家接收有关他们自己的牌的信息 这在当前的
  • 使用 CTE 有哪些优点/缺点?

    我正在考虑提高某些 SQL 的性能 目前 CTE 在脚本中被多次使用和引用 使用表变量我会得到改进吗 不能使用临时表 因为代码位于函数内 您确实必须进行性能测试 没有是 否的答案 根据上面 Andy Living 的帖子链接 CTE 只是查
  • RESTful认证API设计

    我有一个关于 RESTful API 设计的问题 遵循 REST 的准则 所有端点都应该是名词并且是复数形式 并且永远不应该是动词 但是 通常将身份验证路由设置为 login logout 两者都是动词 如果您应该遵守指南 这些路线应该看起
  • JProfiler 错误:IDE 无法找到所选类

    我在 J Profiler 中遇到问题 当我单击 查看源代码 时 出现一些错误 提示 IDE 无法找到所选类并且无法查看源代码 编辑会话设置 选择 应用程序设置 选项卡 选择 Java 文件路径 部分中的 源路径 单选按钮 然后在其中添加源
  • MySQL子查询中的用户变量

    Query Output gt SELECT foo 1 foo SELECT foo SELECT foo FROM SELECT foo AS foo subselect foo 1 foo SELECT foo SELECT foo
  • Vue.js 将 items 中的 item 作为 prop 传递给组件:我会修改 prop 吗?

    Vue js 新手 从文档中 一个简单的示例是使用组件呈现列表中的每一项 如下所示
  • 如何在 tkinter python gui 中查找鼠标点击附近的标签

    我如何识别鼠标点击附近的标签 这里我的定义 识别 应该识别非常接近鼠标点击的标签 from Tkinter import root Tk f Frame root f grid w Canvas f line1 w create line
  • git-svn dcommiting 单个 git 提交

    给定多个未推送git承诺 是否有可能git svn dcommit只有其中一项提交 例如我已经提交了 foo bar 和 baz 但现在我只想让 bar 最终出现在 svn 存储库中 这可能吗 以下假设您的工作正在进行master 首先 重
  • 构建ndk库出错

    我有一个带有本机部分的 Android 项目 现在我试图让 eclipse 编译所有东西 但在本机编译期间它给了我这个错误 sh ndk build all ERROR You are using a non Cygwin compatib
  • 删除数据库文件和 sqllocaldb 后,底层提供程序在打开时失败

    我正在调查我的经历问题在这里 https stackoverflow com questions 13001441 delete mdf file from app data causes exception cannot attach t
  • 如何使用列表视图的 onitemclicklistener 更改仅选定列表视图行的布局

    我需要创建ListView like Samsung Contact List 我需要显示该行的自定义布局 而该行是swiped 并且还需要在该行的背景中显示联系方式 请给我一些想法或参考 谢谢 list setOnItemClickLis
  • 使用 CSS 进行水平对齐

    我有以下代码 div class one p Test p p span style color Green span p div 我认为这是一个非常简单的问题 但我不懂CSS 如何使段落在中心水平对齐 这里有两个问题 将包含该段落的 DI
  • 使用 asp.net 和 iis 在 geoserver 中进行身份验证

    我不知道这是否是一个愚蠢的问题 但是如何将 asp net 身份验证与 openlayers 结合 我创建了一个登录页面来在 openlayers 中进行身份验证 在 c 中 服务器端 这是我的代码 Uri uri new Uri http
  • 防止缓存单个js文件

    我的资产目录中有一个 js erb 文件 这会读取一些特定于区域设置的配置 但是 当底层配置更改时 新文件不会提供给我的浏览器 我得到 304 未修改 如果我通过添加空格来更改 js erb 文件 则新文件将正确提供 每次添加配置时都这样做
  • Laravel 队列工作者与 cron

    我试图让我的网站在每次有人新注册时发送确认电子邮件 我在阅读完相关内容后按照下面的方式做了 但我仍然不相信这是最好的方法 在我的 cron 中每分钟运行并调用php artisan schedule run 在我的控制台 内核中 prote