# 接口化秒级定时任务
## 概述
基于 **Workerman** + **MySQL** 的接口化秒级定时任务管理,兼容 Windows 和 Linux 系统。
## 定时器格式说明
```
0 1 2 3 4 5
| | | | | |
| | | | | +------ day of week (0 - 6) (Sunday=0)
| | | | +------ month (1 - 12)
| | | +-------- day of month (1 - 31)
| | +---------- hour (0 - 23)
| +------------ min (0 - 59)
+-------------- sec (0-59)[可省略,如果没有0位,则最小时间粒度是分钟]
```
## 简单使用
- **新建 run.php**
```php
<?php
require_once "./vendor/autoload.php";
use Fairy\HttpCrontab;
date_default_timezone_set('PRC');
//数据库配置
//启动脚本后会自行创建所需的数据表
//定时器任务执行日志按月自动分表
$dbConfig = [
'hostname' => '127.0.0.1',
'hostport' => '3306',
'username' => 'root',
'password' => 'root',
'database' => 'test',
'charset' => 'utf8mb4'
];
//启动后默认监听 http://127.0.0.1:2345
//可在new的时候传递第一个参数改变监听地址
(new HttpCrontab())->setDebug(true)
->setName('System Crontab')
->setDbConfig($dbConfig)
->run();
```
- **启动服务**
![](https://i.loli.net/2021/09/23/dTGRMSjkQZyWIbH.png)
## 集成项目
[**easyadmin** ](https://github.com/cshaptx4869/easyadmin)是基于 ThinkPHP6.1 和 Layui2.7 的快速开发的后台管理系统。
- **启动服务**
![](https://foruda.gitee.com/images/1680915958035390338/0f322a61_5507348.jpeg)
```bash
$ php think crontab -h
Usage:
crontab [options] [--] <action>
Arguments:
action start|stop|restart|reload|status|connections
Options:
-d, --daemon Run the http crontab server in daemon mode.
--name[=NAME] Crontab name [default: "Crontab Server"]
--debug Print log
-h, --help Display this help message
-V, --version Display this console version
-q, --quiet Do not output any message
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
```
- **UI操作界面**
![](https://foruda.gitee.com/images/1680915293572426711/2433d945_5507348.jpeg)
<h1 class="curproject-name"> 定时器接口说明 </h1>
## PING
<a id=PING> </a>
### 基本信息
**Path:** /crontab/ping
**Method:** GET
**接口描述:**
<pre><code>{
"code": 200,
"data": "pong",
"msg": "信息调用成功!"
}
</code></pre>
### 请求参数
### 返回数据
<table>
<thead class="ant-table-thead">
<tr>
<th key=name>名称</th><th key=type>类型</th><th key=required>是否必须</th><th key=default>默认值</th><th key=desc>备注</th><th key=sub>其他信息</th>
</tr>
</thead><tbody className="ant-table-tbody"><tr key=0-0><td key=0><span style="padding-left: 0px"><span style="color: #8c8a8a"></span> code</span></td><td key=1><span>number</span></td><td key=2>非必须</td><td key=3></td><td key=4><span style="white-space: pre-wrap"></span></td><td key=5></td></tr><tr key=0-1><td key=0><span style="padding-left: 0px"><span style="color: #8c8a8a"></span> data</span></td><td key=1><span>string</span></td><td key=2>非必须</td><td key=3></td><td key=4><span style="white-space: pre-wrap"></span></td><td key=5></td></tr><tr key=0-2><td key=0><span style="padding-left: 0px"><span style="color: #8c8a8a"></span> msg</span></td><td key=1><span>string</span></td><td key=2>非必须</td><td key=3></td><td key=4><span style="white-space: pre-wrap"></span></td><td key=5></td></tr>
</tbody>
</table>
## 修改
<a id=修改> </a>
### 基本信息
**Path:** /crontab/modify
**Method:** POST
**接口描述:**
<pre><code>{
"code": 200,
"data": true,
"msg": "信息调用成功!"
}
</code></pre>
### 请求参数
**Headers**
| 参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
| ------------ | --------------------------------- | -------- | ---- | ---- |
| Content-Type | application/x-www-form-urlencoded | 是 | | |
**Body**
| 参数名称 | 参数类型 | 是否必须 | 示例 | 备注 |
| -------- | -------- | -------- | ------ | --------------------------------- |
| id | text | 是 | 1 | |
| field | text | 是 | status | 字段[status; sort; remark; title] |
| value | text | 是 | 1 | 值 |
### 返回数据
<table>
<thead class="ant-table-thead">
<tr>
<th key=name>名称</th><th key=type>类型</th><th key=required>是否必须</th><th key=default>默认值</th><th key=desc>备注</th><th key=sub>其他信息</th>
</tr>
</thead><tbody className="ant-table-tbody"><tr key=0-0><td key=0><span style="padding-left: 0px"><span style="color: #8c8a8a"></span> code</span></td><td key=1><span>number</span></td><td key=2>非必须</td><td key=3></td><td key=4><span style="white-space: pre-wrap"></span></td><td key=5></td></tr><tr key=0-1><td key=0><span style="padding-left: 0px"><span style="color: #8c8a8a"></span> data</span></td><td key=1><span>boolean</span></td><td key=2>非必须</td><td key=3></td><td key=4><span style="white-space: pre-wrap"></span></td><td key=5></td></tr><tr key=0-2><td key=0><span style="padding-left: 0px"><span style="color: #8c8a8a"></span> msg</span></td><td key=1><span>string</span></td><td key=2>非必须</td><td key=3></td><td key=4><span style="white-space: pre-wrap"></span></td><td key=5></td></tr>
</tbody>
</table>
## 列表
<a id=列表> </a>
### 基本信息
**Path:** /crontab/index
**Method:** GET
**接口描述:**
<pre><code>{
"code": 200,
"data": {
"list": [
{
"id": 1,
"title": "输出 tp 版本",
"type": 0,
"frequency": "*/3 * * * * *",
"shell": "php think version",
"running_times": 3,
"last_running_time": 1625636646,
"remark": "没3秒执行",
"sort": 0,
"status": 1,
"create_time": 1625636609,
"update_time": 1625636609
}
],
"count": 1
},
"msg": "信息调用成功!"
}
</code></pre>
### 请求参数
**Query**
| 参数名称 | 是否必须 | 示例 | 备注 |
| -------- | -------- | ------------------------ | ------------ |
| page | 是 | 1 | 页码 |
| limit | 是 | 15 | 每页条数 |
| filter | 否 | {"title":"输出 tp 版本"} | 检索字段值 |
| op | 否 | {"title":"%*%"} | 检索字段操作 |
### 返回数据
<table>
<thead class="ant-table-thead">
<tr>
<th key=name>名称</th><th key=type>类型</th><th key=required>是否必须</th><th key=default>默认值</th><th key=desc>备注</th><th key=sub>其他信息</th>
</tr>
</thead><tbody className="ant-table-tbody"><tr key=0-0><td key=0><span style="padding-left: 0px"><span style="color: #8c8a8a"></span> code</span></td><td key=1><span>number</span></td><td key=2>非必须</td><td key=3></td><td key=4><span st
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
SparkShop开源可商用小程序H5和PC端带分销功能 (2000个子文件)
1 0B
1 0B
1 0B
1 0B
.phpunit.result.cache 183B
style.css 422KB
element_ui.css 234KB
bootstrap.min.css 159KB
bootstrap.min.css 124KB
layui.css 117KB
animate.min.css 59KB
ueditor.css 43KB
style.css 35KB
ueditor.min.css 34KB
video-js.css 22KB
image.css 18KB
swiper-bundle.min.css 16KB
home.css 16KB
user.css 15KB
video.css 15KB
diy.css 15KB
attachment.css 14KB
goods.css 11KB
video-js.min.css 11KB
order.css 10KB
uniicons.css 8KB
shCoreDefault.css 7KB
scrawl.css 5KB
message.css 4KB
goods_cate.css 4KB
install.css 3KB
codemirror.css 3KB
htmlDescriptor.css 3KB
background.css 3KB
meanmenu.min.css 3KB
charts.css 3KB
login.css 2KB
coupon.css 2KB
cart.css 2KB
emotion.css 2KB
music.css 2KB
iconfont.css 2KB
dialogbase.css 2KB
style.css 1KB
iconfont.css 1KB
iconfont.css 1KB
template.css 1KB
edittable.css 1KB
iconfont.css 895B
seckill.css 791B
webuploader.css 567B
help.css 498B
iframe.css 41B
.php_cs.dist 3KB
phpunit.xml.dist 826B
.editorconfig 337B
install.env 278B
.example.env 231B
iconfont.eot 53KB
vjs.eot 3KB
UEditorSnapscreen.exe 508KB
wface.gif 49KB
jxface2.gif 40KB
yface.gif 28KB
bface.gif 27KB
icons.gif 20KB
file-icons.gif 20KB
file-icons.gif 20KB
tface.gif 19KB
fface.gif 18KB
spike-icon-002.gif 10KB
cface.gif 8KB
icons-all.gif 4KB
videologo.gif 2KB
cancelbutton.gif 1KB
button-bg.gif 1KB
lock.gif 1KB
alignicon.gif 1KB
word.gif 1019B
icon_doc.gif 1012B
icon_psd.gif 1009B
icon_rar.gif 1007B
icon_xls.gif 1005B
icon_ppt.gif 1001B
icon_mv.gif 1001B
icon_pdf.gif 996B
icon_mp3.gif 986B
icon_txt.gif 970B
icon_jpg.gif 950B
icon_exe.gif 949B
icon_chm.gif 923B
loading.gif 734B
icons.gif 453B
icons.gif 453B
icons.gif 453B
success.gif 445B
success.gif 445B
success.gif 445B
cursor_v.gif 370B
cursor_h.gif 253B
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
行动之上
- 粉丝: 2273
- 资源: 927
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 密码学AES算法源代码
- 读取、查询和修改 Microsoft Word 2007,2008 docx 文件 .zip
- 三维地形图计算软件(三)-原基于PYQT5+pyqtgraph.opengl旧代码
- 分布式编程作业1的源代码
- 该库为 ASR 提供了常见的语音特征,包括 MFCC 和滤波器组能量 .zip
- 该存储库将包含基本的 Python 编程问题及其解决方案 .zip
- 该存储库包含 100 多个 Python 编程练习问题,以不同的方式进行讨论、解释和解决.zip
- 虚拟 Python 环境构建器.zip
- 洪涝灾害应急信息-JAVA-基于springBoot洪涝灾害应急信息管理系统设计与实现(毕业论文+PPT)
- 嗨玩旅游网站-JAVA-基于springboot嗨玩旅游网站设计与实现(毕业论文+PPT)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功