Prompts-MCP 686 skills · ai / design / design-pattern / framework / fundamentals / habit / lang / tech-selection /mcp/sse
framework framework/scheduling/index.md medium

framework-scheduling-index

Java 任务调度索引 — @Scheduled 单机定时 / @Async 异步 / XXL-Job 分布式调度 / Quartz 复杂持久化四个独立决策点。Use when 写定时任务 / 做异步执行 / 选调度框架 / 排查集群重复执行时。

子项索引

子项 一句话
scheduling-scheduled-annotation skill Spring @Scheduled 单机定时任务 — fixedRate/fixedDelay/cron 选择,集群多节点会重复执行需分布式锁兜底
scheduling-async-execution skill Spring @Async 异步执行 — 必须 @EnableAsync,且自定义线程池替代默认 SimpleAsyncTaskExecutor(每次新建线程不复用)
scheduling-xxl-job skill XXL-Job 分布式任务调度 — 调度中心统一触发(免分布式锁)、可视化管理、失败重试、分片广播,国内中小项目首选
scheduling-quartz skill Quartz 调度框架 — 复杂 Cron 编排、Job/Trigger 分离、misfire 补偿策略,集群用 JDBC JobStore 持久化到数据库

Scheduling · 任务调度索引

四个独立决策点,按你正在做的事下钻:

你在做什么 进哪个
单机写个简单定时任务(fixedRate/cron) scheduled-annotation
把方法改成异步执行、不阻塞调用方 async-execution
多节点分布式调度、要可视化/重试/分片 xxl-job
复杂 Cron 编排、任务要持久化到 DB quartz

选型决策(先定哪一类,再下钻)

场景 选哪个 理由
单机、简单、可接受集群重复 @Scheduled 零依赖,一个注解搞定
多节点集群、要避免重复执行 XXL-Job 调度中心统一触发,国内中小项目首选
复杂 Cron 编排 + 任务持久化 Quartz misfire 策略、JDBC JobStore 集群

@Scheduled 集群下每个节点都会触发同一任务 → 重复执行。要么加分布式锁兜底(见 scheduled-annotation),要么直接上 XXL-Job 由调度中心统一派发。

链接