2017-10-31 1 views
0

스톰 토폴로지 중 하나에서 유스 케이스를 사용하여 처리를 위해 볼트로 들어가는 튜플 수를 제어하려고합니다. 예를 들어, 100 개의 튜플이 이미 처리되고있는 경우 더 많은 튜플을받는 것을 중단하고 싶습니다. 아마 이것은 topology.max.spout.pending에 의해 제어 될 수 있지만,이 구성은 토폴로지 레벨에 있습니다. 어떻게 볼트 레벨에서이 작업을 수행 할 수 있습니까?폭풍 토폴로지의 한 볼트에서 더 많은 튜플을 수신하는 것을 중지하는 방법

답변

1

나는 폭풍우에서 즉시 가능하다고 생각하지 않습니다. execute 메소드를 차단할 수는 있지만 튜플이 executor 수신 대기열에 계속 빌드되므로 이상적이지 않습니다.

튜플을 이와 같이 배치로 처리하려면 스톰 트라이던트 (Storm Trident) 나 스파크 (Spark)와 같은 마이크로 일괄 처리 솔루션을 살펴보십시오.

관련 문제