You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by GitBox <gi...@apache.org> on 2021/09/04 13:43:51 UTC

[GitHub] [shardingsphere-elasticjob] songxiaosheng edited a comment on issue #1854: Welcome to leave your article link (欢迎留下关于 ElasticJob 的文章链接)

songxiaosheng edited a comment on issue #1854:
URL: https://github.com/apache/shardingsphere-elasticjob/issues/1854#issuecomment-804078668


   大家好,在这里为大家持续分享下分布式调度系统源码设计,使用原理系列教程,文章发布自公众号:**中间件源码** 感兴趣可以关注下
   ![扫码_搜索联合传播样式-白色版](https://user-images.githubusercontent.com/81170548/117313213-446ad680-aeb8-11eb-8277-bbc00e596024.png)
   
   # [Elastic-Job2.1.5源码-分布式弹性调度系统的简介](https://mp.weixin.qq.com/s/EuSqNzCHxjKU-w1k9va9Vg)
   ## 1 Elastic-Job2.1.5源码-分布式弹性调度系统的简介
   ### 1.1 项目介绍
   ### 1.2 分布式弹性调度系统特征
   ## 2 Elastic-Job的使用
   ### 2.1 使用Java代码创建第一个调度例子
   ### 2.2 使用Spring配置一个作业
   
   # [Elastic-Job2.1.5源码-调度注册中心的设计原理](https://mp.weixin.qq.com/s/YoeFOEsAe59xokakBdswFg)
   ## 3  注册中心的设计原理
   ### 3.1 调度系统使用Zookeeper做什么
   ### 3.2 调度系统注册中心设计
   ### 3.3 Zookeeper配置详解
   ### 3.4 ZookeeperRegistryCenter原理解析
   ### 3.5 注册中心常用操作方法
   
   # [Elastic-Job2.1.5源码-Builder建造者设计模式构造复杂的作业配置](https://mp.weixin.qq.com/s/5dh1uk00jYevpdvpyZZSpA)
   ## 4 作业配置的设计原理
   ### 4.1 作业配置示例 
   ### 4.2 作业配置的类结构信息
   ### 4.3 常见配置类属性讲解
   
   
   # [Elastic-Job2.1.5源码-定制化调度作业模版的设计](https://mp.weixin.qq.com/s/kWKI-UpTNJirXSJuufWH-g)
   ## 5 定制化调度作业模版的设计
   ### 5.1 调度作业的类型
   ### 5.2 ElasticJob弹性作业接口
   ### 5.3 SimpleJob简单类型作业接口
   ### 5.4 DataflowJob数据流类型作业接口
   ### 5.5 ScriptJob脚本类型作业接口
   
   # [Elastic-Job2.1.5源码-调度作业的配置是如何在分布式场景下存储的?](https://mp.weixin.qq.com/s/hbXSh4XgVSrl2PUGDnyACw)
   ## 6 作业调度器初始化
   ### 6.1 作业调度器初始化示例代码
   ### 6.2 init初始化方法
   #### 6.2.1 init源码
   ### 6.3 分布式环境下调度配置持久化原理
   #### 6.3.1 配置加载持久化说明
   #### 6.3.2 持久化作业配置到Zookeeper
   #### 6.3.3 加载Zookeeper配置信息到本地内存
   #### 6.3.4 配置加载流程
   # [Elastic-Job2.1.5源码-线程安全的单例模式设计全局作业注册表JobRegistry](https://mp.weixin.qq.com/s/D5OXRmVCCmvJHcPQxTJ5Ug)
   ### 6.4 注册作业分片总数
    
   # [Elastic-Job2.1.5源码- 使用Quartz为每个作业创建单机执行的调度器对象](https://mp.weixin.qq.com/s/OCG91irMImsgk2objep34A)
   ### 6.5 创建作业调度控制器
   #### 6.5.1 JobScheduleController简介
   #### 6.5.2 JobScheduleController对象的创建
   #### 6.5.3 Scheduler 调度对象的创建
   #### 6.5.4 JobDetail 作业信息对象的创建
   # [Elastic-Job2.1.5源码-调度作业启动之前要做哪些初始化?](https://mp.weixin.qq.com/s/6SD-fW-SY5T2BrsgAKBmrw)
   ### 6.6 注册启动信息
   #### 6.6.1 启动信息注册
   # [Elastic-Job2.1.5源码-分布式环境下的Zookeeper节点监听机制](https://mp.weixin.qq.com/s/oceZ20hbI4E_0b2tuuL03g)
   #### 6.6.2 启动监听器
   #### 6.6.3 监听器大全
   #### 6.6.4 监听器使用
   #### 6.6.5 观察者设计模式
   # [Elastic-Job2.1.5源码-基于Zookeeper分布式锁实现选举作业主节点原理](https://mp.weixin.qq.com/s/a6Ks_Fr7pP1YDf6f_YaU2g)
   #### 6.6.6 基于Zookeeper的分布式锁实现选举作业主节点
   # [Elastic-Job2.1.5源码-调度作业的服务器和进程信息的持久化是如何设计的?](https://mp.weixin.qq.com/s/yNBBfhwznaQyLTh5nFAhvg)
   #### 6.6.7 作业服务器信息
   # [Elastic-Job2.1.5源码-为作业监控提供一个快照服务功能](https://mp.weixin.qq.com/s/V9ykA2TInVRJa3r31UjuWA)
   #### 6.6.8 启动快照服务
   # [Elastic-Job2.1.5源码-为作业开启健康诊断定时器](https://mp.weixin.qq.com/s/5bKj0xazciu0gZGrLOXThA)
   #### 6.6.9 诊断服务
   # [Elastic-Job2.1.5源码-分布式调度作业在单机环境下是如何被触发执行的](https://mp.weixin.qq.com/s/N9yaFgfPwmo9mAKbu8C0SA)
   ### 6.7 为作业绑定触发器开始调度作业
   ## 7 作业的执行
   ### 7.1 scheduler对作业的调用
   # [Elastic-Job2.1.5源码-调度作业的模版方法设计原理](https://mp.weixin.qq.com/s/kzUL7GKrQP6m5muIDNYopQ)
   ### 7.2 作业执行模版
   #### 7.2.1 作业执行器的获取
   #### 7.2.2 作业模版下的通用执行逻辑execute简介
   # [Elastic-Job2.1.5源码-调度服务器之间的时间准确性验证思路](https://mp.weixin.qq.com/s/UifnXfH30hC7OkqX-J4bXw)
   ### 7.3 调度服务器之间的时间准确性验证思路
   # [Elastic-Job2.1.5源码-分布式场景下如何用逻辑分片来进行水平扩展的?](https://mp.weixin.qq.com/s/Gc7-kJ5PIZW1hY2U4aA8UA)
   ## 7.4 作业分片
   ### 7.4.1 分片概念
   ### 7.4.2 分片上下文的获取
   ### 7.4.3 获取失效转移的分片项
   ### 7.4.4 正常执行作业的分片项获取
   # [Elastic-Job2.1.5源码- 选主节点执行分片逻辑的过程](https://mp.weixin.qq.com/s/8CQptGtKsVjxZIB9L8t1AQ)
   #### 7.4.5 分片逻辑
   ##### 7.4.5.1 首先我们要明白为什么要选主节点?
   ##### 7.4.5.2 非主节点自旋等待主节点分片完成
   ##### 7.4.5.3 主节点重置分片节点
   ##### 7.4.5.4 主节点使用策略模式+Java反射来获取分片算法
   ##### 7.4.5.5 主节点使用事务执行分片的逻辑
   ##### 7.4.5.6 主节点和非主节点获取本实例被分配到的分片项然后拼接为分片上下文
   # [Elastic-Job2.1.5源码-图解分片算法动画](https://mp.weixin.qq.com/s/FIuSpBMvlYQjFswfU-7jHg)
   #### 7.4.6 分片算法
   ##### 7.4.6.1 AverageAllocationJobShardingStrategy平均分配分片算法
   ##### 7.4.6.2 OdevitySortByNameJobShardingStrategy 作业名的哈希值奇偶数决定IP升降序算法
   ##### 7.4.6.3 RotateServerByNameJobShardingStrategy 作业名的哈希值对服务器列表进行轮转的分片策略
   ##### 7.4.6.4 使用Zookeeper事务来提交多个请求
   # [Elastic-Job2.1.5源码-图解错过作业重新触发执行功能](https://mp.weixin.qq.com/s/41E5pK4HUc8QTp6zym4Fyg)
   ### 7.5 错过重触发功能
   #### 7.5.1 错过执行作业概念
   #### 7.5.2 错过执行作业配置
   #### 7.5.4 作业运行时幂等导致的错过执行
   #### 7.5.5 错过作业重新补偿执行


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@shardingsphere.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org