• Русский
  • Архитектура

    Alauda Streaming Service for Kafka использует распределённую архитектуру Kafka для обеспечения проверенного решения с высокой доступностью, отвечающего требованиям предприятий по высокопроизводительным, надёжным и эластично масштабируемым системам очередей сообщений.

    Режим координации ZooKeeper

    Режим координации ZooKeeper — это традиционная реализация распределённой координации для Kafka, использующая кластер ZooKeeper для управления метаданными кластера Kafka, регистрации брокеров и выбора контроллера, а также других ключевых функций. Этот режим обладает следующими характеристиками:

    • Зрелость и стабильность: Проверен в масштабных производственных средах, обладает чрезвычайно высокой надёжностью.
    • Разделение ответственности: ZooKeeper сосредоточен на координации кластера, в то время как брокеры Kafka — на обработке сообщений.
    • Автоматический failover: Автоматический выбор контроллера достигается с помощью механизма watcher в ZooKeeper.
    • Управление метаданными: Хранит ключевые метаданные, такие как информация о разделах топиков и смещения потребителей.
    • Зависимость при масштабировании: Требует дополнительного обслуживания кластера ZooKeeper, что увеличивает операционную сложность.

    kafka zk arch

    Режим KRaft

    Режим KRaft — это система управления метаданными следующего поколения в Kafka, которая заменяет ZooKeeper собственным протоколом консенсуса на базе Raft. Этот режим обладает следующими характеристиками:

    • Упрощённая архитектура: Устраняет внешнюю зависимость от ZooKeeper, снижая операционную сложность.
    • Повышенная масштабируемость: Поддерживает значительно большее количество разделов (до миллионов, по сравнению с сотнями тысяч в режиме ZooKeeper).
    • Быстрый failover контроллера: Обеспечивает переключение менее чем за секунду, что значительно лучше многосекундной задержки failover в ZooKeeper.
    • Более сильная согласованность: Гарантирует линейную согласованность операций с метаданными, обеспечивая более строгие гарантии, чем eventual consistency метаданных на базе ZooKeeper.
    • Гибкие варианты развертывания: Поддерживает как комбинированный режим (единые процессы, выполняющие функции брокеров и контроллеров, подходящий для небольших кластеров), так и выделенный режим (отдельные процессы контроллера и брокера, оптимальный для крупномасштабных развертываний).

    kafka kraft arch