easy-task基础入门使用说明

简介: easy-task基础入门使用说明

1.安装Composer包:

composer require easy-task/easy-task
执行上面的命令如果提示git is not recognized,说明你没有安装git

2.安装完成引入:

require './vendor/autoload.php';

//初始化
$task = new EasyTask\Task();

// 设置非常驻内存
$task->setDaemon(false);

// 设置项目名称
$task->setPrefix('EasyTask');

// 设置记录运行时目录(日志或缓存目录)
$task->setRunTimePath('./Application/Runtime/');

// 1.添加闭包函数类型定时任务(开启2个进程,每隔10秒执行1次)
$task->addFunc(function () {

$url = 'https://www.gaojiufeng.cn/?id=243';
@file_get_contents($url);

}, 'request', 10, 2);

// 2.添加类的方法类型定时任务(同时支持静态方法)(开启1个进程,每隔20秒执行1次)
$task->addClass(Sms::class, 'send', 'sendsms', 20, 1);

// 3.添加指令类型的定时任务(开启1个进程,每隔10秒执行1次)
$command = 'php /www/web/orderAutoCancel.php';
$task->addCommand($command,'orderCancel',10,1);

// 启动任务
$task->start();
3.代码解析

(3.1).setDaemon(false)
设置非后台运行,在windows下会启动php进程执行代码,你会看到几个黑色窗口在执行代码,在linux下会在当前终端执行代码。

(3.2).setDaemon(true)
设置后台运行,在windows下让进程在后台运行你看不到执行界面,在linux会常驻在内存中就算你关闭命令行窗口依然在执行。

(3.3).setPrefix('项目名称')
为当前的项目设置一个别名,推荐为英文,主要目的是为了方便区分项目,可以自定义。

(3.4).setRunTimePath('运行缓存或日志路径')
设置一个EasyTask运行日志和缓存文件保存的目录。

(3.5).addFunc(闭包函数,任务名称,执行间隔时间,启动进程数)
添加一个任务,每间隔多少秒执行下您设置的闭包函数中的代码。例如上面中在闭包函数设置请求一个url,每隔10秒执行一次闭包函数,并且开启了2个进程,那么10秒后闭包函数被执行2次

(3.6).addClass('类名称','类的方法','任务名称',执行间隔时间,启动进程数)
添加一个任务,每间隔多少秒执行下您设置的类的某个方法。例如上面的例子中每隔20秒就会执行您设置的Sms类的send方法

(3.7).addCommand('cmd/shell命令',任务名称,执行间隔时间,启动进程数)
添加一个任务,每间隔多少秒执行下您设置cmd命令或者shell命令,例如上面的例子中每隔10秒执行1次“php /www/web/orderAutoCancel.php”命令

(3.8).start()
启动添加的所有任务,启动后window下任务管理器即可看到对应的进程信息,切换详情信息即可看到启动的进程id

目录
相关文章
|
3月前
|
API 开发工具 网络架构
【Azure Developer】使用Python SDK去Azure Container Instance服务的Execute命令的疑问解释
【Azure Developer】使用Python SDK去Azure Container Instance服务的Execute命令的疑问解释
【Azure Developer】使用Python SDK去Azure Container Instance服务的Execute命令的疑问解释
|
4月前
|
分布式计算 大数据 Go
MaxCompute操作报错合集之使用go sdk调用GetTunnelEndpoint出现报错:InvalidAction.NotFoundSpecified api is not found,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
6月前
|
Go 微服务
4. 参考 go 代码——服务注册与发现
4. 参考 go 代码——服务注册与发现
|
6月前
|
Go
Go命令行解析神器入门 - 10分钟上手flag包
Go命令行解析神器入门 - 10分钟上手flag包
186 0
|
6月前
|
安全 Java Go
Go 调用 C/C++ 函数全攻略
Go 调用 C/C++ 函数全攻略
403 0
|
移动开发 机器人 数据安全/隐私保护
RobotFramework RobotFramework官方demo Quick Start Guide浅析
RobotFramework RobotFramework官方demo Quick Start Guide浅析
108 0
|
机器人 测试技术 数据库
RobotFramework 官方demo Quick Start Guide rst配置文件分析
RobotFramework 官方demo Quick Start Guide rst配置文件分析
148 0
|
开发框架 .NET 测试技术
如何使用go做命令行flag解析
如何使用go做命令行flag解析
102 0
|
监控
从源码与官方文档看之Handle篇(一)
之前的文章实在太肤浅,写出来其实很多都没有太大帮助,所以我们另起一个系列“从源码与官方文档看”。
111 0
|
Go API 开发者
Go 官方编程指南 | 学习笔记
快速学习 Go 官方编程指南
Go 官方编程指南 | 学习笔记