
任务调度
文章平均质量分 82
埃泽漫笔
OceanBase开源项目ODC(OceanBase Developer Center)的核心贡献者,Github地址:https://github.com/oceanbase/odc,希望大家能赏脸支持下我们OceanBase公司的开源项目,点亮一颗小星星就行。
Maven中央仓库OceanBase开源组件 https://central.sonatype.com/artifact/com.oceanbase/db-browser 和 https://central.sonatype.com/artifact/com.oceanbase/ob-sql-parser 的核心贡献者。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SpringBoot定时任务 - 分布式elastic-job方式
ElasticJob 是面向互联网生态和海量任务的分布式调度解决方案,由两个相互独立的子项目 ElasticJob-Lite 和 ElasticJob-Cloud 组成。它通过弹性调度、资源管控、以及作业治理的功能,打造一个适用于互联网场景的分布式调度解决方案,并通过开放的架构设计,提供多元化的作业生态。它的各个产品使用统一的作业 API,开发者仅需一次开发,即可随意部署。ElasticJob 已于 2020 年 5 月 28 日成为 Apache ShardingSphere 的子项目。原创 2025-07-01 23:13:52 · 721 阅读 · 0 评论 -
SpringBoot定时任务 - 分布式xxl-job方式
XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。如下内容来源于xxl-job官网1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;2、动态:支持动态修改任务状态、启动/停止任务,以及终止运行中任务,即时生效;3、调度中心HA(中心式):调度采用中心式设计,“调度中心”自研调度组件并支持集群部署,可保证调度中心HA;原创 2025-06-30 22:47:54 · 772 阅读 · 0 评论 -
SpringBoot定时任务 - 分布式quartz cluster方式
通常我们使用quartz只是实现job单实例运行,本例将展示quartz实现基于数据库的分布式任务管理,和控制job生命周期。原创 2025-06-29 22:55:42 · 329 阅读 · 0 评论 -
SpringBoot定时任务 - 基础quartz实现方式
除了SpringTask,最为常用的Quartz,并且Spring也集成了Quartz的框架。本文主要介绍Quartz和基础的Quartz的集成案例。来源百度百科, 官网地址:http://www.quartz-scheduler.org/Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。原创 2025-06-29 22:47:06 · 788 阅读 · 0 评论 -
SpringBoot定时任务 - Netty HashedWheelTimer方式
Timer和ScheduledExecutorService是JDK内置的定时任务方案,而业内还有一个经典的定时任务的设计叫时间轮(Timing Wheel), Netty内部基于时间轮实现了一个HashedWheelTimer来优化百万量级I/O超时的检测,它是一个高性能,低消耗的数据结构,它适合用非准实时,延迟的短平快任务,例如心跳检测。本文主要介绍时间轮(Timing Wheel)及其使用。时间轮(Timing Wheel)是George Varghese和Tony Lauck在1996年的论文'原创 2025-06-29 22:36:56 · 828 阅读 · 0 评论 -
SpringBoot定时任务 - Spring Schedule实现方式
这种情况会发生在,比如你调用一个第三方接口,没有设置调用超时,继而引发异常,这时候当前任务便阻塞了。以CronTask为例,如果定义了taskScheduler则由taskScheduler执行,如果没有放到unresolvedTasks中。ScheduledTaskRegistrar最主要的是注册各种类型的task (这种方式在新的版本中已经废弃了)获取到方法上Scheduled注解(对任务的定义),通过processScheduled处理具体类型的task。注册哪些Task,怎么设计类的呢?原创 2025-06-28 23:02:23 · 666 阅读 · 0 评论 -
SpringBoot定时任务 - ScheduleExecutorService实现方式
上文介绍的Timer在实际开发中很少被使用, 因为Timer底层是使用一个单线程来实现多个Timer任务处理的,所有任务都是由同一个线程来调度,所有任务都是串行执行。而ScheduledExecutorService是基于线程池的,可以开启多个线程进行执行多个任务,每个任务开启一个线程;这样任务的延迟和未处理异常就不会影响其它任务的执行了。原创 2025-06-27 02:46:41 · 683 阅读 · 0 评论 -
SpringBoot定时任务 - Timer实现方式
定时任务在实际开发中有着广泛的用途,本文主要帮助你构建定时任务的知识体系,同时展示Timer 的schedule和scheduleAtFixedRate例子;后续的文章中我们将逐一介绍其它常见的与SpringBoot的集成。原创 2025-06-26 23:24:43 · 775 阅读 · 0 评论 -
xxl-job二次开发
由于xxl-job提供了图形化界面添加任务,所有针对业务系统如果是固定时间需要调度任务时,则可以用通过这种图形化界面方式添加,但是有些业务系统需要根据自己的业务去创建任务,这样图形化的添加方式就不满足使用了,所以需要提供对外接口供业务系统调用,例如新增,编辑,删除,挂起。下面就是操作过程。原创 2025-06-16 21:35:22 · 264 阅读 · 0 评论 -
xxl-job原理分析
当执行器集群部署的时候,调度器需要为任务执行选择执行器。所以,执行器在启动的时候,必须先注册到调度中心,保存在数据库。原创 2025-06-15 23:31:42 · 1053 阅读 · 0 评论 -
xxl-job架构设计
xxl-job跟Quartz特性和部署方式的不同,本质上是因为架构设计有着很大的区别。原创 2025-06-15 23:25:30 · 380 阅读 · 0 评论 -
XXL-JOB简介和使用
需要有quartz的基础,因为xxl-job早期就是使用quartz改造的,后期也是大量的借鉴了Quartz的原理。原创 2025-06-14 23:38:24 · 916 阅读 · 0 评论 -
Quartz调度原理
包工头,管理所有WorkerThread。原创 2025-06-12 22:03:35 · 1093 阅读 · 0 评论 -
动态调度的实现
springboot-quartz工程传统的Spring方式集成,由于任务信息全部配置在xml文件中,如果需要操作任务或者修改任务运行频率,只能重新编译、打包、部署、重启,如果有紧急问题需要处理,会浪费很多的时间。有没有可以动态调度任务的方法?比如停止一个Job?启动一个Job?修改Job的触发频率?读取配置文件、写入配置文件、重启Scheduler或重启应用明显是不可取的。对于这种频繁变更并且需要实时生效的配置信息,我们可以放到哪里?并且,我们可以提供一个界面,实现对数据表的轻松操作。原创 2025-06-12 21:46:34 · 250 阅读 · 0 评论 -
Quartz 基本使用
官网:http://www.quartz-scheduler.org/Quartz 的意思是石英,像石英表一样精确。Quartz is a richly featured, open source job scheduling library that can be integrated within virtually any Java application - from the smallest stand-alone application to the largest e-commerce sys原创 2025-06-11 23:37:35 · 934 阅读 · 0 评论 -
任务调度介绍
3、 查找 TaskScheduler 的实现类实例默认是通过类型查找,若有多个实现则会查找名字为"taskScheduler"的实现 Bean,若没有找到则在 ScheduledTaskRegistrar 调度任务的时候会创建一个 newSingleThreadScheduledExecutor,将TaskScheduler 的实现类实例设置到 ScheduledTaskRegistrar 属性中。2、银行业务系统,夜间要完成跑批的一系列流程,清理数据,下载文件,解析文件, 对账清算、切换结算日期等等。原创 2025-06-11 23:34:33 · 684 阅读 · 0 评论