Як пояснили інші, Кафка (навіть в останній версії) не буде працювати без Зоокетера.
Kafka використовує Zookeeper для наступного:
Вибір контролера . Контролер є одним з посередників і відповідає за підтримку відносин лідер / послідовник для всіх розділів. Коли вузол вимикається, саме контролер повідомляє іншим реплікам стати лідерами розділів, щоб замінити лідери розділів на той вузол, який відходить. Zookeeper використовується для вибору контролера, переконайтесь, що він є лише один, і виберіть новий, якщо він вийде з ладу.
Членство в кластері - які брокери живі та частина кластеру? цим також керується через ZooKeeper.
Конфігурація теми - які теми існують, скільки в кожному розділі, де є репліки, хто є кращим лідером, які параметри конфігурації встановлюються для кожної теми
(0.9.0) - Квоти - скільки даних кожному клієнту дозволяється читати та писати
(0.9.0) - ACL - кому дозволено читати та писати на яку тему (старий споживач високого рівня) - Які групи споживачів існують, хто є їх членами та яке останнє зміщення отримала кожна група з кожного розділу.
[з https://www.quora.com/What-is-the-actual-role-of-ZooKeeper-in-Kafka/answer/Gwen-Shapira ]
Що стосується вашого сценарію, лише один екземпляр брокера та один виробник з кількома споживачами, ви можете використовувати штовхач для створення каналу та надіслати подію на той канал, на який споживач може підписатись та передати ці події.
https://pusher.com/