doer/task

There is no license information available for the latest version (0.0.1) of this package.

多进程异步作业库

0.0.1 2020-09-22 08:52 UTC

This package is auto-updated.

Last update: 2024-04-23 13:27:24 UTC


README

请留意,该服务只支持 Linux 环境。

异步任务作业调度框架,提供异步任务/延时异步任务调度,支队多种类型消息(IPC/Redis/MQ),动态进程池等能力。

该服务用于平滑解决大多业务同步处理时间过长导致服务处理超时,接口等待时间过长(HTTP 连接长时间占用)等问题。使用原生 PHP 编写,默认使用 IPC 进行进程通信,拥有详细运行日志,极少外部依赖,便于部署与维护。其中延时异步任务也可以有效的处理需要依赖第三方服务结果(例如支付、授权)等场景,不需要依赖外部消息队列等服务,纯天然,无公害🐕。

功能特性路线

  • 😀可扩展多种类消息支持(IPC、Socket、MQ...)
  • 😀可扩展任务调度机制
  • 😀动态 Worker 进程池
  • 😀延时任务支持
  • 😔HTTP/TCP 服务支持
  • 😔分布式任务调度,横向扩充调度节点
  • 😔web 管理控制台

快速启动

启动调度服务

php examples/start.php start

产生任务(投递任务)

php examples/producer.php

运行结果: 任务会在 tests 目录下创建 delay_tasknormal_task 两个文件,里面的内容即为上方投递任务运行结果。

贡献代码

直接 fork 然后 PR 即可。

流程图

先看源码,晚点补充。

其它

感谢 @博武 大佬,感谢 CCTV!

注:我在代码中藏了一个 BUG 清留意哈!