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验证码(支持中文)
Feb 14 PHP
PHP 文件上传全攻略
Apr 28 PHP
PHP+ACCESS 文章管理程序代码
Jun 21 PHP
使用php判断浏览器的类型和语言的函数代码
Feb 28 PHP
php 生成唯一id的几种解决方法
Mar 08 PHP
解析php中session的实现原理以及大网站应用应注意的问题
Jun 17 PHP
php二维数组排序方法(array_multisort usort)
Dec 25 PHP
PHP数据库操作之基于Mysqli的数据库操作类库
Apr 19 PHP
Symfony的安装和配置方法
Mar 17 PHP
Yii框架使用魔术方法实现跨文件调用功能示例
May 20 PHP
Yii 使用intervention/image拓展实现图像处理功能
Jun 22 PHP
解决Laravel blade模板转义html标签的问题
Sep 03 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
音乐朗读剧《MARS RED》2021年TV动画化决定!
2020/03/06 日漫
在PHP3中实现SESSION的功能(一)
2006/10/09 PHP
pdo中使用参数化查询sql
2011/08/11 PHP
Smarty实现页面静态化(生成HTML)的方法
2016/05/23 PHP
PHP巧妙利用位运算实现网站权限管理的方法
2017/03/12 PHP
js 变量类型转换常用函数与代码[比较全]
2009/12/01 Javascript
javascript OFFICE控件测试代码
2009/12/08 Javascript
基于jquery的内容循环滚动小模块(仿新浪微博未登录首页滚动微博显示)
2011/03/28 Javascript
JS对象与JSON格式数据相互转换
2012/02/20 Javascript
javascript操作excel生成报表示例
2014/05/08 Javascript
当滚动条滚动到页面底部自动加载增加内容的js代码
2014/05/13 Javascript
javascript实现淡蓝色的鼠标拖动选择框实例
2015/05/09 Javascript
详细分析JavaScript变量类型
2015/07/08 Javascript
javascript实现在线客服效果
2015/07/15 Javascript
JavaScript中split与join函数的进阶使用技巧
2016/05/03 Javascript
jQuery使用getJSON方法获取json数据完整示例
2016/09/13 Javascript
vue+vuex+axio从后台获取数据存入vuex实现组件之间共享数据
2017/04/22 Javascript
详解vue中computed 和 watch的异同
2017/06/30 Javascript
详解JS模块导入导出
2017/12/20 Javascript
Angular简单验证功能示例
2017/12/22 Javascript
vue轻量级框架无法获取到vue对象解决方法
2019/05/12 Javascript
vue使用swiper.js重叠轮播组建样式
2019/11/14 Javascript
HTML元素拖拽功能实现的完整实例
2020/12/04 Javascript
Python代码实现KNN算法
2017/12/20 Python
Python3网络爬虫开发实战之极验滑动验证码的识别
2019/08/02 Python
详解解决Python memory error的问题(四种解决方案)
2019/08/08 Python
Tensorflow使用Anaconda、pycharm安装记录
2020/07/29 Python
Under Armour瑞典官方网站:美国高端运动科技品牌
2018/11/21 全球购物
Lululemon英国官网:加拿大瑜伽服装品牌
2019/01/14 全球购物
改变生活的男士内衣:SAXX Underwear
2019/08/28 全球购物
Stokke美国官方网店:高级儿童家具、推车、汽车座椅和配件
2020/06/06 全球购物
市场总经理岗位职责
2014/04/11 职场文书
团干部培训方案
2014/06/03 职场文书
常务副总经理岗位职责
2015/02/02 职场文书
杭州西湖英语导游词
2015/02/03 职场文书
光之国的四大叛徒:第一贝利亚导致宇宙毁灭,赛文奥特曼在榜
2022/03/18 日漫