Skip to content

julioandrade07/TesteEasy

Repository files navigation

LinkedIn

Projeto de API Cliente - Easynvest

Sumario
  1. Sobre o Projeto
  2. Tecnologias implementadas
  3. Cloud
  4. Tempo Execução
  5. Asynchronous
  6. Extra

Sobre o projeto

Projeto de teste de conhecimento para criar uma api em .NET 5.0 utilizando as melhores práticas de desenvolvimento, para resolver o problema a seguir:

Nossos usuários têm custodia em vários tipos de investimentos, que vem de serviços distintos, para
isso devemos consolidar estes dados e devolver para canais diversos

Como Executar

  • Clonar projeto repositorio git
  • Abrir Visual Staudio 2019 realizar docker build
  • Apos build e publicação acessar o link https://localhost:49159/Cliente
  • Usar Swagger ou PostMan para teste

Tecnologias implementadas e requisitos:

  • ASP.NET Core 5.0 (with .NET 5.0)
  • Swagger UI with JWT support
  • Docker

Architecture:

Durante a análise do projeto 3 opções de arquitera me surgiram:

  • Clean architecture
  • Monolithic
  • Arquitetura em Camadas

Pela simplicidade do projeto e tempo de execução foi escolhido uma arquitetura monolitica, já o projeto tem poucas fronteiras.

Cloud

Primeira tentativa foi criar WEB API na Azure com Docker em um Container Linux igual no ambiente local podem na publicação Azure por causa do Container apresentava o seguinte erro:

⚠️ #16 sha256:e8c613e07b0b7ff33893b694f7759a10d42e180f2b4dc349fb57dc6b71dcab00
#16 exporting layers
#16 exporting layers 0.7s done
#16 exporting manifest sha256:1546627a14eef28144f59a9d2c012cc58ee6d0898426f9d781daccda09719452 done
#16 exporting config sha256:2d64152d42ec0c962c724c9e4575d93f3be96fc7b424b5870caeca7ff51033ef done
#16 ERROR: invalid reference format: repository name must be lowercase
error: failed to solve: rpc error: code = Unknown desc = invalid reference format: repository name must be lowercase
Error: buildx call failed with: error: failed to solve: rpc error: code = Unknown desc = invalid reference format: repository name must be lowercase

Solução foi fazer a publicação em um ambiente Windows padrão(sem Container) na Azure

Link Cloud : https://webapiazurejulio.azurewebsites.net/Cliente

Tempo Execução

alt text

Asynchronous

alt text

Extra

Link projeto sem Docker (https://github.com/julioandrade07/TesteEasyAzure.git)