「分布式定时任务」| 青训营笔记

76 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第8天

知识点

1.分布式定时任务的概念特点等

细则

  • 什么是分布式定时任务:

    • 用集群调度和分布式部署等方式把分散的任务纳入统一的平台的管理方式
  • 特点:

    • 自动化:全自动化完成定时任务的调度和执行
    • 平台化:基于平台化的思维管控一系列分布式任务
    • 分布式:在分布式的情况下运行任务调度
    • 伸缩性:采用集群化部署,可以随时按需扩缩容
    • 高可用:不存在单点故障,并且可以做到故障转移
  • 分类(按触发机制)

    • 定时任务:特定时间触发
    • 延时任务:延时触发,比如一分钟之后执行
    • 周期任务:固定周期或者固定频率周期触发,比如每隔一分钟或者每天晚上凌晨三点
  • 执行方式

  • 单机任务:只在一台机器执行,适合计算量小,并发度底的场景

  • 广播任务:广播到指定机器执行

  • Map任务:一个任务可以分为多个子任务去执行,每个机器执行一个或者多个小任务

  • MapReduce任务:在Map任务的基础上对所有的子任务结果进行汇总计算。

例子:

在曾经做的6.824的lab中的lab1,MapReduce是对于分布式架构入门的一个很好的例子

在此引用:6.5840 Lab 1: MapReduce (mit.edu)

              research.google.com

在这个任务中,我们只需编写两个组件,即map操作和reduce操作的组件,再通过他的基架调用,即可完成对于一些杂乱字符的统计

在这个过程中,我们可以大概体会到分布式架构中worker和coordinator完成任务的思路