Udemy – Comunicacao Entre Microsservicos
Free Download Udemy – Comunicacao Entre Microsservicos
Última atualização em 12/2023
MP4 | Video: h264, 1920×1080 | Audio: AAC, 44.1 KHz
Language: Português | Size: 7.51 GB | Duration: 15h 46m
Com API REST, Java 11, Spring Boot, PostgreSQL, jаvascript ES6, Node.js, MongoDB, RabbitMQ, JWT, Docker e AWS!
What you’ll learn
Comunicação síncrona entre serviços utilizando chamadas de API REST
Comunicação assíncrona entre serviços utilizando AMQP com RabbitMQ e fila de mensagens
Criação de containers para aplicações, bancos de dados e comunicação
Criação de APIs utilizando Java 11 com Spring Boot e PostgreSQL
Criação de APIs utilizando jаvascript ES6, Nodejs, Expressjs e MongoDB
Comunicação entre containers utilizando Docker-Compose
Como proteger sua aplicação com variáveis de ambiente
Deploy na AWS nos serviços AWS Elastic Beanstalk, Amazon RDS e Amazon CloudWatch
Requirements
Conhecimento da linguagem Java (1.8+)
Conhecimento da linguagem jаvascript (ES6)
Conhecimentos básicos em SQL e NoSQL (MongoDB)
Noções dos frameworks Spring Boot 2.x e ExpressJs
Noções de conceitos de API REST
Description
Neste curso, será aboradado o conceito teórico e prático sobre comunicação entre microsserviços e como aplicá-las. Praticamente iremos criar 3 APIs, duas delas com Node.js, MongoDB, Mongoose, Sequelize, PostgreSQL e JWT para autenticação. Iremos também criar uma API com Java 11 utilizando Spring Boot, PostgreSQL, Spring Data JPA, Spring Cloud OpenFeign e JWT, realizando a comunicação e integração entre essas duas tecnologias. Iremos utilizar o RabbitMQ para a comunicação via filas de mensagens utilizando o protocolo AMQP com o intuito de criar uma comunicação assíncrona entre os serviços. Iremos também utilziar comunicação síncrona entre aplicações, ou melhor, chamadas a clients HTTP entre as APIs, integrando-as com as tecnologias FeignClient (Spring Boot) e Axios (Node.js).Iremos também subir todas as nossas aplicações em containers Docker utilizando o Docker-compose.No final do curso, faremos também o deploy de toda a arquitetura na AWS utilizando os serviços AWS Elastic Beanstalk, Amazon RDS e Amazon CloudWatch!Neste curso, você verá uma abordagem teórica sobre arquitetura de microsserviços e arquitetura monolítica, suas comparações, vantagens e desvantagens, comunicação síncrona e assíncrona entre aplicações utilizando chamadas a API REST (HTTP) e filas de mensagens, além de conseguir compreender todos esses conceitos ao vê-los ocorrendo na prática. Iremos também detalhar os métodos e status HTTP, além também dos tipos de exchanges e filas de mensagens existentes no RabbitMQ para posterior implementação.Iremos também implementar um básico de rastreabilidade de requisições entre microsserviços com logs nas APIs, IDs de requisições e iremos visualizar nossa rastreabilidade através dos logs da aplicação.Ao fim deste curso você será capaz de criar suas próprias APIs e integrá-las da maneira que julgar necessário, com filas de mensagens ou chamadas REST, será capaz também de definir um ambiente de desenvolvimento e executar todos os serviços em containers, definindo suas próprias variáveis e arquivos de configuração de ambiente.** ATUALIZAÇÕES DE 2023 **Foram feitas atualizações de todas as biliotecas e frameworks em Node.js, foi atualizado o projeto para Spring Boot 3 e Java 17!Foi realizado o deploy de toda a arquitetura na AWS utilizando os serviços AWS Elastic Beanstalk, Amazon RDS, Amazon CloudWatch, Cloud AMQP e Atlas MongoDB.
Overview
Section 1: Introdução – Apresentação, Arquitetura Monolítica e Microsserviços
Lecture 1 Apresentação do curso
Lecture 2 Apresentação do que iremos construir
Lecture 3 Arquitetura Monolítica – Conceito, Aplicações, Vantagens e Desvantagens
Lecture 4 Arquitetura de Microsserviços – Conceito, Aplicações, Vantagens e Desvantagens
Lecture 5 Comparativo entre a arquitetura monolítica e microsserviços
Section 2: Teoria – Comunicação síncrona e assíncrona e RabbitMQ
Lecture 6 Comunicação síncrona – Conceitos
Lecture 7 Métodos HTTP
Lecture 8 Códigos de status HTTP
Lecture 9 Comunicação assíncrona, RabbitMQ e protocolo AMQP
Lecture 10 Tipos de Exchange e características de filas
Section 3: Preparação do ambiente de desenvolvimento com Docker
Lecture 11 Definição das ferramentas utilizadas durante o curso
Lecture 12 Criando o projeto no Github
Lecture 13 Criação do banco de dados PostgreSQL com Docker e acessando via DBeaver
Lecture 14 Criação do banco de dados NoSQL MongoDB com Docker e acessando via CLI.
Lecture 15 Criação do RabbitMQ com o Docker e acessando via interface gráfica no navegador
Lecture 16 Rodando tudo junto com Docker-compose
Section 4: Início da criação dos projetos dos microsserviços
Lecture 17 Criação do projeto Auth API com Node.js, Express.js, JWT e PostgreSQL
Lecture 18 Criação do projeto Product API com Java, Spring Boot e PostgreSQL
Lecture 19 Criação do projeto Sales API com Node.js
Lecture 20 Criação do Dockerfile dos projetos de Auth e Sales (Node.js)
Lecture 21 Criação do Dockerfile do projeto Product-API (Spring)
Lecture 22 Subindo tudo com Docker-Compose (serviços e APIs)
Section 5: Microsserviço de Autenticação (Auth-API)
Lecture 23 Configurando o Sequelize no projeto
Lecture 24 Criando os dados iniciais para o serviço
Lecture 25 Dividindo a aplicação em camadas
Lecture 26 Criando o repository e a service
Lecture 27 Criando exceptions e as camadas controller e routes
Lecture 28 Desenvolvendo a autenticação com JWT
Lecture 29 Adicionando o middleware de autenticação
Lecture 30 Implementando segurança nos endpoints
Section 6: Microsserviço de Produto (Product-API)
Lecture 31 Configurando o PostgreSQL na aplicação
Lecture 32 Criando as entidades de Produto, Fornecedor e Categoria
Lecture 33 Inserindo os dados iniciais
Lecture 34 Criando estrutura inicial de DTO, Repository, Service e Controller de Categoria
Lecture 35 Criando método POST para Produto e Fornecedor
Lecture 36 Testando POSTs criados e adicionando buscas com métodos GET para Categoria
Lecture 37 Criando endpoints com métodos GET para Produto e Fornecedores
Lecture 38 Finalizando nosso CRUD com métodos PUT (atualização) e DELETE (remoção)
Lecture 39 Configurando o JWT no projeto
Lecture 40 Adicionando interceptador de token JWT nos endpoints
Lecture 41 Configurando o RabbitMQ
Lecture 42 Adicionando os Listener da fila de atualização do estoque do produto
Lecture 43 Atualizando o estoque e publicando (sender) na fila de confirmação de vendas
Lecture 44 Adendo: Correção de lógica no processo assíncrono
Lecture 45 Configurando client HTTP para Sales API com Feign Client.
Lecture 46 Implementando último endpoint da aplicação. Verificar estoque dos produtos.
Section 7: Microsserviço de Vendas (Sales-API)
Lecture 47 Configurando o MongoDB
Lecture 48 Criando as models do MongoDB
Lecture 49 Inserindo os dados iniciais
Lecture 50 Configurando interceptador para validação de token JWT na aplicação
Lecture 51 Configurando o RabbitMQ
Lecture 52 Criando configuração para aguardar o container do RabbitMQ subir
Lecture 53 Criando Listener da aplicação
Lecture 54 Criando Sender da aplicação
Lecture 55 Criando Repository e Service de um pedido
Lecture 56 Criando processamento assíncrono de recebimento de confirmação de uma venda
Lecture 57 Criando chamada HTTP REST para Product-API com Axios para validar estoque
Lecture 58 Criando Controller e Routes e endpoint GET por ID para os pedidos
Lecture 59 Finaliza endpoints GET e testes da comunicação entre as APIs com Postman
Section 8: Rastreabilidade e logs nas APIs
Lecture 60 Introdução sobre logs, tracing com headers de transactionID e serviceID
Lecture 61 Implementando tracing de requisições entre serviços em Auth-API
Lecture 62 Implementando tracing de requisições entre serviços em Sales-API
Lecture 63 Salvando IDs de tracing de requisições na model do MongoDB
Lecture 64 Implementando tracing de requisições entre serviços em Product-API
Section 9: Subindo todas as APIs com Docker-compose
Lecture 65 Definindo as variáveis de ambiente nas aplicações
Lecture 66 Definindo as variáveis de ambiente no docker-compose
Lecture 67 Últimos ajustes antes de subir tudo integrado
Lecture 68 Subindo tudo com docker-compose!
Lecture 69 Apresentando tudo que foi desenvolvido rodando local com docker-compose
Section 10: (DESCONTINUADO: NÃO HÁ MAIS PLANOS GRÁTIS) Subindo todas as aplicações no Heroku
Lecture 70 Depreciação do Heroku e novo módulo de deploy na nuvem com AWS
Lecture 71 Criando os projetos Auth-API, Product-API e Sales-API separados no Github
Lecture 72 Subindo Auth-API no Heroku com PostgreSQL (add-on do Heroku)
Lecture 73 Subindo Sales-API no Heroku com CloudAMQP (RabbitMQ) e Atlas MongoDB
Lecture 74 Subindo Product-API no Heroku com PostgreSQL e CloudAMQP (RabbitMQ)
Lecture 75 Tracing e Logs com Kibana usando add-on Coralogix Logging nas APIs
Lecture 76 Apresentando tudo que foi desenvolvido rodando em nuvem
Section 11: Isso é tudo ou tem mais sobre microsserviços e sistemas distribuídos?
Lecture 77 O que continuar estudando
Section 12: Atualizações 2022
Lecture 78 Atualizando imagem do MongoDB e driver de conexão em Sales-API
Section 13: Atualizações 2023: atualização de bibliotecas e frameworks dos projetos!
Lecture 79 Product-API: Atualizando e refatorando injeção de dependências no Spring Boot
Lecture 80 Product-API: Atualizando para Spring Boot 3.0.2, Java 17 e Gradle 7.6
Lecture 81 Product-API: Ajustando e rodando o projeto após as atualizações!
Lecture 82 Auth-API: Atualizando Express.js e todas as libs do projeto!
Lecture 83 Sales-API: Atualizando Express.js e todas as libs do projeto!
Lecture 84 Subindo tudo com Docker-compose nas últimas versões!
Section 14: Atualizações 2023: Subindo tudo na cloud da AWS com Beanstalk, RDS e Cloudwatch!
Lecture 85 Product-API: configurando a aplicação para o deploy no AWS Beanstalk
Lecture 86 Sales-API e Auth-API: configurando as aplicações para o deploy no AWS Beanstalk
Lecture 87 Criando nosso banco de dados MongoDB com Atlas MongoDB
Lecture 88 Criando nossa instância do RabbitMQ com CloudAMQP
Lecture 89 Começando na AWS: plano Free Tier e consumos na AWS
Lecture 90 Criando nossos bancos de dados PostgreSQL com Amazon RDS
Lecture 91 Alternativa ao Amazon RDS: ElephantSQL – instância PostgreSQL na nuvem
Lecture 92 Product-API: deploy na AWS Beanstalk com variáveis de ambiente
Lecture 93 Auth-API: deploy na AWS Beanstalk com variáveis de ambiente
Lecture 94 Sales-API: deploy na AWS Beanstalk com variáveis de ambiente
Lecture 95 Visualizando toda a arquitetura na nuvem da AWS com Amazon CloudWatch!
Lecture 96 Aula Bônus: substituindo os bancos de dados RDS pelo ElephantSQL nas aplicações!
Desenvolvedores Back-End (nível iniciante ou intermediário),Desenvolvedores Java (nível iniciante ou intermediário),Desenvolvedores Nodejs (nível iniciante ou intermediário)
Homepage
https://www.udemy.com/course/comunicacao-entre-microsservicos/
ulfin.Comunicacao.Entre.Microsservicos.part4.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part7.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part3.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part2.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part8.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part5.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part1.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part6.rar.html
Fikper
ulfin.Comunicacao.Entre.Microsservicos.part6.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part1.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part4.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part7.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part5.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part3.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part2.rar.html
ulfin.Comunicacao.Entre.Microsservicos.part8.rar.html