У меня есть кластер nifi с 3 узлами. Я использую процессор invokeHTTP в потоке. По сути, есть конечная точка, которая ежедневно дает мне 1–2 ГБ данных JSON, которые я, наконец, сохраняю в POSTGRES. Поток работает нормально, но я не уверен, эффективно ли я использую весь кластер из трех узлов.
Вот два сценария, в которых я тестировал поток, в этих сценариях я просто изменяю «Выполнение». режим, присутствующий на вкладке планирования процессора invokeHTTP от «Все узлы» до «ПЕРВИЧНЫЙ УЗЕЛ»
1 - В режиме выполнения «Все узлы» я вижу, как 3 запроса передаются из invokeHTTP следующему процессору. Таким образом, вместо только 2 ГБ ответа json я вижу, что 6 ГБ ответа передается следующему процессору, что означает, что все 3 узла делают одно и то же, что приводит к ненужной нагрузке на кластер и базу данных.
2-В режиме выполнения «Основной узел» я вижу 1 запрос, передаваемый из invokeHTTP следующему процессору. Но я думаю, что в этом случае используется только один узел, а два других узла ничего не делают, что не является правильным использованием кластера.
Каков правильный подход для использования всего кластера?