SlideShare uma empresa Scribd logo
Como BFF (Backend
for Frontend) pode ser
seu melhor amigo para
lidar com diferentes
frontends
Cristiano
Arquiteto Software
@crisaltmann
2
Deivid
Desenvolvedor Web
@deividhf
3
Micro serviços
Vamos falar um pouco sobre essa
buzzword...
1.
Micro serviços
5
6
Deploy independente
Baixo acoplamento
Escalabilidade
Horizontal
Escolha tecnologias
Tempo de negócio
Times independentes
Evolução
tecnológica
Resiliente
SERVIÇOS
Unidades interoperáveis que podem
facilmente ser reutilizados e
compartilhados entre aplicações e
empresas
7
Definindo serviços
com DDD
▪ Orientado ao domínio
▪ Contextos delimitados
8
Conta
Corrente
Pessoa
9
Dificuldades
Algumas dificuldades na adoção desta
arquitetura...
2.
Design
▪ Dificuldade de manter
a coesão do domínio
do serviço
▪ Necessidades UI
11
Rede
▪ Comunicação sujeita a
falhas
▪ Chatty
12
Dados
▪ Contratos dos
serviços não levam
em consideração o
Front End
13
Multi UI
▪ Infinidade de Front
ends consumindo os
serviços
14
E o BFF….
3.
BFF
Um componente responsável por
conectar as necessidades específicas de
Front end com os serviços.
16
17
Características
Agregação
Agregar dados de
diferentes servicos.
Adaptação
Adaptar o contrato do
serviço à necessidade do
front end.
Sem regras de negócios
As regras de negócio
devem estar nos serviços.
18
Quantos
BFFs?
▪ Adequar à distribuição
dos times
▪ BFFs por experiência
19
Vantagens
Algumas vantagens do uso do BFF
4.
Autonomia
do front end
▪ Mock dos dados no
BFF
▪ Não depender do
back end para testar
integração
21
Domínios
▪ Coesos
▪ Não precisam se
adaptar às
necessidades de front
ends
22
Chamadas
▪ Latência
▪ Rede
23
Teste A/B
24
Controle
versão
▪ Migração versões de
serviços
25
Diferentes
protocolos
▪ Permite que a
comunicação com a
UI seja desacoplada
do backend
26
Desvantagens
Alguns problemas que a adoção do
pattern nos traz
5.
Mais um
componente...
28
Ponto único
de falha
29
Conclusão
Aprendizados sobre o uso do pattern
6.
Mantivemos
sistemas
coesos
▪ Graças ao BFF
31
Tecnologias
▪ Devem ser simples
▪ Sem verbosidade
32
Habilidades
▪ Complexidades do
back end levados ao
front
33
Obrigado!
34

Mais conteúdo relacionado

Mais procurados

VMware: The Fastest Path to Hybrid Cloud
VMware: The Fastest Path to Hybrid CloudVMware: The Fastest Path to Hybrid Cloud
VMware: The Fastest Path to Hybrid Cloud
Amazon Web Services
 
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
Masaya Tahara
 
Oracle Database (CDB) on Docker を動かしてみる
Oracle Database (CDB) on Docker を動かしてみるOracle Database (CDB) on Docker を動かしてみる
Oracle Database (CDB) on Docker を動かしてみる
オラクルエンジニア通信
 
Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)
Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)
Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)
Genki WATANABE
 
Hacking Exposed Live: Mobile Targeted Threats
Hacking Exposed Live: Mobile Targeted ThreatsHacking Exposed Live: Mobile Targeted Threats
Hacking Exposed Live: Mobile Targeted Threats
CrowdStrike
 
CLOUD NATIVE SECURITY
CLOUD NATIVE SECURITYCLOUD NATIVE SECURITY
CLOUD NATIVE SECURITY
Maganathin Veeraragaloo
 
Oracle WebLogic Server製品紹介資料(2020年/3月版)
Oracle WebLogic Server製品紹介資料(2020年/3月版)Oracle WebLogic Server製品紹介資料(2020年/3月版)
Oracle WebLogic Server製品紹介資料(2020年/3月版)
オラクルエンジニア通信
 
Azure App Modernization
Azure App ModernizationAzure App Modernization
Azure App Modernization
Phi Huynh
 
MPNコンピテンシーガイドライン
MPNコンピテンシーガイドラインMPNコンピテンシーガイドライン
MPNコンピテンシーガイドライン
Hiroyasu Sato
 
Azure DevOps CICD Azure SQL / Data Factory
Azure DevOps CICD Azure SQL / Data FactoryAzure DevOps CICD Azure SQL / Data Factory
Azure DevOps CICD Azure SQL / Data Factory
Ryoma Nagata
 
Serverless AWS構成でセキュアなSPAを目指す
Serverless AWS構成でセキュアなSPAを目指すServerless AWS構成でセキュアなSPAを目指す
Serverless AWS構成でセキュアなSPAを目指す
Masayuki Kato
 
AWS Site-to-Site VPN with IKEv2 from CGW under NAT and served with PrivateLink.
AWS Site-to-Site VPN with IKEv2 from CGW under NAT and served with PrivateLink.AWS Site-to-Site VPN with IKEv2 from CGW under NAT and served with PrivateLink.
AWS Site-to-Site VPN with IKEv2 from CGW under NAT and served with PrivateLink.
Namba Kazuo
 
AWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDKAWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDK
Amazon Web Services Japan
 
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
Amazon Web Services Japan
 
CA ERwin Data Modeler End User Presentation
CA ERwin Data Modeler End User PresentationCA ERwin Data Modeler End User Presentation
CA ERwin Data Modeler End User Presentation
CA RMDM Latam
 
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon PinpointAmazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Web Services Japan
 
On-premise to Microsoft Azure Cloud Migration.
 On-premise to Microsoft Azure Cloud Migration. On-premise to Microsoft Azure Cloud Migration.
On-premise to Microsoft Azure Cloud Migration.
Emtec Inc.
 
20180220 AWS Black Belt Online Seminar - Amazon Container Services
20180220 AWS Black Belt Online Seminar - Amazon Container Services20180220 AWS Black Belt Online Seminar - Amazon Container Services
20180220 AWS Black Belt Online Seminar - Amazon Container Services
Amazon Web Services Japan
 
Sum awsloft tko-iotloft-10-lt4-may-2020
Sum awsloft tko-iotloft-10-lt4-may-2020Sum awsloft tko-iotloft-10-lt4-may-2020
Sum awsloft tko-iotloft-10-lt4-may-2020
Amazon Web Services Japan
 
適切な Azure AD 認証方式の選択の決め手
適切な Azure AD 認証方式の選択の決め手適切な Azure AD 認証方式の選択の決め手
適切な Azure AD 認証方式の選択の決め手
Yusuke Kodama
 

Mais procurados (20)

VMware: The Fastest Path to Hybrid Cloud
VMware: The Fastest Path to Hybrid CloudVMware: The Fastest Path to Hybrid Cloud
VMware: The Fastest Path to Hybrid Cloud
 
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
「DevSecOpsとは?」の一歩先 (CloudNative Days Tokyo 2021)
 
Oracle Database (CDB) on Docker を動かしてみる
Oracle Database (CDB) on Docker を動かしてみるOracle Database (CDB) on Docker を動かしてみる
Oracle Database (CDB) on Docker を動かしてみる
 
Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)
Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)
Office365勉強会 #23 Azure AD のテナント設計(Office365管理者向け)
 
Hacking Exposed Live: Mobile Targeted Threats
Hacking Exposed Live: Mobile Targeted ThreatsHacking Exposed Live: Mobile Targeted Threats
Hacking Exposed Live: Mobile Targeted Threats
 
CLOUD NATIVE SECURITY
CLOUD NATIVE SECURITYCLOUD NATIVE SECURITY
CLOUD NATIVE SECURITY
 
Oracle WebLogic Server製品紹介資料(2020年/3月版)
Oracle WebLogic Server製品紹介資料(2020年/3月版)Oracle WebLogic Server製品紹介資料(2020年/3月版)
Oracle WebLogic Server製品紹介資料(2020年/3月版)
 
Azure App Modernization
Azure App ModernizationAzure App Modernization
Azure App Modernization
 
MPNコンピテンシーガイドライン
MPNコンピテンシーガイドラインMPNコンピテンシーガイドライン
MPNコンピテンシーガイドライン
 
Azure DevOps CICD Azure SQL / Data Factory
Azure DevOps CICD Azure SQL / Data FactoryAzure DevOps CICD Azure SQL / Data Factory
Azure DevOps CICD Azure SQL / Data Factory
 
Serverless AWS構成でセキュアなSPAを目指す
Serverless AWS構成でセキュアなSPAを目指すServerless AWS構成でセキュアなSPAを目指す
Serverless AWS構成でセキュアなSPAを目指す
 
AWS Site-to-Site VPN with IKEv2 from CGW under NAT and served with PrivateLink.
AWS Site-to-Site VPN with IKEv2 from CGW under NAT and served with PrivateLink.AWS Site-to-Site VPN with IKEv2 from CGW under NAT and served with PrivateLink.
AWS Site-to-Site VPN with IKEv2 from CGW under NAT and served with PrivateLink.
 
AWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDKAWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Techシリーズ AWS SDK
 
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
 
CA ERwin Data Modeler End User Presentation
CA ERwin Data Modeler End User PresentationCA ERwin Data Modeler End User Presentation
CA ERwin Data Modeler End User Presentation
 
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon PinpointAmazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
Amazon Pinpoint を中心としたカスタマーエンゲージメントの全体像 / Customer Engagement On Amazon Pinpoint
 
On-premise to Microsoft Azure Cloud Migration.
 On-premise to Microsoft Azure Cloud Migration. On-premise to Microsoft Azure Cloud Migration.
On-premise to Microsoft Azure Cloud Migration.
 
20180220 AWS Black Belt Online Seminar - Amazon Container Services
20180220 AWS Black Belt Online Seminar - Amazon Container Services20180220 AWS Black Belt Online Seminar - Amazon Container Services
20180220 AWS Black Belt Online Seminar - Amazon Container Services
 
Sum awsloft tko-iotloft-10-lt4-may-2020
Sum awsloft tko-iotloft-10-lt4-may-2020Sum awsloft tko-iotloft-10-lt4-may-2020
Sum awsloft tko-iotloft-10-lt4-may-2020
 
適切な Azure AD 認証方式の選択の決め手
適切な Azure AD 認証方式の選択の決め手適切な Azure AD 認証方式の選択の決め手
適切な Azure AD 認証方式の選択の決め手
 

Semelhante a Como BFF (backend for frontend) pode ser seu melhor amigo para lidar com diferentes frontends

Microservices
MicroservicesMicroservices
Microservices
Renato Groff
 
Microservices - ALM Roadshow 2015
Microservices - ALM Roadshow 2015Microservices - ALM Roadshow 2015
Microservices - ALM Roadshow 2015
Renato Groff
 
Microservices - Canal .NET Dev Weekend
Microservices - Canal .NET Dev WeekendMicroservices - Canal .NET Dev Weekend
Microservices - Canal .NET Dev Weekend
Renato Groff
 
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Isaac de Souza
 
Novas oportunidades de negócios com 5G e nuvem
Novas oportunidades de negócios com 5G e nuvemNovas oportunidades de negócios com 5G e nuvem
Novas oportunidades de negócios com 5G e nuvem
Ericsson Latin America
 
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
Amazon Web Services LATAM
 
Vida longa para SOA com microservices
Vida longa para SOA com microservicesVida longa para SOA com microservices
Vida longa para SOA com microservices
Fábio Rosato
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
Ana Carolina Gracioso
 
O desafio de sustentar centenas de servicos
O desafio de sustentar centenas de servicosO desafio de sustentar centenas de servicos
O desafio de sustentar centenas de servicos
Graziella Bonizi
 
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
Victor Cavalcante
 
DDD e Restful SOA
DDD e Restful SOADDD e Restful SOA
DDD e Restful SOA
Daniel Moreira Yokoyama
 
Do mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIsDo mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIs
WSO2
 
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Renato Groff
 
JUGVale 14 - 14/09/2019
JUGVale 14 - 14/09/2019JUGVale 14 - 14/09/2019
JUGVale 14 - 14/09/2019
Jether Rodrigues
 
Micro frontend de um jeito que você nunca viu
Micro frontend de um jeito que você nunca viuMicro frontend de um jeito que você nunca viu
Micro frontend de um jeito que você nunca viu
Wagner Souza
 
A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!
Isaac de Souza
 
Integração de software solucao e estilo
Integração de software   solucao e estiloIntegração de software   solucao e estilo
Integração de software solucao e estilo
GrupoAlves - professor
 
Integração de software 2
Integração de software 2Integração de software 2
Integração de software 2
GrupoAlves - professor
 
Front end architecture
Front end architectureFront end architecture
Front end architecture
Rafael Salerno de Oliveira
 
Habilidades necessárias para integrar aplicativos e dados
Habilidades necessárias para integrar aplicativos e dadosHabilidades necessárias para integrar aplicativos e dados
Habilidades necessárias para integrar aplicativos e dados
Jeison Barros
 

Semelhante a Como BFF (backend for frontend) pode ser seu melhor amigo para lidar com diferentes frontends (20)

Microservices
MicroservicesMicroservices
Microservices
 
Microservices - ALM Roadshow 2015
Microservices - ALM Roadshow 2015Microservices - ALM Roadshow 2015
Microservices - ALM Roadshow 2015
 
Microservices - Canal .NET Dev Weekend
Microservices - Canal .NET Dev WeekendMicroservices - Canal .NET Dev Weekend
Microservices - Canal .NET Dev Weekend
 
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
Esquenta TDC - Como DDD e principalmente Domain Model contribuem na construçã...
 
Novas oportunidades de negócios com 5G e nuvem
Novas oportunidades de negócios com 5G e nuvemNovas oportunidades de negócios com 5G e nuvem
Novas oportunidades de negócios com 5G e nuvem
 
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
Utilizando a nuvem para proteger o mercado financeiro com segurança, agilidad...
 
Vida longa para SOA com microservices
Vida longa para SOA com microservicesVida longa para SOA com microservices
Vida longa para SOA com microservices
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
O desafio de sustentar centenas de servicos
O desafio de sustentar centenas de servicosO desafio de sustentar centenas de servicos
O desafio de sustentar centenas de servicos
 
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
Introdução ao IBM Bluemix - Silvia Matsuora (Solution IT Architect - Ecosyste...
 
DDD e Restful SOA
DDD e Restful SOADDD e Restful SOA
DDD e Restful SOA
 
Do mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIsDo mapa mental para Serviços de Dados até APIs
Do mapa mental para Serviços de Dados até APIs
 
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
Arquitetura de Microserviços - Stone Tech Saturday - Março/2017
 
JUGVale 14 - 14/09/2019
JUGVale 14 - 14/09/2019JUGVale 14 - 14/09/2019
JUGVale 14 - 14/09/2019
 
Micro frontend de um jeito que você nunca viu
Micro frontend de um jeito que você nunca viuMicro frontend de um jeito que você nunca viu
Micro frontend de um jeito que você nunca viu
 
A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!
 
Integração de software solucao e estilo
Integração de software   solucao e estiloIntegração de software   solucao e estilo
Integração de software solucao e estilo
 
Integração de software 2
Integração de software 2Integração de software 2
Integração de software 2
 
Front end architecture
Front end architectureFront end architecture
Front end architecture
 
Habilidades necessárias para integrar aplicativos e dados
Habilidades necessárias para integrar aplicativos e dadosHabilidades necessárias para integrar aplicativos e dados
Habilidades necessárias para integrar aplicativos e dados
 

Como BFF (backend for frontend) pode ser seu melhor amigo para lidar com diferentes frontends

Notas do Editor

  1. Unidades interoperáveis que podem facilmente ser reutilizados e compartilhados entre aplicações e empresas.
  2. Unidades interoperáveis que podem facilmente ser reutilizados e compartilhados entre aplicações e empresas.