Chunk-Größe immer 4 im Multi-Thread-Schritt, obwohl die Chunk-Größe auf 6 eingestellt istJava

Java-Forum
Anonymous
 Chunk-Größe immer 4 im Multi-Thread-Schritt, obwohl die Chunk-Größe auf 6 eingestellt ist

Post by Anonymous »

Ich verwende Spring Batch 5.2.2 mit einem kugelorientierten Schritt und einer Multi-Thread-Ausführung. Here’s my setup:

[*]Chunk size: 6 (new SimpleCompletionPolicy(6))
[*]Thread pool: corePoolSize=5, maxPoolSize=8, queueCapacity=10
Repeat operations: using TaskExecutorRepeatTemplate with the above executor (since Die Drosselklappe ist im Frühjahrs-Batch5 veraltet). />1.With Chunk-Größe = 6 und 12 Datensätze, ich sollte 2 Brocken sehen.

Code: Select all

Step step = stepBuilderFactory.get("myStep")
.chunk(6)
.reader(reader)
.processor(processor)
.writer(writer)
.stepOperations(repeatTemplate)
.build();

TaskExecutorJobLauncher launcher = new TaskExecutorJobLauncher();
launcher.setTaskExecutor(asyncExecutor);

ThreadPoolTaskExecutor stepTaskExecutor = new TE()
stepTaskExecutor.setCorePoolSize(5);
stepTaskExecutor.setMaxPoolSize(8);
stepTaskExecutor.setQueueCapacity(20);
stepTaskExecutor.setTaskDecorator(new Batch
stepTaskExecutor.initialize();

TaskExecutorRepeatTemplate repeatTemplate = new
new TaskExecutorRepeatTemplate();
repeatTemplate.setTaskExecutor(stepTaskExecutor);
repeatTemplate.setCompletionPolicy(new SimpleCompletionPolicy(6));
Kann mir jemand helfen, die Hauptursache des Problems zu verstehen, und wie ich es beheben kann?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post