Apache Kafka para Desenvolvedores Java
- Nível: Avançado
- Módulos: 6
- Aulas: 43
- Tempo de leitura: 2h 50min
- Tecnologias: Java
- Preço: Gratuito
Código do curso: github.com/johnpires/apache-kafka-desenvolvedores-java
Domine o Apache Kafka no ecossistema Java com este curso avançado e completo. Você aprenderá desde os fundamentos da arquitetura distribuída de mensageria até padrões avançados de produção, consumo e processamento de streams em tempo real. O curso aborda tópicos como particionamento, replicação, garantias de entrega, Kafka Streams, Connect e Schema Registry.
Ao longo do curso, você construirá aplicações reais usando Spring Boot com Spring Kafka, implementando producers e consumers robustos, lidando com serialização Avro, monitoramento com métricas JMX e deploy em ambientes containerizados com Docker. Também exploraremos padrões como Event Sourcing, CQRS com Kafka e estratégias de escalabilidade horizontal.
Este curso é ideal para desenvolvedores Java que já possuem experiência com Spring Boot e desejam dominar sistemas distribuídos baseados em eventos, preparando-se para arquiteturas de microsserviços de alta performance em produção.
Conteúdo do curso
Módulo 1: Fundamentos do Apache Kafka
Conceitos fundamentais de mensageria distribuída e arquitetura do Kafka
- O que é Apache Kafka e por que usá-lo (2 min)
- Arquitetura do Kafka: Brokers, Clusters e ZooKeeper/KRaft (3 min)
- Tópicos, Partições e Offsets (3 min)
- Modelo de Produção e Consumo de Mensagens (3 min)
- Garantias de Entrega: At-most-once, At-least-once e Exactly-once (3 min)
- Replicação e Tolerância a Falhas (4 min)
- Instalação e Configuração do Kafka com Docker (3 min)
Módulo 2: Spring Kafka — Producers
Implementação de producers robustos com Spring Boot e Spring Kafka
- Configurando Spring Boot com Spring Kafka (3 min)
- Criando seu Primeiro Producer (3 min)
- Serialização de Mensagens: String, JSON e Avro (3 min)
- Particionamento Customizado e Chaves de Mensagem (3 min)
- Callbacks, Acks e Configurações de Confiabilidade (4 min)
- Transações no Kafka Producer (3 min)
- Boas Práticas e Padrões para Producers em Produção (5 min)
Módulo 3: Spring Kafka — Consumers
Implementação de consumers escaláveis e resilientes com Spring Kafka
- Configurando Consumers com @KafkaListener (4 min)
- Consumer Groups e Rebalanceamento de Partições (4 min)
- Controle Manual de Offset e Commit Strategies (4 min)
- Tratamento de Erros e Dead Letter Topics (4 min)
- Retry e Backoff com Spring Kafka (5 min)
- Consumers Concorrentes e Paralelismo (4 min)
- Monitoramento e Métricas de Consumers (5 min)
Módulo 4: Kafka Streams e Processamento em Tempo Real
Processamento de streams em tempo real com Kafka Streams API e Spring
- Introdução ao Kafka Streams e Topologias (2 min)
- KStream vs KTable: Streams e Tabelas (3 min)
- Operações de Transformação: Map, Filter e FlatMap (3 min)
- Joins entre Streams e Tabelas (3 min)
- Agregações e Windowing (Janelas Temporais) (3 min)
- State Stores e Processamento Stateful (4 min)
- Kafka Streams com Spring Boot: Integração Completa (4 min)
Módulo 5: Kafka Connect e Schema Registry
Integração de dados com Kafka Connect e governança de schemas com Schema Registry
- Kafka Connect: Arquitetura e Conceitos (5 min)
- Source Connectors: Capturando Dados de Bancos de Dados (CDC) (4 min)
- Sink Connectors: Exportando Dados para Elasticsearch e S3 (6 min)
- Schema Registry: Governança de Schemas com Avro (4 min)
- Evolução de Schemas e Compatibilidade (5 min)
- Configurando Kafka Connect em Modo Distribuído (4 min)
- Desenvolvendo Connectors Customizados (5 min)
Módulo 6: Observabilidade, Deploy e Projeto Final
Monitoramento, deploy em produção e projeto final completo com Kafka
- Monitoramento do Kafka com JMX e Prometheus (4 min)
- Dashboards com Grafana para Kafka (3 min)
- Logging Estruturado e Tracing Distribuído (4 min)
- Deploy do Kafka em Producao com Docker Compose (8 min)
- Seguranca no Kafka: SSL, SASL e ACLs (8 min)
- Tuning de Performance e Capacity Planning (8 min)
- Projeto Final: Sistema de Processamento de Eventos em Tempo Real (2 min)
- Projeto Final: Implementacao Completa com Spring Boot + Kafka (3 min)