Я использую топологию WordCount в кластере Storm, состоящем из 2 узлов. Один узел является главным узлом (с Nimbus, UI и Logviewer), и оба из них являются супервизорами с 1 рабочим в каждом. Другими словами, мой главный узел также является супервизором, а второй узел - только супервизором. Как я уже сказал, на одного руководителя приходится 1 работник.
Используемая мной топология настроена так, что она использует этих двух рабочих (setNumWorkers(2)
). Подробно, топология имеет 1 носик с 2 резьбами, 1 сплит болт и 1 кол болт. Когда я развертываю топологию с планировщиком по умолчанию, у первого супервизора есть 1 нить носика и болт split , а у второго супервизора есть 1 нить носика и count болт.
Учитывая этот контекст, как я могу контролировать размещение операторов (носик / болт) между этими двумя рабочими? Для исследовательских целей мне нужно иметь некоторый контроль над размещением этих операторов между узлами. Тем не менее, механизм кажется прозрачным в Storm, и такой элемент управления не доступен для конечного пользователя.
Надеюсь, мой вопрос достаточно ясен. Не стесняйтесь спрашивать дополнительные детали. Я знаю, что мне может понадобиться покопаться в исходном коде Storm и перекомпилировать. Хорошо. Я ищу отправную точку и советы о том, как действовать.
Я использую версию Storm 2.1.0.