paulwong

SPRING BATCH 运行机制

JOB的XML配置相当于命令模式中的一个命令,每次运行,会生成一个JOB INSTANCE,同时也会生成一个JOB EXCETION,JOB INSTANCE表示有一个JOB,JOB EXECUTION表示进行第一次尝试。失败运行的JOB再次运行时,只生成一个JOB EXCETION,表示进行的第二次尝试。当SPRING BATCH JOB引擎接到运行请求时,有以下几种情况:@import url(http://www.blogjava.net/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);

  1. 判断此JOB以前是否有运行过,判断依据:根据JOB NAME和JOB PARAMETERS信息去这两张表查找,如找到记录,则是有运行过,如确定有则引擎退出并提示。


  2. 判断是否有重复运行的JOB,如果没,查找此JOB上次运行的情况,如果有FAIL的情况,则重新从上次失败的地方运行继续运行,判断根据:根据JOB INSTANCE关联的JOB EXECUTION查找是否有状态为FAIL的记录,如有则是,就新建一个JOB EXECUTION表示进行第二次尝试,同时又生成关于新JOB的JOB EXECUTION。上次的JOB运行完后,再运行此次新JOB。判断上次失败的STEP的依据:查找对应的JOB EXECUTON的STEP EXECUTON状态为FAIL的STEP即可,会从此步骤开始运行,而不是从第一步开始运行。

参考文档:
http://static.springsource.org/spring-batch/reference/html/domain.html#domainJobInstance

posted on 2012-10-20 11:57 paulwong 阅读(662) 评论(0)  编辑  收藏 所属分类: SRPING BATCH


只有注册用户登录后才能发表评论。


网站导航: