From 5b89d09e1fff515aea772a3edc61b2a4d64f2647 Mon Sep 17 00:00:00 2001 From: xuxueli <931591021@qq.com> Date: Mon, 17 Jul 2017 19:01:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0RM?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- doc/XXL-JOB官方文档.md | 5 +++-- doc/XXL-JOB架构图.pptx | Bin 101800 -> 108269 bytes 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 34c64484..2b9a561f 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,7 @@ XXL-JOB是一个轻量级分布式任务调度框架,其核心设计目标是 ### 架构图 -![输入图片说明](https://static.oschina.net/uploads/img/201705/11225449_rKMi.png "在这里输入图片标题") +![输入图片说明](https://static.oschina.net/uploads/img/201707/17190028_aEE2.png "在这里输入图片标题") ### 发展 于2015年中,我在github上创建XXL-JOB项目仓库并提交第一个commit,随之进行系统结构设计,UI选型,交互设计…… diff --git a/doc/XXL-JOB官方文档.md b/doc/XXL-JOB官方文档.md index c5bda4aa..9d84719a 100644 --- a/doc/XXL-JOB官方文档.md +++ b/doc/XXL-JOB官方文档.md @@ -498,8 +498,9 @@ XXL-JOB首先定制了Quartz原生表结构前缀(XXL_JOB_QRTZ_)。 负责接收调度请求并执行任务逻辑。任务模块专注于任务的执行等操作,开发和维护更加简单和高效; 接收“调度中心”的执行请求、终止请求和日志请求等。 -##### 5.3.3 架构图 -![输入图片说明](https://static.oschina.net/uploads/img/201705/11225449_rKMi.png "在这里输入图片标题") +##### 5.3.3 架构图 + +![输入图片说明](https://static.oschina.net/uploads/img/201707/17190028_aEE2.png "在这里输入图片标题") #### 5.4 调度模块剖析 ##### 5.4.1 quartz的不足 diff --git a/doc/XXL-JOB架构图.pptx b/doc/XXL-JOB架构图.pptx index 9eeb6cd88fbfe3096dcd6fe08293a5335b14a049..03a8881e8def40da098006e66839d1aba1f13693 100644 GIT binary patch delta 25822 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 M_#7cT8IF$dfAlU}?f?J) delta 20142 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 b=i}*4Ggh(s2uLUlrU3o;A=&;RkQCT|%P^!G