在已部署的生产系统上设置setup:cron:run和update / cron.php的原因来设置cronjob?


11

在Magento 2中,应将三个命令设置为cronjob

* * * * * <path to php binary> <magento install dir>/bin/magento cron:run | grep -v "Ran jobs by schedule" >> <magento install dir>/var/log/magento.cron.log
* * * * * <path to php binary> <magento install dir>/update/cron.php >> <magento install dir>/var/log/update.cron.log
* * * * * <path to php binary> <magento install dir>/bin/magento setup:cron:run >> <magento install dir>/var/log/setup.cron.log

第一个命令(magento cron:run)重新索引索引器,发送自动电子邮件,生成站点地图,等等。通常,它与PHP命令行.ini文件关联。其他两个命令由组件管理器和系统升级使用。

来源: http : //devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-cron.html

如果我正确理解了文档,update/cron.php并且bin/magento setup:cron:run仅用于管理面板中的模块安装和更新。

这是在正确部署的生产系统中不会发生的情况,在生产系统中,所有更新至少都首先在登台系统上完成,然后再移至生产中。

那么,有什么理由来建立这些cronjob?如果我将它们留在外面会发生什么变化?


那是update/cron.php哪里
拉斐尔在Digital Pianism

update目录不在GitHub存储库中,也无法在GitHub存储库中找到它vendor,composer似乎将其​​安装在任何地方。
Fabian Schmengler '16

有趣的是,我从GitHub进行安装,但找不到。
拉斐尔在Digital Pianism

在文档中对此进行了解释:“这些cron作业在Web设置向导中起作用,有贡献的开发人员无法使用它们来安装或更新Magento应用程序或组件。” (贡献的开发人员=从GitHub安装)
Fabian Schmengler

Answers:


4

仅在通过Web安装向导进行升级的过程中使用Updater和Setup cron作业。特别是,启用安装程序组件和更新程序应用程序之间的消息交换。因此,如果您不打算使用Web安装向导,则可以安全地禁用这些cron作业。可能发生的最坏的情况是,在尝试使用Web安装向导时,准备检查失败。

Updater是独立于Magento本身的应用程序。它仅在通过Web设置向导进行Magento升级期间使用,并且作为Magento 项目包的一部分分发(不作为Magento模块提供,也不包含在Magento产品元包中)。它生活在一个单独的私有git仓库中。

由于更新程序无法自行升级,因此它是Magento中唯一的组件,只能通过CLI手动升级。这意味着您在Magento升级期间不会自动获得更新的更新程序版本。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.