在magento中设置cron作业


cron job setup in magento

我已经参考了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->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 4436 820分/0 S+1:18 0:00 grep--color=自动ping

杀死7746

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

itss 10106 0.0 4436 820分/0 S+1:18 0:00 grep--color=自动ping

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

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

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

在每次运行cron.php时,系统都会调度所有作业,这些作业应该在等于"Schedule Ahead for"字段的时间内启动。然后,它检查是否所有挂起的(已调度的)作业都应该运行,如果是,则启动该进程。

"Generate Schedules Every"是计划生成到队列之间的时间间隔。"Schedule Ahead for"是一个时间间隔,用于确定将cronjobs添加到挂起队列中的时间间隔。

因此,基本上,您应该将"Schedule Ahead for"设置为与"Generate Schedules Every"相同或稍大。时间由您决定,但应该大于您在SSH crontab中设置的时间。

若要检查crontab是否工作,可以检查数据库表"cron_schedule"以查看是否有任何作业已调度。

它是"php"还是"usr/bin/php"取决于服务器。它可以是"usr/local/bin/php"。