Visão Geral
Este curso apresenta como utilizar o RabbitMQ para implementar comunicação assíncrona entre microsserviços, promovendo desacoplamento, escalabilidade, resiliência e alta disponibilidade em arquiteturas distribuídas. O participante aprenderá a utilizar filas, exchanges, roteamento de mensagens e padrões de integração para construir aplicações modernas baseadas em eventos, além de explorar boas práticas para observabilidade, tratamento de falhas e operação de ambientes corporativos.
Conteúdo Programatico
Module 1: RabbitMQ and Microservices Fundamentals
- Microservices architecture overview
- RabbitMQ architecture review
- Asynchronous communication principles
- Event-driven microservices
- Enterprise integration scenarios
- RabbitMQ deployment models
Module 2: Messaging Patterns for Microservices
- Point-to-point messaging
- Publish and Subscribe
- Work queues
- Request-Reply pattern
- Competing Consumers
- Event-driven communication patterns
Module 3: Reliable Microservices Communication
- Exchange selection strategies
- Routing keys design
- Dead Letter Exchanges
- Retry mechanisms
- Idempotent consumers
- Message durability
Module 4: Scalability and Resilience
- Service decoupling techniques
- Horizontal scalability
- Fault tolerance strategies
- Load balancing concepts
- High availability overview
- Resilient messaging architectures
Module 5: Monitoring, Security and Best Practices
- RabbitMQ monitoring
- Observability fundamentals
- Secure messaging
- Performance optimization
- Operational best practices
- Production deployment recommendations
Module 6: RabbitMQ for Microservices Workshop
- Microservices messaging implementation
- Publish/Subscribe laboratory
- Event-driven workflow development
- Fault tolerance exercises
- Monitoring and troubleshooting
- Final RabbitMQ microservices project