定时任务概述

简介: cascasav

什么是定时任务
通过时间表达式来进行调度和执行的一类任务被称为定时任务。一般能解决的业务场景:定时对账、服务到期的定时提醒、订单超时未支付的自动取消等。

有哪些定时任务实现方案
单体架构调度技术
●轮询+线程休眠

while(true) + Thread.sleep

●java.util.Timer + java.util.TimerTask

Timer是一个定时器工具,用来在一个后台线程计划执行指定任务,它可以计划执行一个任务或反复多次

TimerTask是一个抽象类,它的子类代表一个可以被Timer计划执行的任务

●ScheduledExecutorService

JDK1.5之后作为并发工具被引入,默认只支持周期性的执行频率(如每秒/每分钟),要支持具体某一刻年月日时分秒的执行窗口需要自定义扩展,较麻烦

●Quartz

开源任务调度框架,Java语言编写实现,支持Spring整合使用

●SpringTask

spring框架提供的轻量级定时任务调用工具

SpringBoot框架下可使用注解:@EnableScheduling+@Scheduled,底层还是SpringTask

分布式架构调度技术
分布式场景可能遇到的问题
●多台机器集群部署的定时任务如何保证不被重复执行
●如果在不重启服务前提下,动态调整定时任务执行时间
●部署定时任务的机器发生故障如何故障转移
●如何对定时任务做任务监控
业界解决方案
●淘宝:TBSchedule,现在是:ScheduleX
●当当:Elastic-Job
●唯品会:Saturn,基于当当的二次开发,新增一些特性
●大众点评:XXL-JOB

1 人点赞

1


相关文章
Echarts手机端无刷新实现图表自适应横屏和竖屏的解决方案
Echarts手机端无刷新实现图表自适应横屏和竖屏的解决方案
951 0
|
JavaScript
一招教你实现自适应浏览器大小的Echarts饼状图
一招教你实现自适应浏览器大小的Echarts饼状图
1324 0
|
数据可视化 Go API
docker 可视化管理工具-DockerUI
DockerUI是一款开源的、强大的、轻量级的Docker管理工具。DockerUI覆盖了 docker cli 命令行 95% 以上的命令功能,通过可视化的界面,即使是不熟悉docker命令的用户也可以非常方便的进行Docker和Docker Swarm集群进行管理和维护。
docker 可视化管理工具-DockerUI
|
1月前
|
人工智能 运维 安全
7x24 AI 生产线:高德如何构建无人值守的研发交付闭环
杨夕凯,高德地图AI智能应用与基建平台负责人,主导构建7×24 AI-Native生产线:实现AI全托管CI/CD、Self-Healing自修复、语义化流水线与多维Benchmark评测,推动超级应用从“人盯AI”迈向规则定义、AI自治交付的研发新范式。
222 0
|
Java 数据安全/隐私保护
jasypt 配置文件关键信息配置 加密
jasypt 配置文件关键信息配置 加密
1155 0
|
10月前
|
缓存 Java 关系型数据库
|
10月前
|
负载均衡 算法 Java
|
10月前
|
canal 缓存 关系型数据库
|
安全 数据建模 应用服务中间件
SSL证书怎么获得?获得后如何安装到服务器?
在当今互联网时代,SSL证书是保障网站安全的重要工具,实现HTTPS加密和身份认证,防止数据劫持或篡改,提升SEO效果。获取SSL证书需选择可信的CA机构、选择证书类型、生成CSR、验证域名及企业信息并获取证书。安装SSL证书到服务器(如Nginx)涉及上传证书文件、配置Nginx并重启服务。具体步骤可参考详细教程。 简介:SSL证书对网站安全至关重要,涵盖获取与安装流程,包括选择CA、生成CSR、验证信息、配置服务器等关键步骤。

热门文章

最新文章