Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
BFF com GraphQL e NodeJS
Search
Tais Duarte
August 04, 2024
Technology
0
20
BFF com GraphQL e NodeJS
Tais Duarte
August 04, 2024
Tweet
Share
More Decks by Tais Duarte
See All by Tais Duarte
Monitoramento e Observabilidade no Frontend
taisreisdev67
0
69
Como tornar minha aplicação observável?
taisreisdev67
0
24
Construindo um BFF com PHP
taisreisdev67
0
25
GraphQL: A QUERY LANGUAGE FOR YOUR API
taisreisdev67
0
19
BOOTSTAP 4 TUDO O QUE VOCÊ PRECISA SABER
taisreisdev67
0
13
DESMISTIFICANDO O JAVASCRIPT
taisreisdev67
0
27
Other Decks in Technology
See All in Technology
強化されたAmazon Location Serviceによる新機能と開発者体験
dayjournal
2
150
初めてのAzure FunctionsをClaude Codeで作ってみた / My first Azure Functions using Claude Code
hideakiaoyagi
1
180
本部長の代わりに提案書レビュー! KDDI営業が毎日使うAIエージェント「A-BOSS」開発秘話
minorun365
PRO
14
2.3k
JSX - 歴史を振り返り、⾯⽩がって、エモくなろう
pal4de
3
1.1k
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
170
【TiDB GAME DAY 2025】Shadowverse: Worlds Beyond にみる TiDB 活用術
cygames
0
870
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
3
290
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
5
570
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
210
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
140
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
160
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
140
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Unsuck your backbone
ammeep
671
58k
Designing Experiences People Love
moore
142
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Code Review Best Practice
trishagee
68
18k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
200
4 Signs Your Business is Dying
shpigford
184
22k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Embracing the Ebb and Flow
colly
86
4.7k
Transcript
BFF com GraphQL e NodeJS FRONTIN Elas Programam 2023
+10 anos como Desenvolvedora Graduada em Jogos Digitais Sênior Software
Engineer na Creditas Apoiadora do PHPWomenBR Esposa do Valter e Mãe do Joaquim sou a Tais Prazer, @taisreis67
BFF? O que é De onde veio, onde vive e
qual problema veio resolver? 🤔
Best Friends Forever
Best Friends Forever
O Backend For Frontend, ou BFF, é um padrão de
arquitetura que tem como objetivo facilitar a comunicação entre aplicações clientes e o backend. Ok, mas para o quê e como eu uso isso?
Monolito API Web
Temos uma comunicação direta entre uma API e um cliente.
Tudo bem por enquanto
Micro Serviços User API Web Books API Auth API
Temos uma comunicação direta, mas agora entre um cliente e
3 micro serviços. Agora o cliente precisar fazer várias requisições para compor uma página
E se tivermos mais clientes? User API Web Books API
Auth API Mobile Parceiro
É aqui que o BFF nos ajuda 😉 Temos 3
clientes se comunicando com os micro serviços e os clientes Parceiro e Mobile precisa de dados e comportamentos diferentes dos outros.
User API Web Books API Auth API Mobile Parceiro Backend
For Frontend BFF BFF BFF
Agora os clientes terão autonomia para poder utilizar os micro
serviços de acordo com o que eles precisam independente de outros clientes. Cada cliente agora tem seu backend personalizado 😉
Porém como desvantagens temos mais aplicações para dar manutenção, monitorar,
fazer o deploy… Devemos analisar se temos como manter 🤔
um BFF? Como criar Vamos ver um exemplo de BFF
com GraphQL e NodeJS
Quais tecnologias vamos usar?
É uma Query Language para APIs que permite com que
o cliente peça exatamente os dados que ele precisa. O que é GraphQL? fonte: graphql.org
É um servidor GraphQL que nos dá uma série de
ferramentas que nos ajuda a trabalhar com o GraphQL. O que é Apollo Server? fonte: apollographql.com
Nosso Service Web Nosso exemplo de caso de uso Nosso
BFF
Filme Produtora Como fica a nossa estrutura? Nome Site Id
Titulo
Bora ver o código!
Referências e para saber mais https://philcalcado.com/2015/09/18/the_back_end_for_front_end_pattern_bff.html https://philcalcado.com/2019/07/12/some_thoughts_graphql_bff.html https://medium.com/jeitosanar/backend-for-frontend-uma-estratégia-sob- demanda-para-a-entrega-de-microsserviços-2f12d4cb9e3f https://graphql.org/learn/
https://www.apollographql.com/docs/apollo-server/ https://developers.themoviedb.org/3/getting-started/introduction
Dúvidas? @taisreis67
Obrigada @taisreis67 Qualquer dúvida podem me procurar!