java程序员-http://www.it-ebooks.info/

年轻的我,脚踩大地,仰望天空,路还很长....

博客园 首页 新随笔 联系 订阅 管理

1.批处理:

  类似于SQL里面的批处理提交

2.场景:

  业务定时进行批处理操作,但是批处理的编程模型是怎么的呢?

3.开源框架

  Spring Batch

4.编程模型:

  reader-processor-writer

  JobLauncher - Job - JobExecution -JobParametersValidator

  JobExecution result = launcher.run(job, new JobParameters()); //runJob机制

5.策略

  a.批量提交,配置事务  commit-interval="1000"

  b.失败策略   skip-policy skip-limit skippable-exception-classes (我们在项目一般仅仅记录日志,之后人工进行处理或者重试)

  c.重试策略   retry-limit    retry-policy

 

  d.监控策略   Listeners

  e.工作流:

  f.map—reduce:Spliter/Parallel、Flow(发现Map-Reduce思想这里也有,BPM里面以及ESB都有这样的概念),结合到了线程池

6.与ESB进行集成

  支持集群部署,但是个人觉得内置的Flow有点别扭,因为这设计到了数据库内置的表结构,最好使用BPM进行代替比较好

看了这些概念,看看一图,了解一下

 

 

可以和MQ,RDBMS,FlatFile,Socket接入做系统集成。

上图目前个人感觉和Map-Reduce的编程模型接口相似,好像都是这种思想的模拟

 

posted on 2014-09-21 13:48  gstsyyb  阅读(387)  评论(0编辑  收藏  举报