Visão Geral
Este curso capacita desenvolvedores a criar aplicações modernas utilizando Apache Kafka como plataforma de Event Streaming. O participante aprenderá a desenvolver produtores e consumidores de eventos, implementar padrões de comunicação assíncrona, integrar microsserviços, construir aplicações resilientes e escaláveis, além de utilizar recursos como serialização, gerenciamento de offsets, tratamento de erros, processamento de eventos e boas práticas para desenvolvimento de aplicações corporativas baseadas em eventos.
Conteúdo Programatico
Module 1: Apache Kafka Development Fundamentals
- Apache Kafka architecture review
- Event-driven application concepts
- Producers and consumers overview
- Kafka client libraries
- Development environment setup
- Enterprise development scenarios
Module 2: Developing Kafka Producers
- Producer API fundamentals
- Message serialization
- Record keys and partitioning
- Producer acknowledgements
- Idempotent producers
- Transactional producers overview
Module 3: Developing Kafka Consumers
- Consumer API fundamentals
- Consumer groups
- Offset management
- Automatic and manual commits
- Rebalancing concepts
- Consumer optimization
Module 4: Event Streaming Patterns
- Publish and Subscribe
- Event-driven microservices
- Event choreography
- Request-Reply using Kafka
- Event replay
- Event versioning
Module 5: Error Handling and Reliability
- Retry strategies
- Dead Letter Topic concepts
- Exception handling
- Idempotent consumers
- Delivery guarantees
- Resilient application design
Module 6: Schema Management
- Serialization formats
- Apache Avro fundamentals
- JSON Schema overview
- Protocol Buffers overview
- Schema evolution
- Schema Registry integration
Module 7: Performance Optimization
- Producer performance tuning
- Consumer optimization
- Batch processing
- Compression techniques
- Throughput optimization
- Latency reduction strategies
Module 8: Kafka Integration
- Microservices integration
- REST API integration
- Database integration
- Event-driven workflows
- Enterprise messaging patterns
- Integration best practices
Module 9: Testing Kafka Applications
- Unit testing
- Integration testing
- Embedded Kafka concepts
- TestContainers overview
- Mock producers and consumers
- Automated testing strategies
Module 10: Observability and Monitoring
- Application metrics
- Logging strategies
- Distributed tracing concepts
- Monitoring producers and consumers
- Performance analysis
- Operational diagnostics
Module 11: Secure Kafka Development
- Secure client configuration
- Authentication mechanisms
- TLS communication
- Authorization concepts
- Secret management
- Secure coding practices
Module 12: Apache Kafka Development Workshop
- Producer implementation laboratory
- Consumer implementation laboratory
- Event-driven microservices development
- Error handling implementation
- Performance optimization exercises
- Final Apache Kafka application project