定制 webman-tech/crontab-task 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

webman-tech/crontab-task

最新稳定版本:v5.0.20

Composer 安装命令:

composer require webman-tech/crontab-task

包简介

Webman plugin webman-tech/crontab-task

README 文档

README

本项目是从 webman-tech/components-monorepo 自动 split 出来的,请勿直接修改

简介

webman 定时任务管理插件,基于 workerman/crontab 实现,提供更加便捷的定时任务管理方式。

该插件解决了 webman 默认定时任务配置的一些问题:单进程下起多个定时任务存在阻塞问题、缺乏统一的日志记录机制、定时任务管理不够灵活。

功能特性

  • 灵活的进程管理:支持单任务独立进程和多任务共享进程两种配置方式
  • 完善的日志支持:提供任务开始、结束、异常等常规日志记录
  • 事件机制:支持任务执行前后的事件处理
  • 内存管理:支持任务执行后自动释放内存
  • 命令行工具:提供查看和创建定时任务的命令
  • 异常处理:完善的异常处理机制,防止任务异常影响整个进程

安装

composer require webman-tech/crontab-task

核心组件

BaseTask 基础任务类

BaseTask 是所有定时任务的基类,提供任务执行的完整生命周期管理。子类需实现 handle() 抽象方法编写具体业务逻辑,框架负责异常捕获、日志记录、事件触发和内存管理。异常分为两类:TaskException 记录为 warning 级别(业务异常),其他异常记录为 error 级别(系统异常)。

Schedule 调度器

Schedule 用于配置和管理定时任务进程,通过 addTask() 添加单个任务(独立进程)、addTasks() 添加多个任务(同一进程,注意阻塞问题),最后调用 buildProcesses() 构建进程配置数组。

TaskProcess 任务进程

TaskProcess 是实际的任务进程类,负责验证任务配置的正确性,并在进程启动时注册和管理定时任务的执行。

命令行工具

  • php webman crontab-task:list:查看当前所有定时任务列表
  • php webman make:crontab-task MyTask:快速创建定时任务类

AI 辅助

统计信息

  • 总下载量: 2.5k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 7
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 7
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-05-06

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固