查看原文
其他

分布式作业系统 Elastic-Job-Lite 源码分析 —— 运维平台

艿艿 芋道源码 2019-05-13

点击上方“芋道源码”,选择“置顶公众号”

技术文章第一时间送达!

源码精品专栏

 


摘要: 原创出处 http://www.iocoder.cn/Elastic-Job/job-console/ 「芋道源码」欢迎转载,保留摘要,谢谢!

本文基于 Elastic-Job V2.1.5 版本分享

  • 1. 概述

  • 2. Maven模块 elastic-job-common-restful

  • 3. Maven模块 elastic-job-console

  • 4. Maven模块 elastic-job-lite-lifecycle

  • 5. 其它


1. 概述

本文主要分享 Elastic-Job-Lite 运维平台。内容对应《官方文档 —— 运维平台》。

运维平台实现上比较易懂,就不特别啰嗦的解析,简略说下每个类的用途和 UI 上的关联。

你行好事会因为得到赞赏而愉悦 
同理,开源项目贡献者会因为 Star 而更加有动力 
为 Elastic-Job 点赞!传送门

2. Maven模块 elastic-job-common-restful

  1. RestfulServer 内嵌服务器,基于 Jetty 实现

  2. GSONProvider 后端接口 JSON 格式化

  3. RestfulExceptionMapper 异常映射

  4. WwwAuthFilter 授权认证 Filter

3. Maven模块 elastic-job-console

3.1 domain 包

  • RegistryCenterConfigurations / RegistryCenterConfiguration :注册中心配置实体相关。

  • EventTraceDataSourceConfigurations / EventTraceDataSourceConfiguration / EventTraceDataSource / EventTraceDataSourceFactory :事件事件追踪数据源配置实体相关。

3.2 filter 包

  • GlobalConfigurationFilter :全局配置过滤器,加载当前会话( HttpSession ) 选择的 RegistryCenterConfiguration / EventTraceDataSource 。

3.3 repository 包

使用 XML文件 存储 EventTraceDataSource / RegistryCenterConfiguration 配置实体。

3.4 restful 包

  • config / RegistryCenterRestfulApi :注册中心配置( RegistryCenterConfiguration )的RESTful API

  • config / EventTraceDataSourceRestfulApi :事件追踪数据源配置( EventTraceDataSource )的RESTful API

  • config / LiteJobConfigRestfulApi :作业配置( LiteJobConfiguration )的RESTful API

  • EventTraceHistoryRestfulApi :事件追踪历史记录( JOB_EXECUTION_LOG / JOB_STATUS_TRACE_LOG )的RESTful API


  • ServerOperationRestfulApi :服务器维度操作的RESTful API。

  • JobOperationRestfulApi :作业维度操作的RESTful API。

3.5 service 包

  • RegistryCenterConfigurationService :注册中心( RegistryCenterConfiguration )配置服务。

  • EventTraceDataSourceConfigurationService :事件追踪数据源配置( EventTraceDataSource )服务。

  • JobAPIService :和作业相关的 API 集合服务。这些 API 在 Maven模块 elastic-job-lite-lifecycle 实现。

  • JobSettingsAPI:作业配置的API。

  • JobOperateAPI :操作作业的API。

  • ShardingOperateAPI :操作分片的API。

  • JobStatisticsAPI :JobStatisticsAPI。

  • ServerStatisticsAPI :作业服务器状态展示的API。

  • ShardingStatisticsAPI :作业分片状态展示的API。

4. Maven模块 elastic-job-lite-lifecycle

在 JobAPIService 已经基本提到,这里不重复叙述。

5. 其它

  1. 前后端分离,后端使用 JSON 为前端提供数据接口。

  2. 后端 API 使用 Restful 设计规范。

  3. 国际化使用 jquery.i18n.js 实现。

  4. 界面使用 Bootstrap AdminLTE 模板实现。




欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

已在知识星球更新源码解析如下:

源码不易↓↓↓

点赞支持老艿艿↓↓


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存