Чтобы опубликовать сообщение в разделе, клиент сначала найдет лидера раздела из Zookeeper и отправит сообщение лидеру. Лидер записывает сообщение в свой локальный журнал. Каждый последователь постоянно вытягивает новые сообщения от лидера, используя один канал сокета. Последователь записывает каждое полученное сообщение в свой собственный журнал и отправляет подтверждение лидеру. После того, как лидер получает подтверждение от всех реплик в ISR, сообщение совершаются
Так, чтобы ответить на ваш вопрос, если клиент публикует в ServerB, консультируется зоопарк знать лидер для Topic1 и Partition1. Zookeeper отвечает, что серверA является лидером для раздела1. Таким образом, клиент отправляет сообщение серверу A. (Здесь я предположил, что разделитель отправит сообщение в раздел1.)
Все эти данные обрабатываются производителем kafka. Для конечных пользователей не нужно беспокоиться об этих деталях.
Вы можете прочитать больше об этом here