文档章节

一款php开发的定时计划任务框架taskPHP

c
 cqcqphper
发布于 2017/04/06 12:48
字数 776
阅读 591
收藏 2
点赞 0
评论 2

taskPHP 3.0 —— 你值得信赖的PHP定时计划任务框架

历史版本

-->taskPHP1.x
-->taskPHP2.x

所有分支 查看所有分支

taskPHP

taskPHP基于php开发的定时计划任务框架,多进程实现任务的分配和运行,多种进程间通信驱动支持,支持多线程模式需要安装pthreads扩展(可选),支持linux和windows。有较好的伸缩性、扩展性、健壮稳定性而被多家公司使用,同时也希望开源爱好者一起贡献。

项目地址

github地址: https://github.com/qq8044023/taskPHP
gitee地址: https://gitee.com/cqcqphper/taskPHP
这两个地址都会同步更新。

在线交流QQ群

如感兴趣请加QQ群 一起探讨、完善。越多人支持,就越有动力去更新,喜欢记得右上角star哈。
taskPHP框架交流群taskPHP ①群:375841535(空)

框架说明

  1. 任务多进程运行模式。
  2. 任务多线程模式,需要安装pthreads扩展(可选)。
  3. 多种进程通信方式堵塞式消息队列。
  4. 任务派发及具体任务执行不在同个进程[distribute]和[worker],windows和linux下启用入口文件[start.php],windows下可运行[windows_start.cmd]快速启动。
  5. 执行时间语法跟crontab类似,且支持秒设置。
* * * * * * *    //格式 :秒 分 时 天 月 年 周
  10 * * * * * *    //表示每一分钟的第10秒运行
 /10 * * * * * *	//表示每10秒运行
 /1 * 15,16 * * * * //表示 每天的15点,16点的每一秒运行
  1. 添加任务简单,只需编写任务类,实现任务入口run方法,详情参考examples目录内的测试任务。

环境要求

  1. php版本>= 5.5
  2. 开启socket扩展
  3. 开启pdo扩展
  4. 开启shmop扩展

注意事项

  1. 由于任务存在派发时间,所以任务运行的时间可能会有1-2秒的误差。
  2. 编写任务有问题或调用exit将导致后台脚本停止,需要通过远控管理器重启进程。
  3. 多线程模式运行一段时间后报错,pthreads has detected that the taskphp\Pthread could not be started, the system lacks the necessary resources or the system-imposed limit would be exceeded in xxx
  4. 后台任务数量多或者任务运行时间很密集导致数据库链接过多没有释放,需要再任务结尾处执行数据库链接对象的close方法来关闭链接。
  5. 在windows下路径不能有空格,否则会导致进程启动不起来。

文档列表

-->数据库类使用教程
-->windows下安装php多线程扩展pthreads教程
-->工具类Utils使用说明
-->thinkphp5.0框架的集成教程

使用说明

composer安装taskphp框架:

composer require taskphp/taskphp

命令操作

start.php  start [all|任务名]  启动 可不带参数默认all
start.php  start &   挂载后台运行,liunx操作
start.php  close all 结束框架  必带参数all

启动程序

[root@FX-DEBUG taskphps]# php ./start.php start
------------------------- taskPHP ------------------------------
taskPHP version:3.0      PHP version:5.5.38
license1:https://github.com/qq8044023/taskPHP
license2:https://gitee.com/cqcqphper/taskPHP
startTime:2018-03-30 11:38:08
------------------------- taskPHP Manage  ----------------------
http://ServerIp:8082
http://127.0.0.1:8082
------------------------- taskPHP PROCESS ----------------------
listen                      processes                     status
distribute                    1                          [success]
examples\Demo1                1                          [success]
examples\Demo2                1                          [success]
----------------------------------------------------------------
Press Ctrl-C to quit. Start success.
 

© 著作权归作者所有

共有 人打赏支持
c
粉丝 0
博文 6
码字总数 1404
作品 1
长寿
加载中

评论(2)

村长1
村长1
不错,很好用、。
村长1
村长1
:+1:
**小草**/taskPHP

当前版本 2.0 历史版本 -->taskPHP1.0 taskPHP taskPHP基于php开发的定时计划任务框架,利用多进程实现任务的分配和运行,多种进程间通信驱动支持,支持多线程模式需要安装pthreads扩展(可选),支...

**小草** ⋅ 2017/04/06 ⋅ 0

定时计划任务框架--taskPHP

taskPHP 基于原生态 php 开发的定时计划任务框架,利用多进程实现任务的分配和运行,利用原生态php内存共享实现进程间通信,支持 linux 和 windows。有较好的伸缩性、扩展性、健壮稳定性而被...

cqcqphper ⋅ 2017/04/05 ⋅ 1

队列应用场景,自己实现队列

视频地址:http://t.cn/Rvw34S9 一、队列使用场景:为什么需要队列 在web开发中,我们经常会遇到需要处理批量任务的时候,这些批量任务可能是用户提交的,也可能是当系统被某个事件触发时需要...

蜗牛奔跑 ⋅ 2015/11/13 ⋅ 0

用php实现异步执行任务的队列(一)

一、队列使用场景:为什么需要队列 在web开发中,我们经常会遇到需要处理批量任务的时候,这些批量任务可能是用户提交的,也可能是当系统被某个事件触发时需要进行批量处理的,面对这样的任务...

_c_q ⋅ 2016/09/08 ⋅ 0

php队列的实现思路和详细过程

一、队列使用场景:为什么需要队列 在web开发中,我们经常会遇到需要处理批量任务的时候,这些批量任务可能是用户提交的,也可能是当系统被某个事件触发时需要进行批量处理的,面对这样的 任...

snowing1990 ⋅ 2016/11/30 ⋅ 0

禅道项目管理软件发布1.0 beta版本

禅道项目管理软件(ZenTaoPMS)是一款国产的,基于LGPL协议,开源免费的项目管理软件,它集产品管理、项目管理、测试管理于一体,同时还包含了事务管理、组织管理等诸多功能,是中小型企业项目...

开源春哥 ⋅ 2010/04/02 ⋅ 0

thinkphp 定时执行php文件 php自动执行php文件

最近开发短信任务和短信发送功能,用到了定时执行php这方面:和大家分享一下: (个人笔记,写的不好,海涵海涵,看不懂的话可以留言,但是我一般都能及时回复,其他网上有很多这样的教程,大...

松竹斋 ⋅ 2012/12/14 ⋅ 0

莫小白/scheduledTask

定时任务系统 该系统基于swoole开发,主要功能以下: 添加定时任务,间隔时间最小单位为一分钟; 记录每个定时任务具体运行日志; 任务错误报警:服务挂掉通知运维人员,程序错误通知程序员处...

莫小白 ⋅ 2015/06/02 ⋅ 0

尤里2号 /naples_php

naplesPHP是什么? naplesPHP是一款轻(zhong)量级的PHP框架,致力于打造成一款顺手的php框架。NaplesPHP丰富的内容将会把你从重复的键盘敲击中解放出来! 好消息 没错!NaplesPHP的开发文档...

尤里2号 ⋅ 2017/03/17 ⋅ 0

开源 PHP 框架--naplesPHP

NaplesPHP——以那不勒斯舞曲为名 NaplesPHP 是一款轻(zhong)量级的PHP框架,致力于打造成一款顺手的php框架。NaplesPHP丰富的内容将会把你从重复的键盘敲击中解放出来! 坏消息 没错!作者...

尤里2号 ⋅ 2017/03/13 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

sbt网络问题解决方案

http://dblab.xmu.edu.cn/blog/maven-network-problem/

狐狸老侠 ⋅ 2分钟前 ⋅ 0

大数据,必须掌握的10项顶级安全技术

我们看到越来越多的数据泄漏事故、勒索软件和其他类型的网络攻击,这使得安全成为一个热门话题。 去年,企业IT面临的威胁仍然处于非常高的水平,每天都会看到媒体报道大量数据泄漏事故和攻击...

p柯西 ⋅ 45分钟前 ⋅ 0

Linux下安装配置Hadoop2.7.6

前提 安装jdk 下载 wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz 解压 配置 vim /etc/profile # 配置java环境变量 export JAVA_HOME=/opt/jdk1......

晨猫 ⋅ 51分钟前 ⋅ 0

crontab工具介绍

crontab crontab 是一个用于设置周期性被执行的任务工具。 周期性执行的任务列表称为Cron Table crontab(选项)(参数) -e:编辑该用户的计时器设置; -l:列出该用户的计时器设置; -r:删除该...

Linux学习笔记 ⋅ 今天 ⋅ 0

深入Java多线程——Java内存模型深入(2)

5. final域的内存语义 5.1 final域的重排序规则 1.对于final域,编译器和处理器要遵守两个重排序规则: (1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用...

江左煤郎 ⋅ 今天 ⋅ 0

面试-正向代理和反向代理

面试-正向代理和反向代理 Nginx 是一个高性能的反向代理服务器,但同时也支持正向代理方式的配置。

秋日芒草 ⋅ 今天 ⋅ 0

Spring 依赖注入(DI)

1、Setter方法注入: 通过设置方法注入依赖。这种方法既简单又常用。 类中定义set()方法: public class HelloWorldOutput{ HelloWorld helloWorld; public void setHelloWorld...

霍淇滨 ⋅ 昨天 ⋅ 0

马氏距离与欧氏距离

马氏距离 马氏距离也可以定义为两个服从同一分布并且其协方差矩阵为Σ的随机变量之间的差异程度。 如果协方差矩阵为单位矩阵,那么马氏距离就简化为欧氏距离,如果协方差矩阵为对角阵,则其也...

漫步当下 ⋅ 昨天 ⋅ 0

聊聊spring cloud的RequestRateLimiterGatewayFilter

序 本文主要研究一下spring cloud的RequestRateLimiterGatewayFilter GatewayAutoConfiguration @Configuration@ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMi......

go4it ⋅ 昨天 ⋅ 0

Spring clound 组件

Spring Cloud技术应用从场景上可以分为两大类:润物无声类和独挑大梁类。 润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。 Ribbon,客户端负载均衡,特性有区域亲和、重试机制。...

英雄有梦没死就别停 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部