Batch
批处理高效处理大量数据的能力使其成为许多用例的理想选择。Spring Batch 对行业标准处理模式的实现让您能够在 JVM 上构建稳健的批处理作业。添加 Spring Boot 和 Spring 产品组合中的其他组件,可让您构建关键任务型批处理应用程序。
什么是批处理?
批处理 是以 不要求外部交互或中断 的方式,对 有限量数据 进行处理的过程。
为什么要构建批处理过程?
批处理过程是处理 大量数据 的一种极其高效的方式。根据 SLA(服务等级协议) 调度和优先安排工作 的能力,可让您分配资源以实现 最佳利用。
使用 Spring 进行批处理
Spring Batch 是 JVM 上批处理的事实标准。它对常见批处理模式(例如基于块的处理和分区)的实现,让您能够创建高性能、可扩展的批处理应用程序,这些程序足够弹性以应对您最关键的任务流程。Spring Boot 提供了额外的生产级功能,可让您加快批处理过程的开发。
云中的批处理
批处理与云计算,尤其是 基础设施即服务 (IaaS),完美契合。以按需、弹性可扩展和容错的方式运行应用程序的能力,都是 Spring Batch 可以利用的云功能。
与常见技术的集成
Spring Batch 与其他 Spring API 的集成让您从第一天起就能高效工作。通过 ItemReader 和 ItemWriter 对 文件 的支持,通过 Spring Data 对 关系数据库 和 NoSQL 存储 的支持,以及通过 Apache Kafka 和 RabbitMQ 对 消息传递 的支持,Spring Batch 具备处理大多数 开箱即用 用例的能力。
与常见技术的集成
以 响应式 方式访问和处理数据非常重要。MongoDB、Redis 和 Cassandra 都通过 Spring Data 拥有 原生响应式支持。许多关系型数据库(Postgres、Microsoft SQL Server、MySQL、H2 和 Google Spanner)通过 R2DBC 拥有 响应式支持。在 消息传递 领域,Spring Cloud Stream 也支持对 RabbitMQ 和 Kafka 等平台的 响应式访问。
配置服务器 (Configuration server)
批处理是以 不要求外部交互或中断 的方式,对 有限量数据 进行处理的过程。
服务发现 (Service discovery)
一个动态目录,可实现客户端负载均衡和智能路由。
批处理作业 (Batch job)
对数据进行 批量高效处理,用于 关键任务应用程序。
批处理作业工作节点 (Batch job workers)
将批处理作业扩展到多个节点以获得更高的性能。
Spring Cloud Data Flow
在云中 编排或调度 您的 短暂微服务。
指标存储 (Metrics store)
在您选择的平台上 监控应用程序指标。
动态监控仪表板 (Dynamic Monitoring Dashboards)
使用 Grafana 等工具创建 动态仪表板 来 监控您的生产应用程序。