实例介绍
【实例截图】
【核心代码】
Contents 1 简介 2 1.1 ElasticJob‐Lite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 ElasticJob‐Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 功能列表 4 3 环境要求 5 3.1 Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.2 Maven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.3 ZooKeeper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.4 Mesos(仅 ElasticJob‐Cloud 使用) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4 快速入门 6 4.1 ElasticJob‐Lite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4.1.1 引入 Maven 依赖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4.1.2 作业开发 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4.1.3 作业配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.1.4 作业调度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.2 ElasticJob‐Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.2.1 引入 Maven 依赖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.2.2 作业开发 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.2.3 作业启动 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.2.4 作业打包 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.2.5 API 鉴权 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.2.6 作业发布 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4.2.7 作业调度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5 概念 & 功能 10 5.1 调度模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 5.1.1 进程内调度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 5.1.2 进程级调度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 5.2 弹性调度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 i 5.2.1 分片 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 分片项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 个性化分片参数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 5.2.2 资源最大限度利用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.2.3 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.2.4 ElasticJob‐Lite 实现原理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 弹性分布式实现 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 注册中心数据结构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 config 节点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 instances 节点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 sharding 节点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 servers 节点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 leader 节点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 流程图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.3 资源分配 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.3.1 作业运行模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 瞬时作业 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 常驻作业 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.3.2 调度器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.3.3 作业应用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.3.4 作业 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.3.5 资源 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 5.4 失效转移 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 5.4.1 概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 5.4.2 执行机制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 通知执行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 问询执行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.4.3 适用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.5 错过任务重执行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.5.1 概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.5.2 适用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5.6 作业开放生态 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5.6.1 作业接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5.6.2 执行器接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 6 用户手册 23 6.1 ElasticJob‐Lite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 6.1.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 6.1.2 对比 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 6.1.3 使用手册 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 作业 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 作业监听器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 事件追踪 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 操作 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 6.1.4 配置手册 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 ii 注册中心配置项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 作业配置项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 作业监听器配置项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 事件追踪配置项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Java API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Spring Boot Starter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Spring 命名空间 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 内置策略 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 作业属性配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 6.1.5 运维手册 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 部署指南 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 导出作业信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 作业运行状态监控 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 运维平台 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 6.2 ElasticJob‐Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 6.2.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 6.2.2 对比 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 6.2.3 使用手册 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 开发指南 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 本地运行模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 6.2.4 配置手册 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 鉴权 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 应用 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 作业 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 6.2.5 运维手册 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 部署指南 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 运维平台 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 7 开发者手册 80 7.1 作业分片策略 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 7.2 线程池策略 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 7.3 已知实现类 详细说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 7.4 错误处理策略 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 7.5 作业类名称提供策略 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 7.6 线路规划 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 7.6.1 Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 7.6.2 ElasticJob‐Lite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 7.6.3 ElasticJob‐Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 8 下载 85 8.1 最新版本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 8.1.1 ElasticJob ‐ 版本: 3.0.0‐RC1 ( 发布日期: Dec 25, 2020 ) . . . . . . . . . . . . . . . 85 8.1.2 ElasticJob‐UI ‐ 版本: 3.0.0‐RC1 ( 发布日期: Dec 31, 2020 ) . . . . . . . . . . . . . 85 8.2 全部版本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 iii 8.3 校验版本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 9 采用公司 87 9.1 登记 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 9.2 谁在使用 ElasticJob? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 9.2.1 电子商务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 9.2.2 金融行业 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 9.2.3 数字化与云服务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 9.2.4 出行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 9.2.5 物流 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 9.2.6 房地产 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 9.2.7 互联网教育 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 9.2.8 互联网文娱 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 9.2.9 新闻资讯 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 9.2.10 通信科技 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 9.2.11 物联网 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 9.2.12 软件开发及服务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 9.2.13 医疗健康 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 9.2.14 零售业 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 10 FAQ 92 10.1 阅读源码时为什么会出现编译错误? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 10.2 是否支持动态添加作业? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 10.3 为什么在代码或配置文件中修改了作业配置,注册中心配置却没有更新? . . . . . . . . . 92 10.4 作业与注册中心无法通信会如何? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 10.5 ElasticJob‐Lite 有何使用限制? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 10.6 怀疑 ElasticJob‐Lite 在分布式环境中有问题,但无法重现又不能在线上环境调试,应该怎 么做? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 10.7 ElasticJob‐Cloud 有何使用限制? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 10.8 在 ElasticJob‐Cloud 中添加任务后,为什么任务一直在 ready 状态,而不开始执行? . . . 94 10.9 控制台界面无法正常显示? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 10.10 为什么控制台界面中的作业状态是分片待调整? . . . . . . . . . . . . . . . . . . . . . . . 94 10.11 为什么首次启动存在任务调度延迟的情况? . . . . . . . . . . . . . . . . . . . . . . . . . 94 10.12 Windows 环 境 下, 运 行 ShardingSphere‐ElasticJob‐UI, 找 不 到 或 无 法 加 载 主 类 org.apache.shardingsphere.elasticjob.lite.ui.Bootstrap,如何解决? . . . . . . . . . . . 94 10.13 运行 Cloud Scheduler 持续输出日志“Elastic job: IP:PORT has leadership”,不能正常运行 95 11 博客 96
标签: java
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论