xxl-job简介

分布式任务调度项目xxl-job的官网:分布式任务调度平台XXL-JOB

大众点评的分布式任务调度平台,是一个轻量级分布式任务调度平台, 其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。

常见使用场景如下:

  • 同一服务多个实例的任务存在互斥时,需要统一协调、调度,任务分布式执行
  • 定时任务的执行需要支持高可用、监控运维、故障告警
  • 需要统一管理和追踪各个服务节点定时任务的运行情况,以及任务属性信息,例如任务所属服务、所属责任人

主要特性:

1.3 特性

1、执行失败可以查看日志

2、支持邮件报警

3、路由策略支持轮询等策略,可以减轻执行服务器的压力

4、轮询时间等参数修改后立即生效

5、执行器有问题或新增,快速识别

6、调度中心高可用,调度中心可以集群部署(集群部署的机器时钟必须同步),如果调度中心没有做负载在执行器的配置中需要配多个地址,如果调度中心配置负载则执行器配置负载地址即可

7、执行器高可用(执行器可以集群部署)

xxl-job架构图

核心模块  (1)调度中心 (2) 执行器,类似schedule运行所在的机器。

调度中心负责将任务,分发到执行器执行。

  • 调度模块(调度中心):负责管理调度信息,按照调度配置发出调度请求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系统性能不再受限于任务模块;支持可视化、简单且动态的管理调度信息,包括任务新建,更新,删除,GLUE开发和任务报警等,所有上述操作都会实时生效,同时支持监控调度结果以及执行日志,支持执行器Failover。
  • 执行模块(执行器):负责接收调度请求并执行任务逻辑。任务模块专注于任务的执行等操作,开发和维护更加简单和高效;接收“调度中心”的执行请求、终止请求和日志请求等。

集群化部署

部署多台调度器和执行器。或者在配置文件中写多个调度中心地址。

日常开发中使用xxl-job

  1. 开发计划任务

通常我们使用spring的schedule处理计划任务,替换为xxl-job操作步骤

LidarFileSizeSyncService.java 为例, 代码中有spring的schedule定时任务

@Scheduled(cron = "0 0/1 * * * ?")

public void lidarFileSizeSync() {

.....

}

将   @Scheduled(cron = "0 0/1 * * * ?") 调用改为

@XxlJob("lidarFileSizeSync")   任务名称自定,但是相同执行器appname下,不能重复。

2  调度中心新增开发的计划任务

登录调度中心,测试环境调度中心为

http://localhost:8081/xxl-job-admin

进入登录界面,帐号默认 admin ,密码默认 123456

点”新增“按钮

在新增界面增加,任务信息

其中关键项为 任务执行时间

任务名JobHandler必须与 XxlJob名一致。 任务描述,描述任务的功能说明,负责人,填写开发负责功能的人员名称。

如果,添加周期性执行任务,在“调度类型”项,选择 固定速度,周期单位为秒。

3. 管理任务状态

此时任务默认是STOP状态 , 此时可以先在操作按钮,点”执行一次“,查询日志等操作,然后再把任务设置为启动状态。

执行完成后,可以查看执行日志,点查看可以看到任务执行情况,是哪个调度器执行的等信息。

如果使用 任务中也可以使用  XxlJobHelper.log("======lidarFileSizeSync.");

在执行器中的 xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler ,也可以看到执行的日志。

示例代码

基于springboot执行器示例

链接:https://pan.baidu.com/s/1-0H4C6_2wJLtAmxTbeyd6w?pwd=lb9l 
提取码:lb9l

执行器代码配置说明

### 调度中心服务器地址 "http://address" ,如果地址为空,不注册为执行器。 有多个地址使用逗号分开 "http://address01,http://address02"
xxl.job.admin.addresses=http://172.30.1.17:8081/xxl-job-admin
### 执行器名称,根据项目定义名称[小屏 executor-auto,大屏 executor-dgtn]
xxl.job.executor.appname=xxl-job-executor-sample
### 任务执行器端口,如果端口设置为0,执行器会自动使用一个空闲端口
xxl.job.executor.port=0
### 执行器日志目录
xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler
### 日志保留时间
xxl.job.executor.logretentiondays=7

分布式任务调度项目xxl-job相关推荐

  1. xxl子任务_阿里面试官:聊一下分布式任务调度有那些解决方案?

    作者:黄兆平 来源:http://blog.freshfood.cn/article/39 # 简介 随着系统规模的发展,定时任务数量日益增多,任务也变得越来越复杂,尤其是在分布式环境下,存在多个业务 ...

  2. xxl子任务_XXL-JOB v2.0.2,分布式任务调度平台 | 多项特性优化更新

    v2.0.2 Release Notes 1.底层通讯方案优化:升级较新版本xxl-rpc,由"JETTY"方案调整为"NETTY_HTTP"方案,执行器内嵌n ...

  3. xxl子任务_XXL-JOB v2.1.2 发布,分布式任务调度平台

    v2.1.2 Release Notes 1.方法任务支持:由原来基于JobHandler类任务开发方式,优化为支持基于方法的任务开发方式:因此,可以支持单个类中开发多个任务方法,进行类复用 @Xxl ...

  4. 赫拉(hera)分布式任务调度系统之项目启动(二)

    文章目录 赫拉 创建表 打包部署 测试 TIPS 加入群聊 赫拉 大数据平台,随着业务发展,每天承载着成千上万的ETL任务调度,这些任务集中在hive,shell脚本调度.怎么样让大量的ETL任务准确 ...

  5. python建站部署_SpringBoot入门建站全系列(三十二)接入xxl-job分布式任务调度平台...

    SpringBoot入门建站全系列(三十二)接入xxl-job分布式任务调度平台 一.概述 XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速.学习简单.轻量级.易扩展.现已开放源 ...

  6. python任务调度平台 界面_分布式任务调度平台XXL-JOB

    以前带我的人说过,最好的学习就是看官方文档,个人也有4个T的学习视频,但是会发现讲的都是入门,有的也比较浅. 官方文档比较官方,也比较权威,打开xxl-job的官网,写的贼详细,有些人喜欢收博客,不喜 ...

  7. 轻量级分布式任务调度平台 XXL-JOB

    From:https://www.cnblogs.com/xuxueli/p/5021979.html github 地址 及 中文文档地址:https://github.com/xuxueli/xx ...

  8. 分布式任务调度平台一站式讲解

    文章目录 一.传统的定时任务 1. 传统的定时任务存在那些缺点 2. 定时任务集群幂等性问题 二.传统定时任务的实现方案 2.1. 多线程 2.2. TimeTask 2.3. 线程池 2.4. Sp ...

  9. python任务调度平台 界面_分布式任务调度平台XXL-JOB搭建教程

    关于分布式任务调度平台XXL-JOB,其实作者 许雪里在其发布的中文教程中已经介绍的很清楚了,这里我就不做过多的介绍了,关于其搭建教程,本人依照其文档搭建起来基本上也没遇到啥问题,这里通过博客的形式记 ...

最新文章

  1. 安全36计 你需要了解的那些安全术语
  2. python try-except处理异常的常用方法分析
  3. 【自适应(盲)均衡6】信号过多径衰落信道的矩阵乘法表示之Toeplitz矩阵和Toeplitz块矩阵的生成(分数间隔FSE)
  4. ORA-27101 shared memory realm does not exist 错误处理
  5. 使用vsftp作为集群的yum仓库
  6. IAR编译Z-Stack项目报错—Error[e46]: Undefined external “?V11” referred in AF
  7. 平面/UI设计师社区网站集设网|让你作品开始发光
  8. 《人月神话》读书笔记2--空间技能
  9. 常用Maven插件终极大全,速度收藏!
  10. pytorch查看模型weight与grad
  11. messagebox
  12. java weblogic 下载_JAVA_weblogic企业级技术 PDF 下载
  13. sip软电话免费下载地址(eyebeam)
  14. jsp内置对象练习题
  15. 移动平均法又称滑动平均法、滑动平均模型法(Moving average,MA)
  16. 计算机d盘无法格式化,为什么不能格式化D盘?D盘无法格式化的解决方法
  17. 全面解决交通难题,智慧大脑助力城市创建智慧交通管理体系
  18. 2014年5月份第1周51Aspx源码发布详情
  19. 如何通过github实现个人网页上传
  20. eap wifi 证书_用openssl为EAP-TLS生成证书(CA证书,服务器证书,用户证书)

热门文章

  1. printf 格式化输出符号详细说明
  2. 手撕Redis6.0
  3. JS节点(node)
  4. 09-把时间当作朋友
  5. 30岁前男人应该完成的事
  6. 恶魔之魂重制版登陆服务器未响应,数毛社分析《恶魔之魂:重制版》 60帧运行,加载超快...
  7. FreeRTOS教程——二值信号量(四)
  8. 如何用python判断字符串包含多个字符串中的一个或多个?
  9. IOS OpenGL ES GPUImage 图像Sobel边缘检测,类似漫画反色 GPUImageSobelEdgeDetectionFilter
  10. java 四大作用域