基于多进程的定时任务管理器,支持秒级别的定时任务

Scheduling计划任务

特性

  • 通过配置文件注册任务
  • 支持秒级的定时任务粒度
  • 使用symfony/process进行进程管理
  • 使用dragonmantank/cron-expression进行解析cron表达式

全局变量

BASE_PATH 项目根目录,默认使用getcwd()进行获取
define("BASE_PATH", __DIR__);

CONSOLE_NAME,脚本入口文件,默认openphp
define("CONSOLE_NAME", 'openphp');

命令详解

schedule:init        项目初始化
schedule:list        计划任务列表
schedule:run         任务计划执行
schedule:work        启动调度工作者

初次使用

./vendor/bin/console-scheduling schedule:init

会在你跟目录生成如下文件

├── app
│   └── ConsoleScheduling.php
├── composer.json
├── openphp

WangConsole.php文件中进行注册计划任务

定义任务计划 和laravel中的任务计划使用方法差不多

<?php

namespace App;

use Openphp\ConsoleScheduling\Console;
use Openphp\ConsoleScheduling\Schedule;


class ConsoleScheduling extends Console
{
    /**
     * 定义任务计划
     * @param Schedule $schedule
     * @return void
     */
    protected function schedule(Schedule $schedule)
    {
        $schedule->command("schedule:list")->everyMinute();
        $schedule->exec("sleep 5")->everyMinute(); 
        $schedule->call(function(){
            file_put_contents("console-scheduling.log",time().PHP_EOL,FILE_APPEND);
        })->everyMinute();  
    }

    /**
     *  注册命令行
     * @return void
     */
    protected function commands()
    {
        $this->load(__DIR__."/Commands");
    }
}

入口文件

入口文件可以随意发挥,比如加载其他核心文件

#!/usr/bin/env php
<?php

require __DIR__."/vendor/autoload.php";

define("BASE_PATH", __DIR__);

(new \App\ConsoleScheduling)->handle();

启动调度器,使用调度器时,只需将以下 cron 项目添加到服务器:

* * * * * php /path-to-your-project/openphp schedule:run >> /dev/null 2>&1
天梯(tianti) Java 轻量级的 CMS 解决方案-天梯。天梯是一个用 Java 相关技术搭建的后台 CMS 解决方案,用户可以结合自身业务进行相应扩展,同时提供了针对 dao、service 等的代码生成工具。技术选型:Spring Data JPA、Hibernate、Shiro、 Spring MVC、Layer、MySQL 等。 简介: 1、天梯是一款使用Java编写的免费的轻量级CMS系统,目前提供了从后台管理到前端展现的整体解决方案。 2、用户可以不编写一句代码,就制作出一个默认风格的CMS站点。 3、前端页面自适应,支持PC和H5端,采用前后端分离的机制实现。后端支持天梯蓝和天梯红换肤功能。 4、项目技术分层明显,用户可以根据自己的业务模块进行相应地扩展,很方便二次开发。 核心框架:Spring Framework 4.2.5.RELEASE 安全框架:Apache Shiro 1.3.2 视图框架:Spring MVC 4.2.5.RELEASE 数据库连接池:Tomcat JDBC 缓存框架:Ehcache ORM框架:Spring Data JPA、hibernate 4.3.5.Final 日志管理:SLF4J 1.7.21、Log4j 编辑器:ueditor 工具类:Apache Commons、Jackson 2.8.5、POI 3.15 view层:JSP 数据库:mysql、oracle等关系型数据库 前端 dom : Jquery 分页 : jquery.pagination UI管理 : common UI集成 : uiExtend 滚动条 : jquery.nicescroll.min.js 图表 : highcharts 3D图表 :highcharts-more 轮播图 : jquery-swipe 表单提交 :jquery.form 文件上传 :jquery.uploadify 表单验证 :jquery.validator 展现树 :jquery.ztree html模版引擎 :template
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值