Подключение к разбившемуся брокеру не пробует следующего брокера - PullRequest
0 голосов
/ 20 июня 2019

B1, B2, B3 - брокеры

  1. Уменьшите B2, B3 - теперь B1 становится лидером по темам
  2. Уменьшить B1
  3. Увеличить В2, В3
  4. Только после увеличения B1 Мы можем получить сообщение в этой теме

Проблема заключается в том, что без перезапуска клиентский клиент Kafka не пытается подключиться к следующему брокеру, если текущий брокер выходит из строя.

  • Проверен на любой обратный вызов для проблемы подключения.
  • Проверен kakfa-python GitHub, на предмет любых связанных проблем подано В Github уже был поднят вопрос по этому вопросу. Код исправление было сделано для этого. Но для меня это все еще не работает https://github.com/dpkp/kafka-python/issues/140

    consumer = KafkaConsumer(
        <<topic>>,
        group_id=<<group-id>>,
        bootstrap_servers=[B1,B2,B3],
        auto_offset_reset='latest'
    )
    
    for message in consumer:
    # message value and key are raw bytes -- decode if necessary!
    # e.g., for unicode: `message.value.decode('utf-8')`
    print("%s:%d:%d: key=%s value=%s" % (message.topic, message.partition,
                                          message.offset, message.key,
                                          message.value))
    
...