Este projeto foi construído durante o curso "Arquitetura de Microsserviços do 0 com ASP.NET, .NET 6 e C#" na Udemy.
Link do curso: https://www.udemy.com/course/microservices-do-0-a-gcp-com-dot-net-6-kubernetes-e-docker/
Nese curso não só aprendi coisas novas como tambem consolidei alguns conhecimento ja que tinha.
O que eu aprendir nesse curso ?
ASP.NET;
.NET 6;
Oauth2;
OpenID;
JWT (JSON Web Tokens);
Identity Server;
RabbitMQ;
API Gateway com Ocelot;
Swagger OpenAPI e muito mais;
O que são microsserviços e por que são cada vez mais populares;
O que é e como Implementar Oauth2, OpenID, JWT e Identity Server;
Como usar o framework Duende para construir um Identity Server;
Como trabalhar com Postman;
Desenvolver microsserviços com .NET 6;
Publicação e Consumo de Mensagens com RabbitMQ;
Segurança de microsserviços;
O que é e Como Implementar um API Gateway com Ocelot;
Comunicação Síncrona e Assíncrona entre Microsserviços;
Utilizar JMS para mensageria entre microsserviços .NET 6 com RabbitMQ;
Configurar uma stack de microsserviços do 0 absoluto;
As boas práticas a se adotar ao desenvolver microsserviços;
Como expor e consumir microsserviços através de API's RESTFul;
Gere documentação de API com Swashbuckle (Swagger).
EntytFramework Core
Banco de Dados MySql
1° Altere a Conection String do Mysql com base na sua instancia do Mysql, no arquivo appseting.json, o nome da ConncetionString deve ser igual ao que ta na classe Startup.cs
1° Cada Microserviço tem o seu próprio Banco de Dados, no appseting.json do projeto aqui, nao tem a connectionString pois usei via UserSrecrets.
Exemplo de ConnectionString pra o Mysql:
"ConnectionStrings": { "mysqlConnectionString": "Server=localhost; DataBase=GeekShopping_CartApi; Uid=root; Pwd=suaSenha;" }