Visão Geral
Curso RabbitMQ with Microservices, é projetado para ensinar como integrar RabbitMQ em arquiteturas de microsserviços, permitindo a comunicação eficiente e escalável entre os diferentes componentes do sistema. RabbitMQ, uma das principais plataformas de mensageria, oferece mecanismos de roteamento de mensagens, filas e comunicação assíncrona, essenciais para construir sistemas distribuídos baseados em microsserviços.
Os alunos irão aprender os principais padrões de mensageria utilizados em arquiteturas de microsserviços, como Pub/Sub, RPC (Remote Procedure Call) e comunicação assíncrona. Além disso, serão abordados tópicos avançados de resiliência, como garantia de entrega de mensagens e recuperação de falhas. O Curso RabbitMQ with Microservices, inclui exercícios práticos para implementação de microsserviços em diversas linguagens de programação e exemplos de integração com RabbitMQ.
Objetivo
Após realizar este Curso RabbitMQ with Microservices, você será capaz de:
- Integrar RabbitMQ em arquiteturas de microsserviços para comunicação eficiente.
- Implementar padrões de mensageria, como Pub/Sub, RPC e filas de trabalho.
- Garantir a entrega confiável de mensagens entre componentes distribuídos.
- Gerenciar filas e roteamento de mensagens para aumentar a escalabilidade.
- Monitorar e otimizar RabbitMQ em ambientes de microsserviços.
- Aplicar boas práticas para garantir resiliência e tolerância a falhas em sistemas distribuídos.
Publico Alvo
- Desenvolvedores que trabalham com arquitetura de microsserviços.
- Arquitetos de software que projetam sistemas distribuídos.
- Engenheiros DevOps que buscam otimizar a comunicação entre serviços.
- Administradores de sistemas que precisam configurar e monitorar RabbitMQ em produção.
- Estudantes de tecnologia interessados em arquiteturas baseadas em mensagens.
- Profissionais de TI que trabalham com sistemas de comunicação assíncrona.
Pre-Requisitos
- Conhecimento básico de microsserviços e sua arquitetura.
- Experiência com RabbitMQ ou sistemas de mensageria.
- Familiaridade com linguagens de programação, como Python, Java ou Node.js.
- Conhecimentos básicos de redes e sistemas distribuídos.
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico
Introdução ao RabbitMQ e Microsserviços
- O que é RabbitMQ e como funciona em sistemas distribuídos.
- Princípios de arquitetura de microsserviços.
- Comparação de RabbitMQ com outras plataformas de mensageria (Kafka, ActiveMQ).
Instalação e Configuração do RabbitMQ
- Instalação do RabbitMQ em ambientes Linux e Windows.
- Configuração básica para integração com microsserviços.
- Uso de Docker e Kubernetes para orquestrar RabbitMQ.
Padrões de Comunicação em Microsserviços
- Comunicação síncrona vs assíncrona.
- Implementação do padrão Pub/Sub com RabbitMQ.
- Uso de filas e exchanges para roteamento de mensagens.
- Comunicação ponto a ponto e broadcast.
RabbitMQ e RPC (Remote Procedure Call)
- O que é RPC e quando usá-lo em microsserviços.
- Implementação de chamadas remotas usando RabbitMQ.
- Gerenciamento de filas de requisição e resposta.
- Padrões de design para comunicação remota.
Estratégias de Garantia de Entrega e Resiliência
- Acknowledgements e confirmações de mensagens.
- Uso de Dead Letter Exchanges (DLX) para mensagens não entregues.
- Time to Live (TTL) e tratamento de mensagens expiradas.
- Failover e recuperação de falhas.
Monitoramento e Performance de RabbitMQ
- Monitoramento do RabbitMQ com Prometheus e Grafana.
- Coleta de métricas de filas, exchanges e throughput.
- Tuning de desempenho e otimização para alta carga.
- Configuração de alertas para problemas críticos.
Casos de Uso Práticos
- Implementação de microsserviços com RabbitMQ em Python.
- Exemplo de comunicação entre serviços com RabbitMQ em Node.js.
- Integração com sistemas de eventos e workflows complexos.
Segurança e Autenticação no RabbitMQ
- Configuração de SSL/TLS para comunicação segura.
- Gerenciamento de usuários e permissões.
- Controle de acesso e políticas de segurança no RabbitMQ.
Boas Práticas para Arquitetura de Microsserviços
- Melhores práticas para comunicação de serviços.
- Estratégias de escalabilidade e particionamento de filas.
- Como evitar pontos únicos de falha com RabbitMQ.
TENHO INTERESSE