繁体   English   中英

Laravel 中的工匠命令超时

[英]Timeout of artisan commands in Laravel

我想用 Laravel 使用 Laravel Artisan 命令构建一个纯 cli 应用程序。

现在我想知道这些命令的行为是否像通过 CLI 调用的任何其他 php 脚本一样。正常的行为是通过 CLI 调用的 php 脚本可能永远运行。 这是我想要的 Artisan 命令的确切行为。

所以问题是:

  • 通过php artisan <command-category>:<command>调用的php artisan <command-category>:<command>是否超时?
  • 从 Artisan 命令触发的作业是否有超时(比较同步/数据库模式)?
  • 如果命令超时,从通过 CLI 调用的 php 脚本调用时它们是否也超时?

我有一个 FTP 服务器,它每天接收多次上传。 这些上传文件是大小高达 3GB 的 zip-archieves。 我想要构建的是一个脚本,是遍历所有档案并执行以下操作:

  1. 在兼容 s3 的存储系统 (DigitalOcean) 上备份存档
  2. 提取 ftp 服务器上的档案
  3. 将这些文件复制到另一个与 s3 兼容的存储系统上
  4. 删除 zip 文件的本地副本

通过 php artisan 调用的命令是否有超时?

默认情况下,Laravel 没有处理超时,因为它们只是一个普通的 php 进程。 因此没有办法扼杀这些漫长的工匠过程。

如前所述,可能导致干扰的唯一限制是您的 php 服务器。 例如, php.ini max_execution_time设置可能会干扰。

由于您正在传输文件,因此我认为像upload_max_filesize这样的设置可能会造成干扰。 但是,我不确定。

从 Artisan 命令触发的作业是否有超时(比较同步/数据库模式)?

所有的 artisan 命令基本上都是 php 进程。 与您的第一个问题相同的答案也适用于此。

如果命令超时,从通过 CLI 调用的 php 脚本调用时它们是否也超时?

是的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM