SlideShare uma empresa Scribd logo
+
Reactive Architecture e
Microservices:
Microservices, APIs e Event Driven
http://sensedia.com/blog/
Petterson Andrade
Software Architect @ Sensedia
petterson.andrade@sensedia.com
@pett4j
Topic Title
Agenda
1. Microservice 2. Microservice 3. Microservice
Arquitetura de
software
Reactive architecture e microservices  microservices, ap is e event driven (1)
Pessoas
Reactive architecture e microservices  microservices, ap is e event driven (1)
Monolitico x Microservices
Cruzeiro x Atlético
Grêmio x Inter
Microservices
Single
Responsibility
principle
Dividir para conquistar
Foco
Pequeno
Bem Feito
Por que
adotar?
- Escolha a tecnologia certa para resolver o
problema
- Você não precisa repassar um problema você
pode isolar e se recuperar
- Você precisa escalar somente o que vai utilizar
- Desenvolva e teste rápido e focado
- Serviço pequeno, menos conflito, menos erros e
mais produtividade
- Re-uso! Não reinvente a roda!
- Otimize, joge fora e faça melhor!
SOA == Microservices (true)
SOA != Microservices (true)
O princípios
são iguais
Desacoplamento
Isolamento
Composição
Integração
Serviços autồnomos
A falta dos
princípios não
ESB ligando monolíticos
Comunicação complicada
Ineficiência
Sem flexibilidade
SOA == Microservices
SOA Microservices
Reactive architecture e microservices  microservices, ap is e event driven (1)
Strangler Application
Pattern
Martin Fowler - 29 June 2004
Paul Hammant
http://paulhammant.com/2013/
07/14/legacy-application-strang
ulation-case-studies/
Você venceu sua jornada: é o fim do monolítico
Mas lembre-se: Você está em rota de colisão
E agora? Quem
poderá nos
defender?
San
Newman
samnewman.io
Chris
Richardson
microservices.io
Jonas Bonér
www.lightbend.com
Martin
Fowler
martinfowler.com
Eric Evans
domainlanguage.com/ddd
The Reactive
Manifesto
Published on September 16 2014. (v2.0)
Reactive architecture e microservices  microservices, ap is e event driven (1)
- Aplicações eram gigantes e com dezenas de servers
- Segundo é a unidade de medida de resposta
- Horas de manutenção e de sistemas fora do ar
- Gigabytes é a unidade de medida de armazenamento
Reactive architecture e microservices  microservices, ap is e event driven (1)
Reactive architecture e microservices  microservices, ap is e event driven (1)
- Aplicações distribuídas
- Você faz tudo com um comando pelo smartphone
- Nuvem rodando milhares de máquina multi-core
- Milissegundos é obrigatoriamente a unidade de medida de
resposta
- 100% uptime.
- Data is measured in Petabytes.
Transformação
Digital
S M A C IoT
TODO NEGÓCIO SERÁ DIGITAL
The Reactive Manifesto
Se um sistema é:
Responsive, Resilient, Elastic and Message Driven,
Ele pode ser chamado de Reactive System
The Reactive Manifesto:
Responsive
Sempre da feedback aos usuários
Responde em tempo hábil
Detecta problemas e trata
Rápido e consistente
Alta confiabilidade
.
The Reactive Manifesto: Resilient
Responde em caso de falha
Replicação
contenção,
isolamento e
delegação.
The Reactive Manifesto: Elastic
Continua responsivo mesmo com aumento da demanda
Aumenta e diminui os recursos conforme a demanda
Distribui demanda
The Reactive Manifesto:
Message Driven
Usa mensagens assíncronas
Baixo acoplamento
Tratamento de erros por mensagem
Comunicação não blocante
Evita desgaste do sistema
Reactive architecture e microservices  microservices, ap is e event driven (1)
Aqui é reativo p…!
BIIIIRRRLLL!
Sai de casa escrevi
código pra c……!
Fonte de dados
isolada
Reactive architecture e microservices  microservices, ap is e event driven (1)
Event Driven
Data
Reactive architecture e microservices  microservices, ap is e event driven (1)
Reactive architecture e microservices  microservices, ap is e event driven (1)
Reactive architecture e microservices  microservices, ap is e event driven (1)
Reactive architecture e microservices  microservices, ap is e event driven (1)
Event Source
Reactive architecture e microservices  microservices, ap is e event driven (1)
Synchronous
Versus
Asynchronous
100
ms
70
ms
50
ms
100
ms
Synchronous
320 ms
Req Resp
Req
70
ms
50
ms
100
ms
Asynchronous
Resp
100ms
Req
70
ms
50
ms
100
ms
Asynchronous
Resp
?
Reactive architecture e microservices  microservices, ap is e event driven (1)
Backpressure
- O sistema precisa ser capaz de reagir ao erro
- Tempo de resposta não pode ser afetado
- Não pode propagar o erro
- Precisa ser capaz de fazer Rollback
Asynchronous
Orchestration vs
Choreography
Service 1 Service 3
Service 4
Service 2
Orchestration
Service 1 Service 3
Service 4
Service 2
Choreography
Service 3
pub
sub
sub
sub
API Management
API Gateway
API Gateway
Simplifica o client side
Roteamento
Encapsulamento de serviços
Tradução de protocolo
Service Discovery
Reactive architecture e microservices  microservices, ap is e event driven (1)
- Inversão de controle
- Cada serviço se registra
- Configuração deixa de ser estática
- Pode ser aplicado ao cliente
- Deve ser aplicado ao server
API / REST / RESTFul
APIs
The Digital Glue
Backend
Ecossistema de
Parceiros Digitais
Integrações com
Aplicações SaaS
Aplicações Móveis e
Internet of Things
- Over HTTP
- Tira dependência de tecnologia
- O sistema precisa ser capaz de reagir ao erro
- Use padrões
- Implemente Restful de verdade
Hypermedia
Reactive architecture e microservices  microservices, ap is e event driven (1)
- Use HAL (Hypertext Application Language)
- Hypermedia garante flexibilidade
- Possui suporte de várias bibliotecas
Front-end isolado
Aplicação 1
Aplicação
Web App
HTML
JS
Services
Acoplado Desacoplado
Web App
HTML
JS
Aplicação 2
Services
WEB Sockets
- Padrão no HTTP 2.0
- Torna o sistema mais responsivo
Client
API
WebSocket Server
Fire and forget
Events
Programação
reativa
- Padrão no HTTP 2.0
- Torna o sistema mais responsivo
Programação
reativa
- Use ferramentas para auxiliar
- RXJava
- RXJS
- Avalie usar imutabilidade
- Avalie usar funcional
Monitoramento
- Monitore tudo que for possível e mais um pouco
- Alerte a performance do serviço
- Alerte qualquer anomalia a estrutura
- Evite falsos positivos, refine os alertas
- Avalie o tempo todo as métricas
- Automatize e depois automatize de novo
Scalability
- Scale out
- Services Stateless
- Comunicação por eventos
- Nunca use pooling
- Deployment
Deployment
Reactive architecture e microservices  microservices, ap is e event driven (1)
Reactive architecture e microservices  microservices, ap is e event driven (1)
Reactive architecture e microservices  microservices, ap is e event driven (1)

Mais conteúdo relacionado

PDF
Containers and microservices orchestration
PDF
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
PDF
TDC2017 | São Paulo - Trilha Arquitetura Java How we figured out we had a SRE...
PDF
Gleison Tavares Diolino (Serpro) - Estaleiro: mais que uma nuvem
PDF
Microservices
PPTX
Agile Trends Gov 2017 - Do repositório à producao
PPTX
Amadurecendo Equipes com Microservices
PPTX
Integrating Microservices
Containers and microservices orchestration
Boris Kuszka (Red Hat) - Tecnologias para diminuir o time-to-market
TDC2017 | São Paulo - Trilha Arquitetura Java How we figured out we had a SRE...
Gleison Tavares Diolino (Serpro) - Estaleiro: mais que uma nuvem
Microservices
Agile Trends Gov 2017 - Do repositório à producao
Amadurecendo Equipes com Microservices
Integrating Microservices

Mais procurados (13)

PDF
Evitando Lock-in: Continuous Deployment, Kubernetes e Spinnaker para gerencia...
PPT
TheDevConf - Implantando Arquitetura de Microsserviços em Alta Disponibilidad...
PPTX
Achieving DevSecOps Outcomes with Tanzu Advanced - Portuguese
PDF
Kaspersky Security for Virtualization (KSV): proteção para seus ambientes vir...
PDF
Spring cloud and microservices
PDF
Arquitetura de Microserviços
PDF
Arquitetura de Microserviços
PPTX
Azure Security Center - 120715 - PTBR-Final
PPTX
Apresentação Comercial Tecla Internet
PPTX
Microsoft Azure Advisor
PPTX
Automatize seu processo de entrega de software com CI/CD na AWS
PDF
Webinar e Demo ao Vivo: Kaspersky Endpoint Security | Cloud
PDF
QCon SP 2016 - WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...
Evitando Lock-in: Continuous Deployment, Kubernetes e Spinnaker para gerencia...
TheDevConf - Implantando Arquitetura de Microsserviços em Alta Disponibilidad...
Achieving DevSecOps Outcomes with Tanzu Advanced - Portuguese
Kaspersky Security for Virtualization (KSV): proteção para seus ambientes vir...
Spring cloud and microservices
Arquitetura de Microserviços
Arquitetura de Microserviços
Azure Security Center - 120715 - PTBR-Final
Apresentação Comercial Tecla Internet
Microsoft Azure Advisor
Automatize seu processo de entrega de software com CI/CD na AWS
Webinar e Demo ao Vivo: Kaspersky Endpoint Security | Cloud
QCon SP 2016 - WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...
Anúncio

Destaque (20)

PDF
Venus - #UseYourAnd
PPT
Value of the mediawiki platform for providing content to the chemistry community
PPS
La vuelta al Mundo en 8 Minutos (por: carlitosrangel)
PDF
Pengenalan kepada Pentaho
DOC
Zaragoza turismo-59
DOCX
Final project report`````
PPTX
World com
PDF
GBBrand 2012 - TOP 100 British Brands
PPS
美雅找醬油篇
PDF
ممارسات القيادة الاستراتيجية وعلاقتها بخدمة الزبون
PDF
Smart SMBs: fine-tuning the engines of growth
PPTX
Ευρωπαϊκή Ένωση, Αντωνία και Ανιέζα
PDF
Hard Times: College Majors, Unemployment and Earnings: Not All College Degree...
PPTX
あっぱれじゃ
PPT
Legal issues in student background checks april 11 2011
PPTX
Open PHACTS: The Data Today
PPTX
Poliza sep 2014
PDF
Educators as Partners in Digital Engagement: What you can do...
PDF
Livro ciudades en riesgo la red
Venus - #UseYourAnd
Value of the mediawiki platform for providing content to the chemistry community
La vuelta al Mundo en 8 Minutos (por: carlitosrangel)
Pengenalan kepada Pentaho
Zaragoza turismo-59
Final project report`````
World com
GBBrand 2012 - TOP 100 British Brands
美雅找醬油篇
ممارسات القيادة الاستراتيجية وعلاقتها بخدمة الزبون
Smart SMBs: fine-tuning the engines of growth
Ευρωπαϊκή Ένωση, Αντωνία και Ανιέζα
Hard Times: College Majors, Unemployment and Earnings: Not All College Degree...
あっぱれじゃ
Legal issues in student background checks april 11 2011
Open PHACTS: The Data Today
Poliza sep 2014
Educators as Partners in Digital Engagement: What you can do...
Livro ciudades en riesgo la red
Anúncio

Semelhante a Reactive architecture e microservices microservices, ap is e event driven (1) (20)

PDF
Tdc 2020 gerenciamento de incidente neste novo mundo
PDF
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
PPTX
Microsoft Azure Overview
 
PPS
Gerenciamento de serviços de TI – Implementação ITIL bem sucedida
PPS
I Forum GSTI - CSC Brasil
PPTX
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
PPT
Event Driven Architecture & Complex Event Processing
PPTX
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
PDF
SRE - Esperança não é uma estratégia
PDF
Keynote AWS RoadShow Rio de Janeiro 2013
PPTX
Microservices - Canal .NET Dev Weekend
PPTX
Microservices
PPTX
Microservices - ALM Roadshow 2015
PPTX
Apresentando CEP - TDC2011 / Trilha SOA
PDF
Microservices Architecture Workshop
PPTX
Microserviços na vida real
PPTX
Microserviços - Universidade Metodista - EETI 2016
PDF
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
PPTX
Microservices & Service Mesh Pattern presentation
PPTX
Sistemas Distribuídos Utilizando Microserviços e AWS
Tdc 2020 gerenciamento de incidente neste novo mundo
[DTC21] Thiago Lima - Do Zero ao 100 no Mundo de Microservices
Microsoft Azure Overview
 
Gerenciamento de serviços de TI – Implementação ITIL bem sucedida
I Forum GSTI - CSC Brasil
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
Event Driven Architecture & Complex Event Processing
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
SRE - Esperança não é uma estratégia
Keynote AWS RoadShow Rio de Janeiro 2013
Microservices - Canal .NET Dev Weekend
Microservices
Microservices - ALM Roadshow 2015
Apresentando CEP - TDC2011 / Trilha SOA
Microservices Architecture Workshop
Microserviços na vida real
Microserviços - Universidade Metodista - EETI 2016
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
Microservices & Service Mesh Pattern presentation
Sistemas Distribuídos Utilizando Microserviços e AWS

Último (19)

PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PPTX
Aula 18 - Manipulacao De Arquivos python
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PDF
Apple Pippin Uma breve introdução. - David Glotz
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Processos na gestão de transportes, TM100 Col18
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Aula04-Academia Heri- Tecnologia Geral 2025
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Aula 18 - Manipulacao De Arquivos python
COBITxITIL-Entenda as diferença em uso governança TI
Custos e liquidação no SAP Transportation Management, TM130 Col18
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Apple Pippin Uma breve introdução. - David Glotz
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss

Reactive architecture e microservices microservices, ap is e event driven (1)