在magento中设置cron作业

时间:2015-04-02 06:15:43

标签: php linux magento cron

我已提及magentocommerce.com来设置cron作业。我实现了从中得到的东西。起初我在config.xml文件中添加了cront选项卡。我为我的模块“Ownmodule_Autocancel”所做的工作如下所示:

<crontab>
        <jobs>
            <ownmodule_auto_cancel>
                <schedule><cron_expr>*/5 * * * *</cron_expr></schedule>
                <run><model>order/observer::cancelPendingOrders</model></run>
            </ownmodule_auto_cancel>
        </jobs>
</crontab>

然后我在linux中打开终端,获得了文件权限,

  

crontab -e

     

* / 5 * * * * php -q /var/www/LIVE/magento/cron.php

     

Ctrl + x - &gt; Y(保存)

     

ps aux | grep ping(我在终端窗口得到的是)

     

itss 7746 0.0 0.1 95996 2664? Sl 09:29 0:00 / usr / lib / i386-linux-gnu / unity-lens-shopping / unity-shopping-daemon

     

itss 10106 0.0 0.0 4436 820 pts / 0 S + 11:18 0:00 grep --color = auto ping

     

杀死7746

     

ps aux | grep ping(我在终端窗口得到的是)

     

itss 10106 0.0 0.0 4436 820 pts / 0 S + 11:18 0:00 grep --color = auto ping

     

crontab -l(我在终端窗口得到的是)

     

* / 5 * * * * php -q / var / www / LIVE / magento / cron.php

但事情并非如此。我不知道如何在后端cron(计划任务)中安排时间5分钟。请检查上述工作并给我正确的解决方案。这是为我的模块完成的。如果我错过了设置cron工作的其他任务,请告诉我。

1 个答案:

答案 0 :(得分:0)

在每个cron.php运行中,系统会安排所有应该及时启动的作业等于&#34;预先计划&#34;领域。然后它检查是否应该运行所有挂起(已安排)的作业,如果是,则启动该过程。

&#34;生成每个时间表&#34;是生成到队列的调度之间的时间间隔。 &#34;提前计划&#34;是一个时间间隔,它确定将cronjobs添加到待处理队列中的时间。

所以基本上你应该设置&#34;预先计划&#34;与&#34;生成时间表相同&#34;或者更大一些。时间取决于您,但它应该大于您在SSH crontab中设置的时间。

要检查crontab是否正常工作,您可以检查数据库表&#34; cron_schedule&#34;查看是否安排了任何工作。

是&#34; php&#34;或者&#34; usr / bin / php&#34;取决于服务器。它可能是&#34; usr / local / bin / php&#34;。