laravel 任务调度

任务调度 

 

当我第一次听到任务调度的时候, 我发现这个概念完全令人折服,正是因为这个激励我在PHP中实现了它. 同时我发现任务调度真正非常的令人惊叹:在令人敬畏的代码和一大堆乱代码之间只有一线之隔,我认为任务调度恰好处在这条线上, 不多不少. 

举例 来说 明使用 任务调度  

当你生产一些 数据 但是不必要 直接 入库的时候 

你可以这样去做  

你可以吧 这些数据 隔一天的时候查询展现的出来

你需要的做的事情 就是 把今天的数据 缓存起来 

然后 用任务调度 存储起来  

然后任务调度 存储进去 

听着 是不是 感觉很蠢 为什么不直接  入库  

当你的服务器  硬件 不够用的时候  产生 大批量的数据的时候 

你可能出现 mysql 实物锁的时候  会丢失 一些数据 

你的进程 

 

使用任务调度的是 把今天的数据 一起 12点00的时候入库 

 

不说废话了 其实我也是个渣渣  (仁者见仁)

//生成文件  大家都懂 

 php artisan make:console  你的任务名称 (console提示无此命令的话,改用 command)

 

protected $signature = ‘你的任务名称’;

/**
 * The console command description.
 *
 *
@var string
 */

protected $description = ‘备注 ‘;

 

自带 传参 

-自定义命令文件实现 修改:

- 主要:

-配置(命令名,及参数,描述等信息):

protected $signature = 'email:send {1}';//传入1个参数

 

protected $signature = 'email:send {1}{2}'; //传入2个参数,个数按 "," 算,逗号分割几个值,代表有几个入参 !import

 

Kernel.php 文件  

protected $commands = [

Commands\name::class,

 

] 调度 的

   /**
     * Define the application's command schedule.
     *
     *
@param  \Illuminate\Console\Scheduling\Schedule  $schedule
     *
@return void
     */
   
protected function schedule(Schedule $schedule)
    {
        try {
            $schedule->command(‘name’)->everyMinute()->withoutOverlapping();
        } catch (\Exception $e) {
//            $this->SaveCrontabRecord('抛出异常', $e->getMessage());
        }
    }

 

其实简单的任务命令 就可以用了

php artisan  name  是不是 感觉很有成就感

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值