批处理框架-spring Batch
并发处理业务
数据量大,并发度高,要支持事物,回滚,并发机制。事务、并发、监控、执行等,并不提供相应的调度功能。因此,如果我们希望批处理任务定期执行,可结合 Quartz 等成熟的调度框架实现。
业务场景:
///分布式下面的批处理系统有Hadoop,有时间可以研究一下,它需要特定的场景
================================================================================================
1.系统业务量很大的情况下,可以现将业务暂时存储下来,在系统不忙的情况下进行批量的处理(就是时候进行归档处理),Spring Batch刚好就是这样的一个框架。
2.主要有基础层,核心层,应用层
3.设计
JobRepository:批处理的任务仓库-----所有提交待处理的批处理任务
JobLanucher:批处理的调度管理器------启动批处理服务,开始处理
Job:具体的批处理作业----------------具体的批处理作业 ?这个可以挂接我们自己的业务
Step:一个批处理作用的一个过程
ItemReader:读取---获取数据
ItemProcessor:处理数据
ItemWriter:写入持久化数据
上述就是批处理的一个处理流程,Spring Batch给我们统一管理,我们仅仅把自己的业务挂接在其组件上即可。
============================================================================================
1、commit-interval:批量进行提交(写入)--reader数目为commit-interval数目时,writer提交写入。
2、retry-limit:此步骤失败后重拾的最大次数,如果超过这个数目,就不会重试。
3、retryable-exception-classes:重试的条件(一般就是通过异常进行中断或者自定义策略)-include,exclude
4、retry-policy:自定义重试的策略----就是条件是什么就可以知道要重试了,有这个retryable-exception-classes不生效SkipPolicy
5、skip-limit:出错进行跳过
6、skippable-exception-classes:-include,exclude
7、skip-policy:自定义策略RetryPolicy
注:任务失败后,首先应该重试几次,如果不行的话,再采用Skip机制,采用Listeners机制记录Log记录(CheckPoint),之后进行任务重做,其次在进行任务的重新启动执行。
=============================================================================================
1.tasklet--实现Tasklet接口即可
2.tasklet-chunk---里面有reader,writer,processor
3.listeners-监听器
==============================================================================================
1、split并发--task-executor
2、decision
3、
=============================================================================================
截图来自网络。
可以作为ESB端的批处理组件
批处理框架-spring Batch的更多相关文章
- 【转】大数据批处理框架 Spring Batch全面解析
如今微服务架构讨论的如火如荼.但在企业架构里除了大量的OLTP交易外,还存在海量的批处理交易.在诸如银行的金融机构中,每天有3-4万笔的批处理作业需要处理.针对OLTP,业界有大量的开源框架.优秀的架 ...
- Spring Batch 批处理框架
<Spring Batch 批处理框架>基本信息作者: 刘相 出版社:电子工业出版社ISBN:9787121252419上架时间:2015-1-24出版日期:2015 年2月开本:16开页 ...
- 图书简介:Spring Batch批处理框架
大数据时代批处理利器,国内首度原创解析Spring Batch框架. 内容简介: <Spring Batch 批处理框架>全面.系统地介绍了批处理框架Spring Batch,通过详尽的实 ...
- spring batch批处理框架学习
内如主要来自以下链接: http://www.importnew.com/26177.html http://www.infoq.com/cn/articles/analysis-of-large-d ...
- Spring Batch 批处理框架介绍
前言 在大型的企业应用中,或多或少都会存在大量的任务需要处理,如邮件批量通知所有将要过期的会员,日终更新订单信息等.而在批量处理任务的过程中,又需要注意很多细节,如任务异常.性能瓶颈等等.那么,使用一 ...
- spring batch资料收集
spring batch官网 Spring Batch在大型企业中的最佳实践 一篇文章全面解析大数据批处理框架Spring Batch Spring Batch系列总括
- Spring Batch 高级-
spring batch / 并行处理 / 多线程 分区 1. 并行处理,多线程,分区 http://blog.csdn.net/github_36849773/article/details/692 ...
- Spring Batch远程分区的本地Jar包模式
1 前言 欢迎访问南瓜慢说 www.pkslow.com获取更多精彩文章! Spring相关文章:Springboot-Cloud Spring Batch远程分区对于大量数据的处理非常擅长,它的实现 ...
- Spring Batch 入门级示例教程
Spring Batch 入门级示例教程 我将向您展示如何使用Spring Boot创建一个的Spring Batch的Hello World示例. (循序渐进) 因此,如果您是Spring Batc ...
随机推荐
- Redis 学习第一课:安装Linux Redis(Ubantu)
对于分布式缓存,之前公司项目中只使用了MemCached,使用比较方便,有现成的C#版本组件. 如今用Redis的公司有很多,所以打算了解一下Redis. Redis的官网地址:http://redi ...
- SWIFT Enumeration(2)
之前记录了Swift Enumeration(1),这篇算是它的延续吧,继续说下Enumeration,看以下定义 enum TrainStatus { case OnTime case Delay( ...
- RCNN、SPP-net、Fast-RCNN和Faster-RCNN
RCNN RCNN (Regions with CNN features) 的核心思想是把图像划分成N(2000)个独立的区域,分别提取每个区域的CNN特征,然后把这些特征使用SVM等分类器进行结果预 ...
- QT 5.4.1 for Android Windows环境搭建
QT 5.4.1 for Android Windows环境搭建 2015-5-13 目录 一.参考文章: 二.准备软件: 三.安装准备好的软件: 四.配置Qt 5.4.1 for Android 五 ...
- HihoCoder - 1867: GCD (莫比乌斯容斥)
Sample Input 6 1 6 2 5 3 4 Sample Output 10 You are given a {1, 2, ..., n}-permutation a[1], a[2], . ...
- Android GUI架构之MVC模式
1. Android UI框架 和其他Java UI框架一样,Android UI框架也是单线程和事件驱动的,采用MVC模式进行组织. 2. MVC模式 M:Model,是应用的核心,也就是应用真正想 ...
- struts2访问ServletAPI方式和获取参数的方式
一.访问ServletAPI的三种方式 方式1:通过让Action类去实现感知接口. 此时项目依赖:servlet-api.jar. ServletRequestAware:感知HttpServlet ...
- C经典案例
1. C中可变参数函数作为函数参数: void media_debug_set_handler(struct media_device *media, void (*debug_handler)(vo ...
- ASP.NET 5 & MVC6系列教程
本系列的大部分内容来自于微软源码的阅读和网络,大部分测试代码都是基于VS RC版本进行测试的. 解读ASP.NET 5 & MVC6系列(1):ASP.NET 5简介 解读ASP.NET 5 ...
- ORTP&&RTSP
ortp为了提高实时性使用UDP发送 rtsp建立了一个TCPserver,等待客户端连接,此时打开VLC播放器-->打开网络串流-->输入rtsp地址,会请求RTSP Server建立一 ...