Spring Batch 设计的时候充分考虑了可扩展性和各类终端用户。

下图显示了 Spring Batch 的架构层次示意图,这种架构层次为终端用户开发者提供了很好的扩展性与易用性.

Spring Batch 体系结构-LMLPHP

上图显示的是 Spring Batch 层级体系结构

这个层级体系结构高亮显示了 Spring Batch 的 3 个主要组件:应用(Application),核心(Core)和 基础架构(Infrastructure)。

应用层包含了所有的批量作业和开发者使用 Spring Batch 写的所有自定义代码。批量核心层包含了所有运行和控制批量作业所需必要的运行时类。同时还包括了有 JobLauncherJob, 和 Step 的实现。应用层和核心层都构建在基础架构层之上。

基础架构层包含了有 读(readers)和 写(writers )以及服务(services)。例如有针对服务使用, RetryTemplate。基础架构层的这些东西,这些能够被应用层开发(readers 和 writers,例如  ItemReaderItemWriter)和批量核心框架(例如,retry,这个是核心层自己的库)所使用。

简单的来说,基础架构层为应用层和批量核心层提供了所需要的的基础内容,是整个  Spring Batch 的基础。我们针对 Spring Batch 的开发绝大部分情况是在应用层完成的。

https://www.cwiki.us/display/SpringBatchZH/Spring+Batch+Architecture

05-08 08:45