laravel Task Scheduling(任务调度)在windows下的使用详解


Posted in PHP onOctober 22, 2019

前言

laravel的任务调度是很好用的,因为Laravel提供了平滑而又富有表现力地调度器,并且服务器上只需要一个Cron条目即可,这使我们从编写手动写crontab中解放出来,使得程序重新获得定时任务的控制权。

但是,我们发现laravel的文档中只提供了linux/unix下的解决方案,但是我们大多数时候本地开发环境都是在windows下搭建的,所以,我们需要解决这些问题。

问题

本篇博客主要是围绕着如下几个问题展开

1. windows下,怎么使用laravel任务调度?

2. windows的计划任务能否替代crontab的工作?

3. 如何更好的使用windows的计划任务和laravel搭档?

解决方案

主要用到了windows任务计划程序,bat批处理,vbs脚本,有兴趣可以了解。

通过计划任务和批处理

这也是大家用到最多的方式了,stackoverflow一大半的回答都是这个。

1. 首先右键->新建->文本文档,任何位置都可以。

laravel Task Scheduling(任务调度)在windows下的使用详解

2. 将如下代码拷贝进去。第一行的意思是进去到项目目录,第二行语句是执行artisan命令

cd /d E:\\WWW\laravel\

php artisan schedule:run 1>> NUL 2>&1

laravel Task Scheduling(任务调度)在windows下的使用详解

3. 然后另存为.bat的文件就好啦,名字随意,后缀.bat。

laravel Task Scheduling(任务调度)在windows下的使用详解

4.然后就是创建计划任务,步骤图片如下所示,填写红框区域就好了

laravel Task Scheduling(任务调度)在windows下的使用详解

laravel Task Scheduling(任务调度)在windows下的使用详解

laravel Task Scheduling(任务调度)在windows下的使用详解

laravel Task Scheduling(任务调度)在windows下的使用详解

这个时候就会去调用laravel的任务调度了(前提是你已经在laravel里面编写好了任务调度),但是我们会发现,没过一分钟,都会有个dos命令的黑框弹出来,然后运行完了之后再关闭,这样会分散我们的注意力,于是就有了改进方案,请看方案二。

通过vb脚本,实现自动任务的静默执行

laravel Task Scheduling(任务调度)在windows下的使用详解

前提是,你已经做完了第一步所有操作,会发现dos会自动弹出来执行程序,一分钟一次(下图所示),人都会逼疯,所以有了此方案。

1. 首先你已经做完了解决方案第一部分的所有操作

2. 在任何位置(只要你记得),新建一个文本文档,然后编辑如下代码进去,最后另存为.vbs文件

Set ws = CreateObject("Wscript.Shell") 
ws.run "cmd /c E:\laravel.schedule.bat",vbhide

laravel Task Scheduling(任务调度)在windows下的使用详解

3.回到解决方案第一部分的第4步骤,编辑计划任务,将操作里面打开程序,从.bat脚本换成.vbs文件,步骤如下

laravel Task Scheduling(任务调度)在windows下的使用详解

laravel Task Scheduling(任务调度)在windows下的使用详解

laravel Task Scheduling(任务调度)在windows下的使用详解

这个时候,你会发现,你的计划程序任然在进行,但是再也看不到烦人的dos窗口啦,这样也就实现了linux下的crontab的功能啦。

总结

ok,弄这个,包括测试,也花了不少时间,但是编程的乐趣不就是对未知的探索吗? laravel确实是一个好的框架,接下来,我还会写关于laravel邮件,队列等博客。但是突然发现vb好像也挺有用处的,我有不少大胆的想法了

以上这篇laravel Task Scheduling(任务调度)在windows下的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php pcntl_fork和pcntl_fork 的用法
Apr 13 PHP
php 分页函数multi() discuz
Jun 21 PHP
PHP 危险函数全解析
Sep 09 PHP
允许phpmyadmin空密码登录的配置方法
May 29 PHP
php 短链接算法收集与分析
Dec 30 PHP
PHP基础学习之流程控制的实现分析
Apr 28 PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
Jun 24 PHP
PHP操作MySQL事务实例
Nov 05 PHP
php jsonp单引号转义
Nov 23 PHP
php读取flash文件高宽帧数背景颜色的方法
Jan 06 PHP
谈谈php对接芝麻信用踩的坑
Dec 01 PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
Dec 05 PHP
laravel 解决crontab不执行的问题
Oct 22 #PHP
laravel 解决paginate查询多个字段报错的问题
Oct 22 #PHP
在Laravel 中实现是否关注的示例
Oct 22 #PHP
Laravel 错误提示本地化的实现
Oct 22 #PHP
laravel 解决后端无法获取到前端Post过来的值问题
Oct 22 #PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
Oct 22 #PHP
Yii框架getter与setter方法功能与用法分析
Oct 22 #PHP
You might like
PHP原理之异常机制深入分析
2010/08/08 PHP
php 数组排序 array_multisort与uasort的区别
2011/03/24 PHP
php实现的简易扫雷游戏实例
2015/07/09 PHP
CI框架常用方法小结
2016/05/17 PHP
ThinkPHP中session函数详解
2016/09/14 PHP
PHP如何通过带尾指针的链表实现'队列'
2020/10/22 PHP
childNodes.length与children.length的区别
2009/05/14 Javascript
通过正则格式化url查询字符串实现代码
2012/12/28 Javascript
js字符串转换成xml对象并使用技巧解读
2013/04/18 Javascript
分享20款美化网站的 jQuery Lightbox 灯箱插件
2014/10/10 Javascript
JS实现网页表格自动变大缩小的方法
2015/03/09 Javascript
javascript实现数组内值索引随机化及创建随机数组的方法
2015/08/10 Javascript
jQuery插入节点和移动节点用法示例(insertAfter、insertBefore方法)
2016/09/08 Javascript
JavaScript中校验银行卡号的实现代码
2016/12/19 Javascript
自动适应iframe右边的高度
2016/12/22 Javascript
jQuery中 bind的用法简单介绍
2017/02/13 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
全面解析Node.js 8 重要功能和修复
2017/06/02 Javascript
BootStrap自定义popover,点击区域隐藏功能的实现
2018/01/23 Javascript
JavaScript数组排序小程序实现解析
2020/01/13 Javascript
vue - props 声明数组和对象操作
2020/07/30 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
2020/08/10 Javascript
Python中title()方法的使用简介
2015/05/20 Python
Python中pandas dataframe删除一行或一列:drop函数详解
2018/07/03 Python
解决python中遇到字典里key值为None的情况,取不出来的问题
2018/10/17 Python
图文详解Django使用Pycharm连接MySQL数据库
2019/08/09 Python
Python3.x+pyqtgraph实现数据可视化教程
2020/03/14 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
2020/06/29 Python
PyTorch预训练Bert模型的示例
2020/11/17 Python
优秀英语专业毕业生求职信
2013/11/23 职场文书
考试没考好检讨书
2014/01/31 职场文书
我的画教学反思
2014/04/28 职场文书
开展批评与自我批评发言材料
2014/05/15 职场文书
寝室长工作失责检讨书
2014/10/06 职场文书
2016年6月份红领巾广播稿
2015/12/21 职场文书
浅谈node.js中间件有哪些类型
2021/04/29 Javascript