Entrar em Contato

Programa do Curso

Dia 1: Fundamentos da Arquitetura Orientada a Eventos em Go

  • Introdução à EDA
    • O que é Arquitetura Orientada a Eventos?
    • Comparando Sistemas Monolíticos, de Microsserviços e Orientados a Eventos
    • Como o modelo de concorrência do Go e as goroutines leves o tornam ideal para EDA
  • Conceitos-Chave e Benefícios
    • Desacoplamento, escalabilidade e resiliência em sistemas empresariais
    • Definindo Eventos, Produtores, Consumidores e Corretores de Eventos
    • Exemplos do mundo real e estudos de caso onde o Go impulsiona sistemas de eventos de alto desempenho
  • Teorema CAP e Compensações (Trade-offs) em EDA
    • Visão geral de Consistência, Disponibilidade e Tolerância a Partição
    • Impacto da EDA nessas propriedades
    • Estratégias para equilibrar consistência e disponibilidade em sistemas baseados em Go

Dia 2: Eventos, Mensagens e Padrões de Comunicação em Go

  • Entendendo Tipos de Eventos
    • Eventos de Domínio vs. Eventos de Integração
    • Eventos Síncronos vs. Assíncronos em aplicações Go
  • Padrões de Mensageria na Prática
    • Publicar- Assinar (Pub/Sub) em Go
    • Como projetar e estruturar cargas de eventos usando JSON, Protocol Buffers ou Avro em Go
  • Implementando Tratamento de Eventos em Go
    • Visão geral de bibliotecas e frameworks populares do Go para mensageria
    • Exemplos de código: despachando e processando eventos usando padrões idiomáticos do Go
    • Sessão prática: Construindo um serviço simples orientado a eventos em Go

Dia 3: Sistemas de Mensageria e Corretores de Eventos com Go

  • Seleção e Integração de Corretores de Eventos
    • Visão geral de corretores populares: Apache Kafka, RabbitMQ e NATS
    • Comparação de casos de uso e melhores práticas para sistemas baseados em Go
  • Configurando Infraestrutura de Mensageria
    • Configuração Docker Compose para Kafka, RabbitMQ ou NATS
    • Configurando tópicos, trocas, filas e canais
    • Visão geral de bibliotecas de cliente do Go
  • Oficina Prática
    • Construindo um microsserviço Go de exemplo que produz e consome eventos
    • Integrando o serviço com o corretor de eventos escolhido
    • Depuração e teste de fluxos de eventos

Dia 4: Implantação, Monitoramento e Tópicos Avançados em EDA com Go

  • Implantando Aplicações Orientadas a Eventos do Go no Kubernetes
    • Containerizando aplicações Go para produção
    • Implantando Kafka (ou outros corretores) em clusters Kubernetes
    • Introdução ao KEDA (Kubernetes Event-Driven Autoscaling) para escalar consumidores de eventos
  • Tratamento de Erros e Monitoramento
    • Lidando com falhas de eventos com estratégias específicas
    • Implementando observabilidade em serviços Go
  • Tópicos Avançados e Perguntas & Respostas
    • Explorando Arquiteturas Orientadas a Eventos Serverless com Go
    • Coreografia de Eventos vs. Orquestração: Casos de uso e considerações de design
    • Armadilhas comuns, lições aprendidas e melhores práticas
    • Sessão aberta de perguntas e respostas e solução de problemas interativa

Requisitos

  • Proficiência em Go (Golang), incluindo o uso de goroutines e canais
  • Entendimento básico de modelos de arquitetura de software, como monólitos e microsserviços
  • Familiaridade com Docker e Docker Compose
  • Conhecimento básico de APIs REST e conceitos de rede
  • Experiência com ferramentas de linha de comando e Git
  • Opcional, mas útil: exposição prévia a Kubernetes e sistemas de mensageria como Kafka, RabbitMQ ou NATS

Público-Alvo

  • Desenvolvedores de Go construindo aplicações escaláveis e orientadas a eventos
  • Engenheiros de software transicionando de arquiteturas monolíticas ou baseadas em REST para sistemas assíncronos
  • Engenheiros de DevOps e nuvem que trabalham com microsserviços containerizados ou distribuídos
  • Arquitetos técnicos e designers de sistemas explorando padrões de EDA com Go
 28 Horas

Número de participantes


Preço por participante

Testemunhos de Clientes (7)

Próximas Formações Provisórias

Categorias Relacionadas