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?
    • Comparação entre Sistemas Monolíticos, Microsserviços e Orientados a Eventos
    • Como o modelo de concorrência do Go e as goroutines leves o tornam ideal para EDA
  • Conceitos Principais e Benefícios
    • Desacoplamento, escalabilidade e resiliência em sistemas empresariais
    • Definição de Eventos, Produtores, Consumidores e Brokers de Eventos
    • Exemplos do mundo real e estudos de caso onde o Go impulsiona sistemas de eventos de alta performance
  • Teorema CAP e Compromissos na EDA
    • Noções gerais sobre Consistência, Disponibilidade e Tolerância a Partições
    • 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

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

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

  • Selecionando e Integrando Brokers de Eventos
    • Visão geral dos brokers populares: Apache Kafka, RabbitMQ e NATS
    • Comparação de casos de uso e melhores práticas para sistemas baseados em Go
  • Configurando a Infraestrutura de Mensageria
    • Configuração do Docker Compose para Kafka, RabbitMQ ou NATS
    • Configuração de tópicos, exchanges, filas e canais
    • Visão geral das bibliotecas cliente Go
  • Workshop Prático
    • Criando um microsserviço Go de exemplo que produz e consome eventos
    • Integrando o serviço ao broker de eventos escolhido
    • Depuração e teste dos fluxos de eventos

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

  • Implantando Aplicações Orientadas a Eventos em Go no Kubernetes
    • Contêinerizando aplicativos Go para produção
    • Implantando Kafka (ou outros brokers) em clusters do Kubernetes
    • Introdução ao KEDA (Escalamento de Evento Acionado pelo Kubernetes) para escalar consumidores de eventos
  • Tratamento de Erros e Monitoramento
    • Lidando com falhas de eventos com estratégias adequadas
    • Implementando observabilidade em serviços Go
  • Tópicos Avançados e Perguntas e 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 depuração interativa

Requisitos

  • Proficiência em Go (Golang), incluindo o uso de goroutines e canais
  • Compreensão básica de modelos de arquitetura de software, como monolitos 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 ao Kubernetes e sistemas de mensagens como Kafka, RabbitMQ ou NATS

Público-Alvo

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

Número de participantes


Preço por participante

Testemunhos de Clientes (7)

Próximas Formações Provisórias

Categorias Relacionadas