minhas informações de contato
Correspondência[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Há um Controller Broker no cluster Kafka, que é responsável pelo gerenciamento e coordenação de metadados.
Kafka usa Zookeeper como ferramenta de armazenamento e gerenciamento de metadados de cluster. Zookeeper salva as informações de status do cluster, incluindo todas as informações de tópico, partição, líder e réplica, etc.
Quando o status do cluster mudar, o Controller Broker gravará as informações de mudança no Zookeeper.
Quando o Controller Broker atual falhar, outros Brokers no cluster Kafka detectarão esta situação e conduzirão eleições através do Zookeeper.
Depois que um Broker for eleito com sucesso como um novo Controller Broker, ele lerá os metadados de cluster mais recentes do Zookeeper.
LogManager
Principal responsável por gerenciar o armazenamento e recuperação de logs (log) do Kafka.
Por exemplo: o produtor envia a mensagem para o Leader Broker1 da Partition0.LogManager
Grave a mensagem no arquivo de log da Partition0 no Broker1.
ReplicationManager
Principalmente responsável por gerenciar a replicação e sincronização de dados de partição.
A sincronização entre o Líder e o Seguidor de cada partição é realizada de forma independente. Ou seja, cada partição possui seu próprio processo de sincronização e não depende de outras partições.
Embora o processo de sincronização de cada partição seja independente, cada Broker iniciará threads de replicação correspondentes para cada partição que gerencia (seja Líder ou Seguidora), e esses threads são responsáveis por lidar com tarefas específicas de sincronização.
por exemplo:ReplicationManager
Envie mensagens recém-escritas no Broker1 para o Follower Broker2 e Broker3 da Partition0.ReplicationManager
As solicitações de replicação recebidas do Broker1 são processadas no Broker2 e no Broker3, gravando mensagens em seus respectivos arquivos de log.
SocketServer
É um componente do Kafka Broker e é responsável por lidar com conexões de rede e operações de E/S. É responsável por aceitar solicitações de conexão de clientes e outros Brokers, e atribuir um thread a cada conexão para processamento.
NetworkServer
É uma parte essencial da estrutura de comunicação de rede do Kafka e é responsável por gerenciar e agendar solicitações de rede. Ele usa NIO (E/S sem bloqueio) para lidar com conexões de rede altamente simultâneas.
Componente que se comunica com o Zookeeper.