nob*_*ody 5 java spring spring-batch
我有批处理作业,它从批量文件中读取数据,处理它并插入数据库.
我使用默认分区处理程序使用spring的分区功能.
<bean class="org.spr...TaskExecutorPartitionHandler">
<property name="taskExecutor" ref="taskExecutor"/>
<property name="step" ref="readFromFile" />
<property name="gridSize" value="10" />
</bean>
Run Code Online (Sandbox Code Playgroud)
gridSize这里有什么意义?我已经以这样的方式配置它等于taskExecutor中的并发性.
gridSize指定data blocks要处理的数量(通常)相同的数量workers.将其视为map/reduce中的多个映射数据块.
在StepExecutionSplitter给定数据的情况下,使用a PartitionHandler"分区"/将数据拆分为一个gridSize部分,并thread在您的情况下将每个部分发送给独立的worker => .
例如,DB中有10行需要处理.如果您将其gridSize设置为5,并且您使用的是简单的分区逻辑,则每个线程最终会有10/5 = 2行=> 5个线程,每个线程同时工作2行.
| 归档时间: |
|
| 查看次数: |
10154 次 |
| 最近记录: |