这是我参与「第五届青训营 」笔记创作活动的第9天。
一、本堂课重点内容:
- 定时任务应用场景、发展历史和现状
- 分布式定时任务应用场景与比较
- 分布式定时任务整体框架
- 框架各模块详细设计
- 实战应用
二、详细知识点介绍:
- 发展历史
- Linux命令-CronJob
- 缺陷:不可跨系统、不可多机
- 单机定时任务-Time、Ticker
- 缺陷:不可多机
- 单机定时任务-ScheduledExecutorService
- 缺陷:不可跨系统、不可多机
- 任务调度-Quartz
- 分布定时任务
- Linux命令-CronJob
- 定时任务
- 定义:系统为了自动完成特定任务,实时、延时、周期性完成任务调度的过程。
- 分布式定时任务:
- 分布式定时任务式把分散的、可靠性差的定时任务纳入统一的平台,并实现集群管理调度和分布式部署的一种定时任务的管理方式。
- 执行模式
- 单机任务
- 广播任务
- Map任务
- MapReduce任务
- 现状
- Xxl-job, SchedulerX, TCT, Elastic-job
- 实现原理
- 整体架构
- 核心架构
- Admin
- Triger
- Scheduler
- Executor
- 数据流
- 功能架构
- 核心架构
- 控制台
- E-R
- Trigger
- 延时MQ方案
- 时间轮
- Scheduler
- 资源来源
- 业务系统
- 定时任务平台(解耦
- 资源来源
- 整体架构
- 业务应用
- Hive
- 延时消息
- Flink 三、课后个人总结:
应用场景与技术方案的链接,原来类似订单定时取消,消息定时发布的大规模应用方案要靠分布式定时任务来解决;另外扩充了对分布式的理解,分布式是为解耦、大规模应用、性能优化、弹性等多方面的现代互联网业务基本架构与解决方案,是就业必备的技能;从产品方面,分布式+?,如分布式+定时任务=分不式定时任务,转变思维,从分布式的角度出发,解决项目落地的问题。
五、引用参考: