Curso Microsservicos e Arquiteturas Orientadas a Eventos

  • Tesouraria Seguros & Setor Publico

Curso Microsservicos e Arquiteturas Orientadas a Eventos

24 horas
Visão Geral

O curso Microsserviços e Arquiteturas Orientadas a Eventos apresenta os fundamentos, princípios e práticas necessários para projetar sistemas distribuídos modernos baseados em microsserviços e eventos.

O treinamento aborda a evolução de arquiteturas monolíticas para arquiteturas modulares e distribuídas, os princípios de decomposição de aplicações, definição de limites de serviços, comunicação entre microsserviços, APIs, mensageria e arquitetura orientada a eventos.

Os participantes também aprenderão como lidar com os principais desafios de sistemas distribuídos, incluindo acoplamento, comunicação assíncrona, consistência de dados, falhas, idempotência, resiliência, segurança e observabilidade.

A abordagem combina conceitos arquiteturais com exercícios e laboratórios guiados. Ao final, os participantes desenvolverão uma arquitetura de referência utilizando microsserviços, APIs e eventos.

Objetivo

Após realizar este curso Microsserviços e Arquiteturas Orientadas a Eventos, você será capaz de:

  • Compreender os fundamentos de arquiteturas de microsserviços
  • Identificar características, benefícios e desafios dos microsserviços
  • Avaliar quando utilizar uma arquitetura de microsserviços
  • Decompor uma aplicação monolítica em serviços
  • Definir responsabilidades e limites dos microsserviços
  • Aplicar princípios de baixo acoplamento e alta coesão
  • Utilizar conceitos básicos de DDD para definição de serviços
  • Projetar APIs para comunicação entre microsserviços
  • Diferenciar comunicação síncrona e assíncrona
  • Compreender os fundamentos de arquiteturas orientadas a eventos
  • Projetar fluxos utilizando eventos e mensagens
  • Compreender o funcionamento de brokers de mensagens
  • Utilizar conceitos fundamentais de Kafka e RabbitMQ
  • Definir contratos básicos de eventos
  • Aplicar padrões básicos de resiliência
  • Compreender idempotência e consistência eventual
  • Conhecer o padrão Saga para transações distribuídas
  • Aplicar conceitos básicos de segurança e observabilidade
  • Projetar uma arquitetura de referência baseada em microsserviços e eventos
  • Avaliar os principais trade-offs de uma arquitetura distribuída
Publico Alvo
  • Arquitetos de Software
  • Arquitetos de Soluções
  • Engenheiros de Software
  • Desenvolvedores
  • Tech Leads
  • Analistas de Sistemas
  • Engenheiros de Integração
  • Profissionais de DevOps
  • Profissionais de Cloud
  • Profissionais envolvidos com modernização de sistemas
  • Profissionais de transformação digital
  • Gestores técnicos e líderes de equipes de desenvolvimento
Pre-Requisitos
  • Conhecimentos básicos de desenvolvimento de software
  • Conhecimentos básicos de arquitetura de software
  • Conhecimentos de APIs e Web Services
  • Conhecimentos básicos de HTTP e REST
  • Conhecimentos básicos de bancos de dados
  • Experiência profissional com sistemas de software é recomendada
Informações Gerais

Duração

24 horas

Distribuição da carga horária

Módulo Conteúdo Carga
1 Fundamentos de Microsserviços 3h
2 Decomposição e Design de Microsserviços 3h
3 APIs e Comunicação entre Microsserviços 3h
4 Arquiteturas Orientadas a Eventos 4h
5 Mensageria e Event Streaming 3h
6 Resiliência e Consistência em Sistemas Distribuídos 3h
7 Segurança e Observabilidade 2h
8 Workshop Final de Arquitetura 3h
Total   24h
Materiais
Inglês/Português + Exercícios + Lab Pratico
Conteúdo Programatico

Fundamentos de Microsserviços — 3h

Arquitetura de aplicações

  • Evolução das arquiteturas de software
  • Arquiteturas monolíticas
  • Monólito modular
  • Arquiteturas distribuídas
  • Introdução aos microsserviços
  • Características de uma arquitetura de microsserviços
  • Independência e autonomia dos serviços

Benefícios e desafios

  • Escalabilidade
  • Implantação independente
  • Flexibilidade tecnológica
  • Isolamento de falhas
  • Complexidade distribuída
  • Comunicação entre serviços
  • Latência
  • Consistência de dados
  • Complexidade operacional

Microsserviços ou monólito?

  • Quando utilizar microsserviços
  • Quando manter uma arquitetura monolítica
  • Quando utilizar um monólito modular
  • Principais trade-offs

Exercício

Análise de uma aplicação monolítica e identificação de situações nas quais microsserviços poderiam ou não ser utilizados.


Decomposição e Design de Microsserviços — 3h

Decomposição de sistemas

  • Decomposição por domínio
  • Decomposição por capacidade de negócio
  • Responsabilidades dos serviços
  • Coesão
  • Acoplamento
  • Service Boundaries

Introdução ao DDD aplicado a microsserviços

  • Domínio
  • Subdomínio
  • Bounded Context
  • Entidades
  • Agregados
  • Domain Events

Dados e microsserviços

  • Banco de dados por serviço
  • Compartilhamento de dados
  • Independência de persistência
  • Consistência entre serviços

Exercício prático

A partir de uma aplicação monolítica:

Sistema → Domínios → Bounded Contexts → Serviços

Os participantes deverão definir:

  • Domínios
  • Serviços
  • Responsabilidades
  • Limites
  • Principais dependências

APIs e Comunicação entre Microsserviços — 3h

Comunicação síncrona

  • HTTP
  • REST
  • JSON
  • Request/Response
  • APIs entre serviços
  • Contratos de APIs
  • Versionamento

Comunicação assíncrona

  • Mensagens
  • Eventos
  • Filas
  • Tópicos
  • Produtores
  • Consumidores

API Gateway

  • Conceito
  • Roteamento
  • Autenticação
  • Controle de acesso
  • Rate Limiting
  • Agregação de APIs

Service Discovery

  • Conceito
  • Descoberta de serviços
  • Registro
  • Health Check

Laboratório

Construção de uma arquitetura simples:

Cliente → API Gateway → Microsserviço → Banco de Dados

Definição de:

  • Endpoints
  • Métodos HTTP
  • Request
  • Response
  • Contrato
  • Tratamento básico de erros

Arquiteturas Orientadas a Eventos — 4h

Fundamentos de Event-Driven Architecture

  • Conceito de evento
  • Event Producer
  • Event Consumer
  • Event Broker
  • Comunicação assíncrona
  • Processamento orientado a eventos

Modelos de comunicação

  • Point-to-Point
  • Publish/Subscribe
  • Event Notification
  • Event Streaming

Eventos

  • Eventos de negócio
  • Event Schema
  • Event Contract
  • Identificação de eventos
  • Versionamento
  • Compatibilidade
  • Correlation ID

Choreography e Orchestration

  • Event Choreography
  • Event Orchestration
  • Diferenças
  • Vantagens
  • Limitações
  • Quando utilizar cada abordagem

Microsserviços orientados a eventos

  • Produtores
  • Consumidores
  • Fluxos assíncronos
  • Desacoplamento
  • Escalabilidade
  • Processamento independente

Laboratório

Construção de um fluxo:

Microsserviço A → Evento → Broker → Microsserviço B

Os participantes deverão definir:

  • Evento
  • Produtor
  • Consumidor
  • Contrato
  • Tópico/Fila
  • Fluxo de processamento

Mensageria e Event Streaming — 3h

Fundamentos de mensageria

  • Message Broker
  • Filas
  • Tópicos
  • Producers
  • Consumers
  • Consumer Groups
  • Acknowledgement
  • Retenção de mensagens

RabbitMQ

  • Conceito de Exchange
  • Queue
  • Binding
  • Routing Key
  • Producer
  • Consumer

Apache Kafka

  • Brokers
  • Topics
  • Partitions
  • Producers
  • Consumers
  • Consumer Groups
  • Offsets

Kafka e RabbitMQ

  • Principais diferenças
  • Mensageria versus Event Streaming
  • Casos de uso
  • Critérios de escolha

Laboratório

Implementação de um fluxo simples:

Producer → Broker → Consumer

Com exercícios de:

  • Publicação
  • Consumo
  • Múltiplos consumidores
  • Processamento de mensagens
  • Reprocessamento

Resiliência e Consistência em Sistemas Distribuídos — 3h

Falhas em sistemas distribuídos

  • Falha de comunicação
  • Timeout
  • Indisponibilidade
  • Falha parcial
  • Cascata de falhas

Padrões básicos de resiliência

  • Retry
  • Timeout
  • Exponential Backoff
  • Circuit Breaker
  • Bulkhead
  • Rate Limiting

Idempotência

  • Conceito
  • Operações idempotentes
  • Processamento duplicado
  • Identificação de requisições
  • Mensagens duplicadas

Consistência

  • Consistência forte
  • Consistência eventual
  • Trade-offs

Transações distribuídas

  • Problema das transações distribuídas
  • Saga
  • Choreography
  • Orchestration
  • Compensating Transactions

Exercício prático

Análise de um fluxo distribuído com falhas e definição de:

  • Retry
  • Timeout
  • Idempotência
  • Circuit Breaker
  • Estratégia de consistência
  • Saga

Segurança e Observabilidade — 2h

Segurança

  • Security by Design
  • Autenticação
  • Autorização
  • OAuth 2.0
  • JWT
  • Segurança de APIs
  • Comunicação segura entre serviços
  • Gestão de Secrets

Observabilidade

  • Logs
  • Métricas
  • Traces
  • Distributed Tracing
  • Correlation ID
  • Health Checks

Exercício

Identificação dos principais requisitos de segurança e observabilidade para uma arquitetura baseada em microsserviços.


Workshop Final de Arquitetura — 3h

Desafio

Os participantes deverão projetar uma solução baseada em microsserviços e arquitetura orientada a eventos.

O cenário será definido pelo instrutor e deverá representar uma aplicação que necessite de integração entre diferentes componentes.

Etapa 1 — Identificação do domínio

  • Capacidades de negócio
  • Domínios
  • Bounded Contexts

Etapa 2 — Definição dos microsserviços

  • Serviços
  • Responsabilidades
  • Service Boundaries
  • Dependências

Etapa 3 — Comunicação

Definição de:

  • APIs
  • Comunicação síncrona
  • Comunicação assíncrona
  • Eventos
  • Mensagens

Etapa 4 — Arquitetura

Definição de:

  • API Gateway
  • Microsserviços
  • Broker
  • Banco de dados
  • Eventos
  • Fluxos de comunicação

Etapa 5 — Resiliência

Definição de:

  • Retry
  • Timeout
  • Idempotência
  • Tratamento de falhas

Etapa 6 — Segurança e observabilidade

Definição dos principais:

  • Controles de segurança
  • Logs
  • Métricas
  • Traces

Entrega final

Cada grupo deverá apresentar:

  • Diagrama da arquitetura
  • Microsserviços definidos
  • Responsabilidades
  • APIs
  • Eventos
  • Fluxos de comunicação
  • Estratégia de mensageria
  • Estratégia de resiliência
  • Segurança
  • Observabilidade
  • Principais decisões arquiteturais
TENHO INTERESSE

Cursos Relacionados

Curso SAP TRM - Processes in Treasury and Risk Management

32 horas

Curso SAP TRM - Customizing em Tesouraria e Gerenciamento de Riscos

32 horas

Curso SAP FSCD Soluções para Operadoras de Seguros

32 horas

Curso TRM Customizing in Treasury & Risk Management

32 horas

Curso SAP TRM Com Matemática Financeira e HP12c

16 horas

Curso SAP TRM S4hana Processes in Treasury and Risk Management

32 horas

Curso S4hana Implementing Cash Management

32 horas

Curso Etica Empresarial e Integridade Corporativa

20 horas

Curso Ciencia Política Aplicada ao Setor Publico Fundamentos

24 horas

Curso Compliance Corporativo Fundamentals

24 horas