Laravel实现定时任务的示例代码

Laravel实现定时任务的示例代码

https://mp.weixin.qq.com/s/VUEqjwcHRb0ovhP0wup36A

最近在玩Laravel实现定时任务,这个是示例代码,可以参照这个实例。有需要的可以看看

定时任务是后端开发过程中一项十分常见的需求,常出现在数据统计、垃圾信息清理等场景中。Laravel 提供了一整套的定时任务工具,让我们只需要专注地完成逻辑,剩下的基础工作将由它来承担。

基本用法

生成命令

php artisan make:command AreYouOK

5.2 及之前的版本,此命令为 `php artisan make:console xxx`

 

编辑命令

编辑 `app/Console/Commands/AreYouOK.php` 文件,修改如下几处:

... ...
protected $signature = 'areyou:ok'; // 命令名称
protected $description = '雷军,科技圈最会唱歌的男人'; // 命令描述,没什么用

public function __construct()
{
  parent::__construct();
  // 初始化代码写到这里,也没什么用
}
public function handle()
{
  // 功能代码写到这里
}

注册命令

编辑 `app/Console/Kernel.php` 文件,将新生成的类进行注册:

 

protected $commands = [
  \App\Console\Commands\AreYouOK::class,
];

 

编写调用逻辑:app/Console/Kernel.php` 文件

protected function schedule(Schedule $schedule)
{
  $schedule->command('areyou:ok')
       ->timezone('Asia/Shanghai')
       ->everyMinute();
}

上面的逻辑是每分钟调用一次。Laravel 提供了从一分钟到一年的各种长度的时间函数,直接调用即可。

把这个 Laravel 项目注册到系统的 cron 里

编辑 `/etc/crontab` 文件,加入如下代码:

* * * * * root /usr/bin/php /var/www/xxxlaravel/artisan schedule:run >> /dev/null 2>&1

上面一行中的 `/var/www/xxxlaravel` 需要改为实际的路径。

fire

重启 cron 激活此功能:

systemctl restart crond.service

搞定!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113117.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 安装python应该先安装pycharm还是python_Pycharm及python安装详细步骤及PyCharm配置整理(推荐)…「建议收藏」

    安装python应该先安装pycharm还是python_Pycharm及python安装详细步骤及PyCharm配置整理(推荐)…「建议收藏」首先我们来安装python1、首先进入网站下载:点击打开链接(或自己输入网址:https://www.python.org/downloads/),进入之后如下图,选择图中红色圈中区域进行下载。2、下载完成后如下图所示3、双击exe文件进行安装,如下图,并按照圈中区域进行设置,切记要勾选打钩的框,然后再点击Customizeinstallation进入到下一步:4、对于上图中,可以通过Brow…

    2022年8月28日
  • intellij idea2021.5激活码【注册码】

    intellij idea2021.5激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
  • 蓝桥杯真题汇总[通俗易懂]

    第九届A组:1.分数2.星期一​​​​​​3.乘积尾零4.第几个幸运数5.打印图形6.航班时间8.全球变暖9.倍数问题10.​​​​​​​付账问题

    2022年4月18日
  • exponential backoff algorithm「建议收藏」

    exponential backoff algorithm「建议收藏」在看NDN的默认转发策略BestRouteStrategy中提到了指数退避算法,回忆了一下,即为:在一个共享信道的情况下,当网络上的节点在发生冲突时,每个节点节点等待一定的时间后重新发送。在二进制指数退避算法中,等待时间随着以二为底的指数增长。如果重试失败,那么下次的等待时间将会是上次的等待时间二倍。如果重试次数大于最大重试次数,那么包将从包队列中去除。

    2022年6月16日
  • 各种光纤接口类型介绍图_光纤sc接口是什么形状

    各种光纤接口类型介绍图_光纤sc接口是什么形状各种光纤接口类型介绍ST、SC、FC光纤接头是早期不同企业开发形成的标准,使用效果一样,各有优缺点。ST、SC连接器接头常用于一般网络。ST头插入后旋转半周有一卡口固定,缺点是容易折断;SC连接头直接插拔,使用很方便,缺点是容易掉出来;FC连接头一般电信网络采用,有一螺帽拧到适配器上,优点是牢靠、防灰尘,缺点是安装时间稍长。MTRJ型光纤跳线由两个高精度塑

    2022年10月25日
  • java中的next()方法,nextline()方法,hasnext()方法的用法系列(1)。

    java中的next()方法,nextline()方法,hasnext()方法的用法系列(1)。这是王秀秀的第23篇博客????看下方目录next()方法nextline()方法hasnext()方法最近本菜鸡做题呀,遇到了一些很好玩的事情,那就是scanner类中的一些方法,经过了解后,真挺好玩的。next()方法话不多说上代码importjava.util.Scanner;publicclassnext_and_nextline{ publicstaticvoid…

    2022年5月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号