Как настроить многопоточность в Пакете Spring?

Я успешно настроил учебный проект Пакета Spring. Я действительно хотел бы знать, возможно ли сделать это многопоточным на "уровне Spring".

Основная идея о том, что я хочу, состоит в том, чтобы войти в список задач или шагов задачи и позволить им быть взятыми и продолжила работать независимыми потоками, идеально из пула, ограниченного 'n' количеством потоков.

Действительно ли это возможно? Если так, как? Мог кто-то показывать вести меня к той точке от того, где я в настоящее время в?

Простой проект, который я имею, из этого учебного руководства здесь. Это в основном имеет различные задачи, которые распечатывают сообщение на экран.

Вот мой текущий файл simpleJob.xml, который содержит детали задания:



    
        
    

    
        
    

    
        
    

    
        
        
    

    
        
        
            
                
                    
                
                
                    
                
                
                    
                
            
        
        
    

Мой appContext содержит боб репозитория задания (SimpleJobRepository), менеджер транзакций (ResourceLessTransactionManager) и средство запуска задания (SimpleJobLauncher). Я могу предоставить этот код при желании также, я просто не хотел срывать это сообщение с тоннами XML.

Спасибо очень очень за любую справку!

13
задан JasonMArcher 30 December 2014 в 19:06
поделиться

1 ответ

Создайте Split и вы сможете использовать многопоточность между различными ветвями. Используйте TaskExecutor для определения политики параллелизма.

См. Многопоточный шаг

Обязательно используйте последнюю версию Spring Batch, если вы хотите использовать многопоточность и MapJobRepository (до последней версии этот JobRepository не был потокобезопасным).

12
ответ дан 2 December 2019 в 00:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: