Spring Batch 介绍

Spring Batch 介绍

企业域中的许多应用程序都需要批量处理才能执行 任务关键型环境中的业务运营。这些业务运营包括:spring-doc.cn

  • 以最高效的方式对大量信息进行自动化、复杂的处理 在没有用户交互的情况下处理。这些操作通常包括基于时间的事件 (例如月末计算、通知或通信)。spring-doc.cn

  • 定期应用在非常大的 数据集(例如,保险福利确定或费率调整)。spring-doc.cn

  • 集成从内部和外部系统接收的信息 通常需要以事务方式格式化、验证和处理 记录系统。批处理用于处理每个 10 亿笔交易 企业日。spring-doc.cn

Spring Batch 是一个轻量级、全面的批处理框架,旨在启用 开发对企业日常运营至关重要的强大批处理应用程序 系统。Spring Batch 建立在 Spring Framework 的特性之上,人们 已经开始期望(生产力、基于 POJO 的开发方法和一般的易用性 use),同时使开发人员能够轻松访问和使用更高级的 Enterprise 服务。Spring Batch 不是调度框架。有很多好的 企业调度程序(例如 Quartz、Tivoli、Control-M 等)在 商业和开源空间。Spring Batch 旨在与 scheduler 而不是替换 scheduler。spring-doc.cn

Spring Batch 提供了处理大量数据所必需的可重用功能 记录,包括日志记录和跟踪、事务管理、作业处理统计信息、 作业重启、跳过和资源管理。它还提供更先进的技术 支持极高容量和高性能批处理作业的服务和功能 通过优化和分区技术。您可以在简单的 使用案例(例如将文件读入数据库或运行存储过程)和 复杂、高容量的使用案例(例如在数据库之间移动大量数据、 转换它,依此类推)。大容量批处理作业可以在 高度可扩展的方式来处理大量信息。spring-doc.cn

背景

虽然开源软件项目和相关社区更加关注 在基于 Web 和微服务的架构框架上,已经有 明显缺乏对可重用架构框架的关注,以适应基于 Java 的批处理 处理需求,尽管仍然需要在企业 IT 中处理此类处理 环境。由于缺乏标准的、可重用的批处理架构,导致 在客户企业 IT 中开发的许多一次性内部解决方案 功能。spring-doc.cn

SpringSource(现在的 VMware)和 Accenture 合作改变了这一点。埃森哲的 实施 Batch 架构的实践行业和技术经验, SpringSource 深厚的技术经验,以及 Spring 久经考验的编程模型 共同建立了自然而强大的合作伙伴关系,以创造高质量、与市场相关的 旨在填补企业 Java 中的一个重要空白的软件。两家公司都曾合作过 许多通过开发基于 Spring 的批处理来解决类似问题的客户 架构解决方案。此输入提供了一些有用的附加细节和现实生活 有助于确保解决方案可以应用于实际问题的约束 由客户摆姿势。spring-doc.cn

Accenture 将以前专有的批处理架构框架贡献给了 Spring Batch 项目,以及用于推动支持、增强、 和现有功能集。埃森哲的贡献基于数十年的 使用最近几代 平台:大型机上的 COBOL、Unix 上的 C++,以及现在的 Java 任何地方。spring-doc.cn

埃森哲和 SpringSource 之间的合作旨在促进 软件处理方法、框架和工具的标准化 企业用户可以在创建批处理应用程序时一致使用。公司 以及希望为其提供标准、经过验证的解决方案的政府机构 企业 IT 环境可以从 Spring Batch 中受益。spring-doc.cn

使用场景

典型的批处理程序通常为:spring-doc.cn

Spring Batch 自动执行此基本批处理迭代,从而提供处理 与一组交易类似,通常在没有任何用户的离线环境中 互动。批处理作业是大多数 IT 项目的一部分,而 Spring Batch 是唯一开放的 Source 框架,该框架提供强大的企业级解决方案。spring-doc.cn

业务场景

Spring Batch 支持以下业务场景:spring-doc.cn

技术目标

Spring Batch 具有以下技术目标:spring-doc.cn

  • 让批处理开发人员使用 Spring 编程模型:专注于业务逻辑和 让框架负责基础设施。spring-doc.cn

  • 在基础设施和批处理执行之间提供清晰的关注点分离 环境和 Batch 应用程序。spring-doc.cn

  • 提供通用的核心执行服务作为所有项目都可以实现的接口。spring-doc.cn

  • 提供核心执行接口的简单和默认实现,这些接口可以是 使用“开箱即用”。spring-doc.cn

  • 使用 Spring 框架轻松配置、自定义和扩展服务 在所有图层中。spring-doc.cn

  • 所有现有的核心服务都应该易于替换或扩展,并且不会对 基础设施层。spring-doc.cn

  • 提供一个简单的部署模型,其中架构 JAR 与 使用 Maven 构建的应用程序。spring-doc.cn