guns-lite 新增定时任务管理功能

栏目: 软件资讯 · 发布时间: 5年前

内容简介:guns-lite项目主页 这两年做的项目和产品几乎多有定时任务管理的需求。 常用的场景有: 定时给用户发送一些消息 定时进行一些报表的计算 定时去指定的接口get一些数据 定时降一些报表发送到指定的邮箱 当然还有很...

guns-lite项目主页

这两年做的项目和产品几乎多有定时任务管理的需求。 常用的场景有:

  • 定时给用户发送一些消息

  • 定时进行一些报表的计算

  • 定时去指定的接口get一些数据

  • 定时降一些报表发送到指定的邮箱

当然还有很多,没有必要一一列举。理所当然的将定时任务管理功能集成到guns-lite中。

需求

定时任务的需求通常是这样的

  1. 需要添加一个定时任务,做一些事情。但是什么时候做要我自己配置,而且还想配置一些参数进去,比如我想定时给指定的email发送邮件.

  2. 可以临时禁用一个任务。

  3. 看定时任务执行的历史日志。

具体用法

guns-lite对定时任务管理功能的实现如下。

表结构

guns-lite提供了两个表:t_sys_task(任务)和t_sys_task_log(任务执行日志)

  • t_sys_task

CREATE TABLE `t_sys_task` (
  `id` bigint(64) NOT NULL AUTO_INCREMENT COMMENT '自增主键',
  `name` varchar(50) DEFAULT NULL COMMENT '任务名',
  `job_group` varchar(50) DEFAULT NULL COMMENT '任务组',
  `job_class` varchar(255) DEFAULT NULL COMMENT '执行类',
  `note` varchar(255) DEFAULT NULL COMMENT '任务说明',
  `cron` varchar(50) DEFAULT NULL COMMENT '定时规则',
  `data` text COMMENT '执行参数',
  `exec_at` datetime DEFAULT NULL COMMENT '执行时间',
  `exec_result` text COMMENT '执行结果',
  `disabled` tinyint(1) DEFAULT NULL COMMENT '是否禁用',
  `createtime` datetime DEFAULT NULL,
  `creator` bigint(20) DEFAULT NULL,
  `concurrent` tinyint(4) DEFAULT '0' COMMENT '是否允许并发',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
  • t_sys_task_log

CREATE TABLE `t_sys_task_log` (
  `id` bigint(64) NOT NULL AUTO_INCREMENT COMMENT '自增主键',
  `name` varchar(50) DEFAULT NULL COMMENT '任务名',
  `exec_at` datetime DEFAULT NULL COMMENT '执行时间',
  `exec_success` int(11) DEFAULT NULL COMMENT '执行结果(成功:1、失败:0)',
  `job_exception` varchar(255) DEFAULT NULL COMMENT '抛出异常',
  `id_task` bigint(20) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

创建一个定时任务类

比如我创建一个测试任务类

package cn.enilu.guns.service.task.job;
import cn.enilu.guns.service.task.JobExecuter;
import com.alibaba.fastjson.JSON;
import org.springframework.stereotype.Component;
@Component
public class HelloJob extends JobExecuter {
    @Override
    public void execute(Map<String, Object> dataMap) throws Exception {
        System.out.println("输出配置参数如下 :"+JSON.toJSONString(dataMap));
        System.out.println("这里可以编写任意其他业务逻辑");
    }
}

页面配置一个定时任务

在任务管理页面可以增上改查一个定时任务,还可以禁用、启用定时任务

  • 添加定时任务 guns-lite 新增定时任务管理功能

  • 定时任务列表 guns-lite 新增定时任务管理功能

  • 查看定时任务执行历史日志 guns-lite 新增定时任务管理功能

 


以上所述就是小编给大家介绍的《guns-lite 新增定时任务管理功能》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大数据架构商业之路

大数据架构商业之路

黄申 / 机械工业出版社 / 2016-5-1 / 69.00元

目前大数据技术已经日趋成熟,但是业界发现与大数据相关的产品设计和研发仍然非常困难,技术、产品和商业的结合度还远远不够。这主要是因为大数据涉及范围广、技术含量高、更新换代快,门槛也比其他大多数IT行业更高。人们要么使用昂贵的商业解决方案,要么花费巨大的精力摸索。本书通过一个虚拟的互联网O2O创业故事,来逐步展开介绍创业各个阶段可能遇到的大数据课题、业务需求,以及相对应的技术方案,甚至是实践解析;让读......一起来看看 《大数据架构商业之路》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具