SlideShare uma empresa Scribd logo
1 de 44
Baixar para ler offline
ARQUITETURA ORIENTADA A EVENTOS
Emmanuel Neri
@emmanuelnerii
www.emmanuelneri.com.br
DESACOPLANDO A COMUNICAÇÃO ENTRE SERVIÇOS
EMMANUEL NERI
‣ Mestre em Desenvolvimento de Tecnologia
‣ Desenvolvedor desde 2010
‣ Atualmente trabalhando com Go
‣ Especialista de Tecnologia na
‣ Membro do
TRENDS
ARQUITETURA
PADRÕES DE ARQUITETURA
Layered
Clean ArchitectureEvent-driven
Service-Oriented CQRS
PADRÕES DE ARQUITETURA ORIENTADA A EVENTOS
Mediator Broker
ARQUITETURA ORIENTADA A EVENTOS
T h e e v e n t - d r i v e n a r c h i t e c t u r e p a t t e r n i s a p o p u l a r
distributed asynchronous architecture pattern used to produce highly
scalable applications. It is also highly adaptable and can be used for
small applications and as well as large, complex ones. The event-driven
architecture is made up of highly decoupled, single-purpose event
processing components that asynchronously receive and process
events. 
Mark Richards
ARQUITETURA ORIENTADA A EVENTOS
Event-driven architecture (EDA) is a software design pattern that
enables an organization to detect “events” or important business
moments (such as a transaction, site visit, shopping cart abandonment,
etc) and act on them in real time or near real time.
tibco.com
Event-driven systems reflect how modern businesses actually
work–thousands of small changes happening all day, every day.
spring.io
EVENTOS
EVENTO = ACONTECIMENTO
‣ UsuarioCriado
‣ TransacaoAprovada
‣ ProdutoAdicionado
An event can be defined as "a significant change in state"
Event-Driven Applications: Costs, Benefits and Design Approaches
ARQUITETURA ORIENTADA A EVENTOS
UsuarioCriado
TransacaoAprovada
ProdutoAdicionado
ARQUITETURA ORIENTADA A EVENTOS
Cliente criado
Cliente OnBoarding
ARQUITETURA ORIENTADA A EVENTOS
Transação Aprovada
Transação
Bonificação
Agendamento
ARQUITETURA ORIENTADA A EVENTOS
Pedido Criado
Pedidos
Pagamentos
Entregas
Pagamento Aprovado
Pedido Confirmado
FORMAS DE INTERAÇÕES
Solicitação Evento
EVENTO != COMANDOS
‣ CriarUsuario != UsuarioCriado
‣ ProcessarTransacao != TransacaoAprovada
‣ AdicionarProduto != ProdutoAdicionado
PENSANDO EM EVENTOS
‣ Evento “de comando”
‣ Eu entro na sala, ligo o interruptor de luz e a luz se acende
‣ Evento “Event First”
‣ Eu entro na sala, é gerado um evento “entrei na sala” e a luz se
acende
https://www.confluent.io/blog/journey-to-event-driven-part-1-why-event-first-thinking-changes-everything/
FORMAS DE INTERAÇÕES
Designing Event-Driven Systems
REDUZIR ACOPLAMENTO
Software Architecture Fundamentals
MENSAGERIA
Point-to-Point
Publish/subscribe
POINT-TO-POINT
Onboarding
ClienteCriado
Cliente
Usuario
C1 C2 C3
PUB/SUB (PUBLISH/SUBSCRIBE)
Onboarding
ClienteCriado
Cliente
Notificação
userCreated
Usuario
C1
C1
C1
C2
C2
C2
C3
C3
C3
PLATAFORMA DE MENSAGENS
ARQUITETURA ORIENTADA A EVENTOS
‣ Event Notification
‣ Event-Carried State Transfer
‣ Event-Sourcing
EVENT NOTIFICATION
Faturas
faturaEncerrada
Auditoria
SISTEMA DE
ARQUIVOS
EVENT NOTIFICATION
TIMESTAMP
REQUEST ID
URL
ArquivoCriado
05/29/2020 05:50:06
2bc7bd56-80f1-436e-84f6-c7f3099bd0ef
https://filestore/nfe/99902
TIMESTAMP
ID
TYPE
VendaModificada
09/30/2020 20:00:00
662aa64b-0f70-4fc1-96a0-046d46e142ba
OrderCreatedEvent
EVENT-CARRIED STATE TRANSFER
Transação
transacaoConfirmada
Agendamento de pagamentos
EVENT-CARRIED STATE TRANSFER
EMAIL
NAME
ROLES
UsuarioCriado
email@gmail.com
User
[ADMIN]
ID
CUSTOMER ID
CUSTOMER DOCUMENT
CUSTOMER NAME
VALUE
DATETIME
TYPE
Transação
9c64f9c1-c02f-4b57-a8c0-7e5550b49ace
a7e8a733-78e3-4cac-bda2-ea7b16395949
59.792.056/0001-79
Customer
100.00
09/29/2020 14:00:06
APPROVED
EVENT-SOURCING
Operação
OperacaoConfirmada
Conta
CRÉDITO - R$ 100
CRÉDITO - R$ 50
DÉBITO - R$ 20 Saldo = R$ 130
EVENT-SOURCING
DATETIME
ACCOUNT
TYPE
VALUE
operacaoExecutada
09/29/2020 14:00:06
a8f28235-1b97-4efc-b63d-0bfcbba30588
DEBIT
10.00
DATETIME
ORIGIN_NUMBER
DESTINATION_NUMBER
DURATION
ligacaoEncerrada
01/10/2020 20:36:02
44999002332
44999822300
1.2
DOMAIN EVENTS X EVENT SOURCE
Event Sourcing ensures that all changes to application state are stored as a
sequence of events.
Martin Fowler
Domain Events
‣ Pedido foi confirmado
‣ Transação foi aprovada
‣ Novo produto foi cadastrado
Event source
‣ Iniciado pedido para o cliente Teste
‣ Adicionado produto celular de valor
1999 no pedido 001
‣ Adicionado produto capa protetora
de valor 80 no pedido 001
‣ Finalizado pedido 001
APIS NA ARQUITETURA ORIENTADA A EVENTOS
CONSULTAS
/clientes /transacoes
EVENTOS
CONSULTAS
EVENTOS
/query
CONSULTAS
/clientes /transacoes
ESCRITAS
ESCRITAS
Notificação
Recebidoapi
Criado / Processado
Contexto
CONSISTÊNCIA EVENTUAL
Eventual consistency
ALGUMAS MUDANÇAS
‣ Responses
‣ 200 (Ok) -> 201 (Created) / 202 (Accepted)
‣ Calbacks / webhook
‣ Dados “não prontos"
‣ Tempo de execução
‣ Atenção nos Logs e monitoria
‣ Monitoria de negócio
ARMADILHAS
‣ Consistência “Fake”
‣ Bloquear requisição até processo assíncrona terminar
‣ Polling esperando o término da operação assíncrona
ATENÇÃO
‣ Mudanças estruturais nos eventos são complicadas
‣ Remoção de campos
‣ Tolerant Reader
‣ Reprocessamento dos eventos
‣ Consumer idempotente
‣ Conceitos de garantia de entrega
‣ At-most-once / At-least-once / Exactly-once
RESUMO
‣ Flexível
‣ Comunicação assíncrona
‣ Menor acoplamento
‣ Escalável
‣ Mudança no modelo
‣ Consistência eventual
‣ Arquitetura distribuída
ARQUITETURA ANTI-PATTERN
Software Architecture Fundamentals
REFERÊNCIAS
emmanuelnerisouza@gmail.com
@emmanuelnerii
www.emmanuelneri.com.br
github.com/emmanuelneri
emmanuelnerisouza
OBRIGADO!

Mais conteúdo relacionado

Mais procurados

Azure Cloud Adoption Framework + Governance - Sana Khan and Jay Kumar
Azure Cloud Adoption Framework + Governance - Sana Khan and Jay Kumar Azure Cloud Adoption Framework + Governance - Sana Khan and Jay Kumar
Azure Cloud Adoption Framework + Governance - Sana Khan and Jay Kumar Timothy McAliley
 
TechnicalTerraformLandingZones121120229238.pdf
TechnicalTerraformLandingZones121120229238.pdfTechnicalTerraformLandingZones121120229238.pdf
TechnicalTerraformLandingZones121120229238.pdfMIlton788007
 
Arquitetura orientada a eventos em ambientes complexos tdc
Arquitetura orientada a eventos em ambientes complexos tdcArquitetura orientada a eventos em ambientes complexos tdc
Arquitetura orientada a eventos em ambientes complexos tdcPaula Santana
 
Agile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven DesignAgile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven DesignAraf Karsh Hamid
 
webMethods 10.5 and webMethods.io Integration: Everything You Must Know
webMethods 10.5 and webMethods.io Integration: Everything You Must KnowwebMethods 10.5 and webMethods.io Integration: Everything You Must Know
webMethods 10.5 and webMethods.io Integration: Everything You Must KnowKellton Tech Solutions Ltd
 
Azure Cloud Governance
Azure Cloud GovernanceAzure Cloud Governance
Azure Cloud GovernanceJonathan Wade
 
Azure Security Overview
Azure Security OverviewAzure Security Overview
Azure Security OverviewAllen Brokken
 
Microservices for Application Modernisation
Microservices for Application ModernisationMicroservices for Application Modernisation
Microservices for Application ModernisationAjay Kumar Uppal
 
Introduction to Azure
Introduction to AzureIntroduction to Azure
Introduction to AzureRobert Crane
 
AWS VS AZURE VS GCP.pptx
AWS VS AZURE VS GCP.pptxAWS VS AZURE VS GCP.pptx
AWS VS AZURE VS GCP.pptxRaneesh Ramesan
 
Microservices Architecture - Bangkok 2018
Microservices Architecture - Bangkok 2018Microservices Architecture - Bangkok 2018
Microservices Architecture - Bangkok 2018Araf Karsh Hamid
 
Migrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft AzureMigrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft AzureChris Dufour
 
Microservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudMicroservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudEberhard Wolff
 
12 factor app an introduction
12 factor app an introduction12 factor app an introduction
12 factor app an introductionKrishna-Kumar
 
A cloud readiness assessment framework
A cloud readiness assessment frameworkA cloud readiness assessment framework
A cloud readiness assessment frameworkCarlo Colicchio
 

Mais procurados (20)

Azure Cloud Adoption Framework + Governance - Sana Khan and Jay Kumar
Azure Cloud Adoption Framework + Governance - Sana Khan and Jay Kumar Azure Cloud Adoption Framework + Governance - Sana Khan and Jay Kumar
Azure Cloud Adoption Framework + Governance - Sana Khan and Jay Kumar
 
TechnicalTerraformLandingZones121120229238.pdf
TechnicalTerraformLandingZones121120229238.pdfTechnicalTerraformLandingZones121120229238.pdf
TechnicalTerraformLandingZones121120229238.pdf
 
Arquitetura orientada a eventos em ambientes complexos tdc
Arquitetura orientada a eventos em ambientes complexos tdcArquitetura orientada a eventos em ambientes complexos tdc
Arquitetura orientada a eventos em ambientes complexos tdc
 
Agile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven DesignAgile, User Stories, Domain Driven Design
Agile, User Stories, Domain Driven Design
 
webMethods 10.5 and webMethods.io Integration: Everything You Must Know
webMethods 10.5 and webMethods.io Integration: Everything You Must KnowwebMethods 10.5 and webMethods.io Integration: Everything You Must Know
webMethods 10.5 and webMethods.io Integration: Everything You Must Know
 
Azure Cloud Governance
Azure Cloud GovernanceAzure Cloud Governance
Azure Cloud Governance
 
Azure Security Overview
Azure Security OverviewAzure Security Overview
Azure Security Overview
 
Microservices for Application Modernisation
Microservices for Application ModernisationMicroservices for Application Modernisation
Microservices for Application Modernisation
 
Introduction to Azure
Introduction to AzureIntroduction to Azure
Introduction to Azure
 
AWS VS AZURE VS GCP.pptx
AWS VS AZURE VS GCP.pptxAWS VS AZURE VS GCP.pptx
AWS VS AZURE VS GCP.pptx
 
Keep CALMS and DevSecOps
Keep CALMS and DevSecOps Keep CALMS and DevSecOps
Keep CALMS and DevSecOps
 
Azure governance
Azure governanceAzure governance
Azure governance
 
Microservices Architecture - Bangkok 2018
Microservices Architecture - Bangkok 2018Microservices Architecture - Bangkok 2018
Microservices Architecture - Bangkok 2018
 
Migrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft AzureMigrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft Azure
 
Microservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudMicroservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring Cloud
 
Power Platform ALM with DevOps
Power Platform ALM with DevOpsPower Platform ALM with DevOps
Power Platform ALM with DevOps
 
12 factor app an introduction
12 factor app an introduction12 factor app an introduction
12 factor app an introduction
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
A cloud readiness assessment framework
A cloud readiness assessment frameworkA cloud readiness assessment framework
A cloud readiness assessment framework
 
Event-driven Architecture
Event-driven ArchitectureEvent-driven Architecture
Event-driven Architecture
 

Semelhante a Arquitetura Orientada a Eventos Desacoplando Comunicação Serviços

Desenvolvimento com arquitetura baseada em eventos
Desenvolvimento com arquitetura baseada em eventosDesenvolvimento com arquitetura baseada em eventos
Desenvolvimento com arquitetura baseada em eventosPaula Santana
 
Skalena - Overview de Soluções
Skalena - Overview de Soluções Skalena - Overview de Soluções
Skalena - Overview de Soluções Edgar Silva
 
Gestão de Eventos por meio da Ferramenta IBM Tivoli Netcool/OMNIbus
Gestão de Eventos por meio da Ferramenta IBM Tivoli Netcool/OMNIbusGestão de Eventos por meio da Ferramenta IBM Tivoli Netcool/OMNIbus
Gestão de Eventos por meio da Ferramenta IBM Tivoli Netcool/OMNIbusIvan Luizio Magalhães
 
DevOps - Novos Desafios para TI
DevOps - Novos Desafios para TIDevOps - Novos Desafios para TI
DevOps - Novos Desafios para TICarlos Buzeto
 
W3K - Palestra edoc 2014
W3K - Palestra edoc 2014W3K - Palestra edoc 2014
W3K - Palestra edoc 2014W3K Tecnologia
 
Como a Gestão de Conteúdo traz mais qualidade e rentabilidade em projetos de ...
Como a Gestão de Conteúdo traz mais qualidade e rentabilidade em projetos de ...Como a Gestão de Conteúdo traz mais qualidade e rentabilidade em projetos de ...
Como a Gestão de Conteúdo traz mais qualidade e rentabilidade em projetos de ...dklafke
 
Arquitetura e design de software
Arquitetura e design de softwareArquitetura e design de software
Arquitetura e design de softwareVitor Castro
 
Consultech Soluções em Tecnologia
Consultech Soluções em Tecnologia Consultech Soluções em Tecnologia
Consultech Soluções em Tecnologia PAULO MOURA
 
DevOps Tour SP 2019
DevOps Tour SP 2019DevOps Tour SP 2019
DevOps Tour SP 2019Edgar Silva
 
Uso de Tecnologias durante o evento
Uso de Tecnologias durante o eventoUso de Tecnologias durante o evento
Uso de Tecnologias durante o eventoMaria Carvalhal
 
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-marketBoris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-marketAgile Trends
 
Conectt Nossa História
Conectt   Nossa HistóriaConectt   Nossa História
Conectt Nossa HistóriaConectt
 
Event Driven Architecture & Complex Event Processing
Event Driven Architecture & Complex Event ProcessingEvent Driven Architecture & Complex Event Processing
Event Driven Architecture & Complex Event Processinglogus2k
 
TDC 2017 Porto Alegre - Da Modelagem à Execução de Processos, Casos e Decisõ...
TDC 2017 Porto Alegre - Da Modelagem à Execução de Processos, Casos e Decisõ...TDC 2017 Porto Alegre - Da Modelagem à Execução de Processos, Casos e Decisõ...
TDC 2017 Porto Alegre - Da Modelagem à Execução de Processos, Casos e Decisõ...Mauricio Bitencourt, CBPP
 
Quando a Cultura DevOps transcede a Tecnologia
Quando a Cultura DevOps transcede a TecnologiaQuando a Cultura DevOps transcede a Tecnologia
Quando a Cultura DevOps transcede a TecnologiaAnnelise Gripp
 
A Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosA Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosOziel Moreira Neto
 

Semelhante a Arquitetura Orientada a Eventos Desacoplando Comunicação Serviços (20)

Desenvolvimento com arquitetura baseada em eventos
Desenvolvimento com arquitetura baseada em eventosDesenvolvimento com arquitetura baseada em eventos
Desenvolvimento com arquitetura baseada em eventos
 
Skalena - Overview de Soluções
Skalena - Overview de Soluções Skalena - Overview de Soluções
Skalena - Overview de Soluções
 
Gestão de Eventos por meio da Ferramenta IBM Tivoli Netcool/OMNIbus
Gestão de Eventos por meio da Ferramenta IBM Tivoli Netcool/OMNIbusGestão de Eventos por meio da Ferramenta IBM Tivoli Netcool/OMNIbus
Gestão de Eventos por meio da Ferramenta IBM Tivoli Netcool/OMNIbus
 
DevOps - Novos Desafios para TI
DevOps - Novos Desafios para TIDevOps - Novos Desafios para TI
DevOps - Novos Desafios para TI
 
W3K - Palestra edoc 2014
W3K - Palestra edoc 2014W3K - Palestra edoc 2014
W3K - Palestra edoc 2014
 
Como a Gestão de Conteúdo traz mais qualidade e rentabilidade em projetos de ...
Como a Gestão de Conteúdo traz mais qualidade e rentabilidade em projetos de ...Como a Gestão de Conteúdo traz mais qualidade e rentabilidade em projetos de ...
Como a Gestão de Conteúdo traz mais qualidade e rentabilidade em projetos de ...
 
Arquitetura e design de software
Arquitetura e design de softwareArquitetura e design de software
Arquitetura e design de software
 
Fhcunha Tecnologia Contratual
Fhcunha Tecnologia ContratualFhcunha Tecnologia Contratual
Fhcunha Tecnologia Contratual
 
Oportunidades de Negócios com a Internet das Coisas
Oportunidades de Negócios com a Internet das CoisasOportunidades de Negócios com a Internet das Coisas
Oportunidades de Negócios com a Internet das Coisas
 
Consultech Soluções em Tecnologia
Consultech Soluções em Tecnologia Consultech Soluções em Tecnologia
Consultech Soluções em Tecnologia
 
DevOps Tour SP 2019
DevOps Tour SP 2019DevOps Tour SP 2019
DevOps Tour SP 2019
 
Iasapoa eca eda
Iasapoa eca edaIasapoa eca eda
Iasapoa eca eda
 
Uso de Tecnologias durante o evento
Uso de Tecnologias durante o eventoUso de Tecnologias durante o evento
Uso de Tecnologias durante o evento
 
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-marketBoris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
 
Conectt Nossa História
Conectt   Nossa HistóriaConectt   Nossa História
Conectt Nossa História
 
Event Driven Architecture & Complex Event Processing
Event Driven Architecture & Complex Event ProcessingEvent Driven Architecture & Complex Event Processing
Event Driven Architecture & Complex Event Processing
 
TDC 2017 Porto Alegre - Da Modelagem à Execução de Processos, Casos e Decisõ...
TDC 2017 Porto Alegre - Da Modelagem à Execução de Processos, Casos e Decisõ...TDC 2017 Porto Alegre - Da Modelagem à Execução de Processos, Casos e Decisõ...
TDC 2017 Porto Alegre - Da Modelagem à Execução de Processos, Casos e Decisõ...
 
Quando a Cultura DevOps transcede a Tecnologia
Quando a Cultura DevOps transcede a TecnologiaQuando a Cultura DevOps transcede a Tecnologia
Quando a Cultura DevOps transcede a Tecnologia
 
A Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas CorporativosA Evolução da Arquitetura de Sistemas Corporativos
A Evolução da Arquitetura de Sistemas Corporativos
 
Iasapoa eca eda
Iasapoa eca edaIasapoa eca eda
Iasapoa eca eda
 

Mais de Emmanuel Neri

Iniciando com Docker
Iniciando com DockerIniciando com Docker
Iniciando com DockerEmmanuel Neri
 
Arquitetura reativa, a solução para os microserviços?
Arquitetura reativa,  a solução para os microserviços?Arquitetura reativa,  a solução para os microserviços?
Arquitetura reativa, a solução para os microserviços?Emmanuel Neri
 
Preparando nossas aplicações para falharem com feature toggle e configurações...
Preparando nossas aplicações para falharem com feature toggle e configurações...Preparando nossas aplicações para falharem com feature toggle e configurações...
Preparando nossas aplicações para falharem com feature toggle e configurações...Emmanuel Neri
 
Preparando nossa aplicação para falhar com feature toggle e configurações dis...
Preparando nossa aplicação para falhar com feature toggle e configurações dis...Preparando nossa aplicação para falhar com feature toggle e configurações dis...
Preparando nossa aplicação para falhar com feature toggle e configurações dis...Emmanuel Neri
 
Combatendo code smells em Java
Combatendo code smells em Java Combatendo code smells em Java
Combatendo code smells em Java Emmanuel Neri
 
Configurações distribuídas com Spring Cloud Config
Configurações distribuídas com Spring Cloud ConfigConfigurações distribuídas com Spring Cloud Config
Configurações distribuídas com Spring Cloud ConfigEmmanuel Neri
 
Lidando com desafios dos microserviços com a stack Spring Cloud Netflix
Lidando com desafios dos microserviços com a stack Spring Cloud NetflixLidando com desafios dos microserviços com a stack Spring Cloud Netflix
Lidando com desafios dos microserviços com a stack Spring Cloud NetflixEmmanuel Neri
 
O Impacto da arquitetura de Micro Serviços nas soluções de software
O Impacto da arquitetura de Micro Serviços nas soluções de softwareO Impacto da arquitetura de Micro Serviços nas soluções de software
O Impacto da arquitetura de Micro Serviços nas soluções de softwareEmmanuel Neri
 
A Cultura do Home Office
A Cultura do Home OfficeA Cultura do Home Office
A Cultura do Home OfficeEmmanuel Neri
 
Combatendo code smells em aplicações Java
Combatendo code smells em aplicações JavaCombatendo code smells em aplicações Java
Combatendo code smells em aplicações JavaEmmanuel Neri
 
Construindo APIs de forma produtiva com Spring Boot, Spring Data e Spring MVC
Construindo APIs de forma produtiva com Spring Boot, Spring Data e Spring MVCConstruindo APIs de forma produtiva com Spring Boot, Spring Data e Spring MVC
Construindo APIs de forma produtiva com Spring Boot, Spring Data e Spring MVCEmmanuel Neri
 
A trilogia Spring MVC + Spring Data + AngularJS
A trilogia  Spring MVC + Spring Data + AngularJSA trilogia  Spring MVC + Spring Data + AngularJS
A trilogia Spring MVC + Spring Data + AngularJSEmmanuel Neri
 
Criando uma arquitetura escalável para processamento de arquivos com micro s...
Criando uma arquitetura escalável para processamento de arquivos com micro s...Criando uma arquitetura escalável para processamento de arquivos com micro s...
Criando uma arquitetura escalável para processamento de arquivos com micro s...Emmanuel Neri
 
Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...
Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...
Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...Emmanuel Neri
 
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...Emmanuel Neri
 
Aplicação da arquitetura de micro serviços em softwares corporativos
Aplicação da arquitetura de micro serviços em softwares corporativosAplicação da arquitetura de micro serviços em softwares corporativos
Aplicação da arquitetura de micro serviços em softwares corporativosEmmanuel Neri
 
Desenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFDesenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFEmmanuel Neri
 
Jett: Exporte Excel do jeito que seu cliente sempre sonhou
Jett: Exporte Excel do jeito que seu cliente sempre sonhouJett: Exporte Excel do jeito que seu cliente sempre sonhou
Jett: Exporte Excel do jeito que seu cliente sempre sonhouEmmanuel Neri
 
Análise e Design - RUP
Análise e Design - RUPAnálise e Design - RUP
Análise e Design - RUPEmmanuel Neri
 

Mais de Emmanuel Neri (20)

Iniciando com Docker
Iniciando com DockerIniciando com Docker
Iniciando com Docker
 
Arquitetura reativa, a solução para os microserviços?
Arquitetura reativa,  a solução para os microserviços?Arquitetura reativa,  a solução para os microserviços?
Arquitetura reativa, a solução para os microserviços?
 
Preparando nossas aplicações para falharem com feature toggle e configurações...
Preparando nossas aplicações para falharem com feature toggle e configurações...Preparando nossas aplicações para falharem com feature toggle e configurações...
Preparando nossas aplicações para falharem com feature toggle e configurações...
 
Preparando nossa aplicação para falhar com feature toggle e configurações dis...
Preparando nossa aplicação para falhar com feature toggle e configurações dis...Preparando nossa aplicação para falhar com feature toggle e configurações dis...
Preparando nossa aplicação para falhar com feature toggle e configurações dis...
 
Combatendo code smells em Java
Combatendo code smells em Java Combatendo code smells em Java
Combatendo code smells em Java
 
Configurações distribuídas com Spring Cloud Config
Configurações distribuídas com Spring Cloud ConfigConfigurações distribuídas com Spring Cloud Config
Configurações distribuídas com Spring Cloud Config
 
Lidando com desafios dos microserviços com a stack Spring Cloud Netflix
Lidando com desafios dos microserviços com a stack Spring Cloud NetflixLidando com desafios dos microserviços com a stack Spring Cloud Netflix
Lidando com desafios dos microserviços com a stack Spring Cloud Netflix
 
Trabalho Remoto
Trabalho RemotoTrabalho Remoto
Trabalho Remoto
 
O Impacto da arquitetura de Micro Serviços nas soluções de software
O Impacto da arquitetura de Micro Serviços nas soluções de softwareO Impacto da arquitetura de Micro Serviços nas soluções de software
O Impacto da arquitetura de Micro Serviços nas soluções de software
 
A Cultura do Home Office
A Cultura do Home OfficeA Cultura do Home Office
A Cultura do Home Office
 
Combatendo code smells em aplicações Java
Combatendo code smells em aplicações JavaCombatendo code smells em aplicações Java
Combatendo code smells em aplicações Java
 
Construindo APIs de forma produtiva com Spring Boot, Spring Data e Spring MVC
Construindo APIs de forma produtiva com Spring Boot, Spring Data e Spring MVCConstruindo APIs de forma produtiva com Spring Boot, Spring Data e Spring MVC
Construindo APIs de forma produtiva com Spring Boot, Spring Data e Spring MVC
 
A trilogia Spring MVC + Spring Data + AngularJS
A trilogia  Spring MVC + Spring Data + AngularJSA trilogia  Spring MVC + Spring Data + AngularJS
A trilogia Spring MVC + Spring Data + AngularJS
 
Criando uma arquitetura escalável para processamento de arquivos com micro s...
Criando uma arquitetura escalável para processamento de arquivos com micro s...Criando uma arquitetura escalável para processamento de arquivos com micro s...
Criando uma arquitetura escalável para processamento de arquivos com micro s...
 
Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...
Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...
Microservices: Mais que uma arquitetura de software, uma filosofia de desenvo...
 
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
 
Aplicação da arquitetura de micro serviços em softwares corporativos
Aplicação da arquitetura de micro serviços em softwares corporativosAplicação da arquitetura de micro serviços em softwares corporativos
Aplicação da arquitetura de micro serviços em softwares corporativos
 
Desenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFDesenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSF
 
Jett: Exporte Excel do jeito que seu cliente sempre sonhou
Jett: Exporte Excel do jeito que seu cliente sempre sonhouJett: Exporte Excel do jeito que seu cliente sempre sonhou
Jett: Exporte Excel do jeito que seu cliente sempre sonhou
 
Análise e Design - RUP
Análise e Design - RUPAnálise e Design - RUP
Análise e Design - RUP
 

Arquitetura Orientada a Eventos Desacoplando Comunicação Serviços