TODOS OS DIREITOS RESERVADOS
MS +
EVENTFLOW
Janeiro /2020
/Eduardo Queiróz
Slide 2
Slide 2 text
2
Slide 3
Slide 3 text
3
EF is a basic CQRS+ES framework
designed to be easy to use.
WELCOME TO
EVENT FLOW
01
Slide 4
Slide 4 text
4
• Único ponto de falha
• Alto custo de escalabilidade
• Serviços inalterados no deploy
• Codebase enorme
• Curva de aprendizagem elevada
• Arquitetura complexa
MONOLITO
Slide 5
Slide 5 text
5
• Alta independência
• Alta escalabilidade
• Manutenção simplificada
• Deploy com segurança
• Hospedagem de baixo custo
MICROSERVIÇOS
Slide 6
Slide 6 text
6
SOLUÇÃO PROPOSTA
Docker provendo os containers
de infraestrutura e aplicação.
Docker
Aplicações construídas
utilizando .Net Core
.Net Core
Biblioteca para auxiliar no
desenvolvimento da aplicação
EventFlow
Message-broker open-source
que implementa o protocol
AMQP
RabbitMQ
Slide 7
Slide 7 text
7
TIPS
02
Algumas dicas para melhor
utilização do EventFlow
Slide 8
Slide 8 text
8
TIPS
• Agregados com muitos eventos podem afetar o desempenho da sua aplicação.
• Com o snapshot podemos capturar o estado a cada N eventos.
• Ao invés de carregar todo o histórico o snapshot mais recente é carregado.
SNAPSHOTS
Slide 9
Slide 9 text
9
TIPS
• Abstrai a necessidade de escrever queries para consultas.
• Simplesmente recebe o identificador e retorna a entidade.
QUERYPROCESSOR
Slide 10
Slide 10 text
10
TIPS
• Representação da entidade
• Decorada com a interface IReadModel e IReadModelFor, onde definimos o agregado, o identificador
e qual evento será o responsável por persistir a mesma.
READMODEL
Slide 11
Slide 11 text
11
TIPS
• Semelhante ao já aplicado Command Pattern
• Responsável por interpretar um comando (solicitação) e combiná-lo com um manipulador
(execução).
• A diferença básica é a inclusão do agregado e do identificador.
COMMAND
Slide 12
Slide 12 text
12
TIPS
• A diferença básica é necessidade de utilizar a interface ISubscribeSynchronousTo
• Ela é a responsável por interpreter a mensagem no EventBus e executar as ações posteriormente.
EVENTS
Slide 13
Slide 13 text
13
HANDS ON!
03
Slide 14
Slide 14 text
#SOMOSTOTVERS
• Tecnologia + Conhecimento são nosso DNA.
• O sucesso do cliente é o nosso sucesso.
• Valorizamos gente boa que é boa gente.
totvs.com
@totvs
/totvs company/totvs
totvs.store
@totvs
OBRIGADO
EDUARDO QUEIRÓZ
Inovação - Hospitalidade
[email protected]