Testowałem te 2 przypadki jakiś czas temu i nie pod dużym obciążeniem. Mam jednego producenta wysyłającego 10k wiadomości (tylko mały ciąg) synchronicznie do tematu, z współczynnikiem replikacji 2, z 2 partycjami, w klastrze 2 brokerów. Jest dwóch konsumentów. Każdy komponent jest wdrażany na oddzielnej maszynie. Co zaobserwowałem to:
Na normalne działanie: broker 1 jest liderem na partycji 1 i repliki na partycji 2. broker 2 jest liderem na partycji 2 i repliki na partycji 1. Doprowadzić do brokera 3 klaster nie powoduje automatycznego ponownego równoważenia partycji.
O odrodzeniu brokera (awarie niż ponowne uruchomienie): przywrócenie równowagi jest przejrzyste dla producenta i konsumentów. Broker restartu najpierw replikuje log, a następnie udostępnia się.
Na maklera rozbił (lider lub nie): symulowane przez kill -9 na jednym maklera. Producent i konsumenci zostają zamrożeni do momentu wygaśnięcia efemerycznego węzła w ZK zabitego brokera. Następnie operacje są wznawiane normalnie.