Spring Batch介绍 - 使用场景
优质
小牛编辑
125浏览
2023-12-01
典型的批处理程序通常是从数据库、文件或队列中读取大量数据,然后通过某些方法处理数据,最后将处理好格式的数据写回库中。通常SpringBatch工作在离线模式下,不需要用户干预、就能自动进行基本的批处理迭代,进行类似事务方式的处理。批处理是大多数IT项目的一个组成部分,而Spring Batch是唯一能够提供健壮的企业级扩展性的批处理开源框架。
业务场景
- 定期提交批处理任务
- 并发批处理:并行执行任务
- 分阶段,企业消息驱动处理
- 高并发批处理任务
- 失败后手动或定时重启
- 按顺序处理任务依赖(使用工作流驱动的批处理插件)
- 局部处理:跳过记录(例如在回滚时)
- 完整的批处理事务:因为可能有小数据量的批处理或存在存储过程/脚本
技术目标
- 利用Spring编程模式:使开发者专注于业务逻辑,让框架解决基础功能
- 在基础架构、批处理执行环境、批处理应用之间有明确的划分
- 以接口形式提供通用的核心服务,以便所有项目都能使用
- 提供简单的默认实现,以实现核心执行接口的“开箱即用”
- 易于配置、定制和扩展服务,基于spring框架的各个层面
- 所有的核心服务都可以很容易地扩展与替换,却不会影响基础系统层。
- 提供一个简单的部署模型,通过Maven编译,将应用程序与框架的JAR包完全分离