2016-11-02 3 views
0

필자는 DB에서 항목을 읽습니다. 가능한 경우 항목이 이후의 "일괄 처리 크기"를 나타내는 페이징 방식으로 필터링 등의 처리 단계를 수행합니다. . 그런 다음 아이템을 축적하여 일괄 적으로 보낼 수있는 휴식 서비스에 보내고 싶습니다. 그 중 한 명씩 한 명씩.집계 프로세서 또는 집계 판독기

단계별로 Parallelising하는 것은 내가하고있는 일이지만 일괄 처리를 수행하는 방법을 잘 모르겠다. 목록을 반환하는 판독기와 목록을받는 프로세서를 구현해야합니까? 그렇다면 처리 된 번호 항목에 대한 적절한 설명이 없을 것입니다.

해결 방법을 해킹하는 대신 가장 적절한 스프링 배치 방식으로 방법을 찾으려고합니다. 독자의 상태를 유지해야한다고 생각하고 더 좋은 방법이 있는지 궁금해합니다.

답변

2

집계 프로세서와 같은 것을 사용할 수 없습니다. 읽히는 모든 단일 항목은 단일 항목으로 처리됩니다.

그러나 항목을 그룹화하고 전체 그룹으로 전달하는 Reader를 구현할 수 있습니다. 아이디어를 얻으려면이 질문에 대한 내 대답을 살펴보십시오 Spring Batch Processor 또는 딘 클락의 대답은 Spring Batch-How to process multiple records at the same time in the processor?입니다.

둘 다 SpringBatch의 SingleItemPeekableItemReader를 사용합니다.