Arquitetura de Microsserviços: Padrão Saga Orquestrado

Com Java 17, Spring Boot 3, Apache Kafka, PostgreSQL, MongoDB, Docker e docker-compose!

Ratings: 4.86 / 5.00




Description

  • Neste curso, serão abordados os conceitos de padrões de desenvolvimento de arquitetura de microsserviços em um de seus quesitos mais importantes: lidar com transações distribuídas e tratamento de falhas.

  • Iremos abordar os conceitos teóricos por trás de transações distribuídas, two-phase commit protocol (2PC), padrão Saga Orquestrado e Coreografado, e padrão Outbox.

  • Neste curso, implementaremos o padrão Saga Orquestrado em uma arquitetura de microsserviços com Java 17 e Spring Boot 3.

  • Para isso, utilizaremos Docker e docker-compose para subir toda a nossa arquitetura com facilidade.

  • Utilizaremos 2 bancos de dados, PostgreSQL e MongoDB.

  • Utilizaremos o Apache Kafka para a comunicação dos eventos e orquestração da nossa saga.

  • Criaremos 5 APIs, em que uma será apenas o orquestrador da saga, 3 microsserviços participantes e um microsserviços de realização de pedido.

  • Ao final deste curso, você compreenderá as diferenças entre os padrões de microsserviços, os conceitos de transações distribuídas, e como realizar tratativa de erros em diversos serviços, assim como sua implementação.

  • Você também estará apto a desenvolver aplicações distribuídas com orientação a eventos (Apache Kafka) e trabalhar com Java 17 e o framework Spring Boot na versão 3, porém, o conteúdo do curso é sobre um padrão de arquitetura, e não sobre uma tecnologia específica, ou seja, com o conhecimento adquirido, você conseguirá aplicar a mesma abordagem em qualquer outra tecnologia que permita o desenvolvimento de microsserviços.

  • SEÇÃO BÔNUS

  • Foi adicionada a Seção 11 como um bônus, realizando a conversão de toda a arquitetura desenvolvida para o Padrão Saga Coreografado, desta forma, os alunos terão o conhecimento de como implementar as duas abordagens do Padrão Saga, e também compreenderão quando implementar cada abordagem dependendo da necessidade.

What You Will Learn!

  • Conceitos, abordagens e estratégias para tratamento de transações distribuídas
  • Conceitos, abordagens e estratégias para implementação do padrão Saga Orquestrado
  • Conceitos, abordagens e estratégias para implementação de uma arquitetura orientada a eventos
  • Implementação de padrão Saga Orquestrado com Java 17, Spring Boot 3 e Apache Kafka
  • Utilização dos bancos de dados MongoDB e PostgreSQL numa arquitetura Saga
  • Boas práticas de implementações de padrões em microsserviços
  • Implementação do Padrão Saga Coreografado (Seção bônus ao final do curso)

Who Should Attend!

  • Desenvolvedores Back-End (nível intermediário)
  • Desenvolvedores Java (nível intermediário)
  • Desenvolvedores que atuam com microsserviços e/ou aplicações distribuídas