Apache Kafka é uma plataforma distribuída de streaming de eventos que permite publicar e assinar streams de mensagens de maneira durável e tolerante a falhas. Ele é usado no iti para mensageria entre microserviços e integração com sistemas corporativos. Alguns benefícios incluem desempenho para armazenar grandes volumes de dados e flexibilidade para lidar com dados históricos e futuros.
77. combinar mensageria, storage e stream processing
é o que posiciona muito bem o Apache Kafka
como uma plataforma de streaming
78. traz a possibilidade de
lidar com dados históricos e futuros
com a mesma abordagem
79. traz a possibilidade de
integrar todo tipo de sistema e workload,
incluindo pipelines de dados,
aplicações off-line ou com janelas estendidas de
manutenção
uma diferença que quero destacar entre esse slide e o slide anterior
aqui as pessoas não tiveram opçãojá o cenário do LinkedIn é recorrentetemos opção?cuidado para não repetir erros datados de 2010
um ponto de encontro interessante é:
Kafka pode ser visto como a espinha dorsal de uma arquitetura corporativa
por exemplo – stateful computations
tópicos são mantidos como logs particionados
logs particionados são conjuntos de mensagens sem fim pré-determinado
mensagens são ordenadas e imutáveis
toda mensagem pertence a uma partição
toda mensagem possui um offset
o consumo de um tópico sempre é arranjado em grupos de consumidores
cada grupo possui offsets independentes
um grupo pode ter uma quantidade de consumidores não ociosos menor ou igual ao número de partições do tópico
leader handles all read and write requests
followers passively replicate the leader
if the leader fails, one of the followers will automatically become the new leaderhttps://www.confluent.io/blog/hands-free-kafka-replication-a-lesson-in-operational-simplicity/
para concluir com uma provocação…
partiu “urbanizar“ a tecnologia do iti com práticas e ferramentas modernas