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数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
Oct 29 PHP
PHP转换文件夹下所有文件编码的实现代码
Jun 06 PHP
php中通过数组进行高效随机抽取指定条记录的算法
Sep 09 PHP
PHP根据IP判断地区名信息的示例代码
Mar 03 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十四)
Jun 26 PHP
Linux下PHP安装mcrypt扩展模块笔记
Sep 10 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
Jul 06 PHP
深入讲解PHP Session及如何保持其不过期的方法
Aug 18 PHP
tp5(thinkPHP5)框架数据库Db增删改查常见操作总结
Jan 10 PHP
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
Apr 10 PHP
laravel实现一个上传图片的接口,并建立软链接,访问图片的方法
Oct 12 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
Jan 04 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
模仿OSO的论坛(二)
2006/10/09 PHP
基于Zend的Captcha机制的应用
2013/05/02 PHP
PHP实现判断数组是一维、二维或几维的方法
2017/02/06 PHP
PHP简单读取xml文件的方法示例
2017/04/20 PHP
网页图片延时加载的js代码
2010/04/22 Javascript
基于jquery的滚动新闻列表
2010/06/19 Javascript
jQuery 图片切换插件(代码比较少)
2012/05/07 Javascript
javascript数组去重的六种方法汇总
2015/08/16 Javascript
jquery仅用6行代码实现滑动门效果
2015/09/07 Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
2016/01/27 Javascript
js实现千分符和保留几位小数的简单实例
2016/08/01 Javascript
js removeChild 方法深入理解
2016/08/16 Javascript
nodejs multer实现文件上传与下载
2017/05/10 NodeJs
vue-router单页面路由
2017/06/17 Javascript
vue中SPA单页面应用程序详解
2017/11/07 Javascript
JS简单生成由字母数字组合随机字符串示例
2018/05/25 Javascript
讲解vue-router之什么是嵌套路由
2018/05/28 Javascript
JavaScript中的ES6 Proxy的具体使用
2019/06/16 Javascript
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
2020/02/14 Javascript
[02:01]大师之路——DOTA2完美大师赛11月论剑上海
2017/11/06 DOTA
[01:11:02]Secret vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
[39:18]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第二场 12.17
2020/12/19 DOTA
Python实现替换文件中指定内容的方法
2018/03/19 Python
pycharm执行python时,填写参数的方法
2018/10/29 Python
Python实现平行坐标图的两种方法小结
2019/07/04 Python
pytorch 可视化feature map的示例代码
2019/08/20 Python
python3中利用filter函数输出小于某个数的所有回文数实例
2019/11/24 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
使用python求斐波那契数列中第n个数的值示例代码
2020/07/26 Python
linux系统下pip升级报错的解决方法
2021/01/31 Python
戴森西班牙官网:Dyson西班牙
2020/02/04 全球购物
优秀实习自我鉴定
2013/12/04 职场文书
活动策划邀请函
2014/02/06 职场文书
合作经营协议书范本
2014/04/17 职场文书
党员干部四风问题整改措施思想汇报
2014/10/12 职场文书
详解Spring Security如何在权限中使用通配符
2022/06/28 Java/Android