elastic-job源码分析
文章平均质量分 71
三寸花笺
一个热爱编程的人
展开
-
elastic-job源码分析(四)Leader选举
对于一个分布式系统来说,为了保证数据的一致性,通常会选择一个主节点执行数据的写入,然后从节点同步主节点数据,elastic-job同样是一个道理。首先看一下主节点的选举代码public void registerStartUpInfo(final boolean enabled) { listenerManager.startAllListeners(); // leader选举 leaderService.electLeader(); s原创 2021-03-15 18:48:10 · 608 阅读 · 0 评论 -
elastic-job源码分析(三)作业分片
关于作业分片,首先先看下有哪些地方会促使作业进行分片public void init() { // 1.将配置更新到注册中心 LiteJobConfiguration liteJobConfigFromRegCenter = schedulerFacade.updateJobConfiguration(liteJobConfig); // 2.缓存当前作业分片数到本地 JobRegistry.getInstance().setCurrentS原创 2021-03-05 17:27:55 · 324 阅读 · 0 评论 -
elastic-job源码分析(二)任务调度
前一节分析了一下elastic的启动过程,接下来看一下它的调度过程。elastic-job的调度引擎是基于quartz,也就是说调度这一块都是quartz来负责,elastic-job则在上层逻辑进行处理。在实例化JobSchedulerController时,创建JobDetailprivate JobDetail createJobDetail(final String jobClass) { // 使用LiteJob类作为中间类,协调elastic和quartz JobDetai原创 2021-03-05 15:04:27 · 257 阅读 · 1 评论 -
elastic-job源码分析(一)启动过程
elastic-job版本 2.1.5,由于master分支使用的式curator5.x,支持zookeeper需要3.6.x,对3.5和3.4支持不是好,所以采用了较低版本的elastic-job源码进行解析elastic-job启动分析:elastic-job配置的一个核心类JobScheduler(本文只讲述SimpleJob类型作业), 直接看该类的init方法public void init() { // 1.将配置更新到注册中心 LiteJobConfigu原创 2021-03-04 17:13:01 · 466 阅读 · 1 评论