基本信息
源码名称:Apache ShardingSphere ElasticJob中文文档
源码大小:1.63M
文件格式:.pdf
开发语言:Java
更新时间:2021-08-18
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
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