当前位置: 首页 > 知识库问答 >
问题:

Grails插件支持Spring批处理分割流吗?

柯唯
2023-03-14

我正在为Grails使用Spring批处理插件(Spring-batch-1.0.RC2)。到目前为止工作正常,但我想分割流来执行。。。支持吗?这是我试图执行的代码。。。但结果是第一步,第二步,第三步,第四步。

beans {
  xmlns batch:"http://www.springframework.org/schema/batch"

  jobLauncher(org.springframework.batch.core.launch.support.SimpleJobLauncher){
     jobRepository = ref("jobRepository")
     taskExecutor = bean(org.springframework.core.task.SimpleAsyncTaskExecutor)
     taskExecutorParallel = bean(org.springframework.core.task.SimpleAsyncTaskExecutor)
  }

  batch.job(id: 'endOfDayJob') {
     batch.step(id: 'logStart', next:'createContext') {
        batch.tasklet(ref: 'printStartMessage')
     }

  batch.step(id: 'createContext', next:'split1') {
    batch.tasklet(ref: 'context')
  }

  batch.split(id: 'split1',taskexecutor:'taskExecutorParallel', next:'logFinish'  ) {
    batch.flow{ 

       batch.step(id:'step1Id', next:'step2Id'){
            batch.tasklet(ref: 'step1')
        }           
        batch.step(id: 'step2Id') {
            batch.tasklet(ref: 'step2')
        }
    }
    batch.flow{
        batch.step(id:'step3Id', next:'step4Id'){
            batch.tasklet(ref: 'step3')
        } 
        batch.step(id: 'step4Id') {
            batch.tasklet(ref: 'step4')
        }
    }
  }

  batch.step(id: 'logFinish') {
    batch.tasklet(ref: 'printEndMessage')
  }
}

谢啦!

共有1个答案

崔恺
2023-03-14

我得到了它。。。它被支持。。。我在这句话中犯了一个错误:

batch.split(id: 'split1','task-executor':'taskExecutorParallel', next:'logFinish'  ) {
 类似资料:
  • Cassaforte具有插入批处理功能,可一次性将多行插入到cassandra CQL表中。 我最近切换到Alia,我想知道它是否提供相同的功能?我不能立即在留档中看到任何内容,并且(hayt/value…)似乎一次只支持单行插入。

  • 我需要用Storm处理成批的元组。我的最后一个bolt必须等到拓扑接收到整个批处理之后才能进行一些处理。为了避免混淆--对我来说,批处理是一组N条消息,它们是实时的,这个术语不需要与批处理(Hadoop)联系在一起。即使2条消息也可以是一批。 阅读Storm的文档是否可以说Storm不支持这种批处理(实时的批处理=N条消息)? 所以我的问题是给你们,我亲爱的Storm大师们,这个拓扑是不是设计得很

  • 我想从mysql读取数据,然后写入sftp。现在我将文件写入本地,从本地写入sftp,最好的方法是什么?

  • 我尝试使用r2dbc执行批处理插入。 我已经看到,使用spring boot中的DatabaseClient,这还不可能实现。我尝试使用R2DBC SPI语句和and方法来实现这一点,如下所示: 我在日志上看到完成了两个插入请求。 添加是执行批更新还是只运行两个请求? 谢谢

  • 在我的项目中配置了以下内容: 加载文件时,我有重复的记录,但因为我配置了在下,Spring batch不应回滚记录,但仍将回滚记录。如果我从列表中删除,那么它将抛出异常。我们正在使用Spring批处理版本: 不希望回滚记录,但会回滚记录。

  • 给定以下代码,如何将其简化为单个功能行? 这是我遇到的一个常见模式,我有一个流,我想过滤这个流,根据这个过滤器创建两个流,然后我可以对流a做一件事,对流B做另一件事。这是一个反模式,还是以某种方式得到支持?