Skip to content

Exemplo de operações de conta-corrente implementando CQRS

License

Notifications You must be signed in to change notification settings

alefcarlos/conta-corrente

Repository files navigation

Exemplo de operações em conta corrente

TrasferFunds

Microserviço responsável por fazer transações entre contas.

A operação de transfência entre contas é feita de modo assíncrona.

As consultas feitas no serviço Account contém resiliência, se uma determinada chamada ocorrer erro, será feita mais 3 tentativas.

Account

Microserviço responsável por operar contas corrente

As operações disponíveis são:

  • Consulta de conta
  • Consulta de saldo
  • Consulta de extrato

O software Account.PublicShared seria um pacote Nuget que pode ser adicionado por quem gostaria de emitir algum evento de transação

Framework

Conjunto de boillerplates contendo padrões de projetos.

Health Check

Toda webapi tem uma rota /healthz que validar se todos os serviços estão operantes.

Como executar ?

O setup do projeto pode ser feito utilizando docker-compose que irá suprir as seguintes dependências:

  • RabbitMQ
  • MongoDB

Todas as configuração são feitas através de ENV para facilitar o deploy;

docker-compose up --build

O que será entregue ?

  • Account.WebApi
  • Account.Consumer.TransactionHandler
  • TransferFunds.WebApi

Testes integrados

Utilizamos o newman pra executar testes.

npm install -g newman

E após ter subido todas as aplicações basta executar

newman run integrated_tests_collection.json -e docker.postman_environment.json

Result

About

Exemplo de operações de conta-corrente implementando CQRS

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published