Backend for Frontend Pattern in Microservices

  Рет қаралды 19,049

Arpit Bhayani

Arpit Bhayani

Күн бұрын

System Design for SDE-2 and above: arpitbhayani.m...
System Design for Beginners: arpitbhayani.m...
Redis Internals: arpitbhayani.m...
Build Your Own Redis / DNS / BitTorrent / SQLite - with CodeCrafters.
Sign up and get 40% off - app.codecrafte...
In this video, I discussed the challenge of serving multiple types of clients as an application evolves, leading to a complex backend with various hacks. I introduced the architectural pattern called Back End for Front End (BFF) used in microservices to address this issue. BFF acts as a presentation layer between the core backend system and clients, filtering out unnecessary data for each client type. It enhances user experience, minimizes network bandwidth usage, and allows for client-specific tweaks without impacting the backend. This pattern is beneficial for both monolithic and microservices architectures.
Recommended videos and playlists
If you liked this video, you will find the following videos and playlists helpful
System Design: • PostgreSQL connection ...
Designing Microservices: • Advantages of adopting...
Database Engineering: • How nested loop, hash,...
Concurrency In-depth: • How to write efficient...
Research paper dissections: • The Google File System...
Outage Dissections: • Dissecting GitHub Outa...
Hash Table Internals: • Internal Structure of ...
Bittorrent Internals: • Introduction to BitTor...
Things you will find amusing
Knowledge Base: arpitbhayani.m...
Bookshelf: arpitbhayani.m...
Papershelf: arpitbhayani.m...
Other socials
I keep writing and sharing my practical experience and learnings every day, so if you resonate then follow along. I keep it no fluff.
LinkedIn: / arpitbhayani
Twitter: / arpit_bhayani
Weekly Newsletter: arpit.substack...
Thank you for watching and supporting! it means a ton.
I am on a mission to bring out the best engineering stories from around the world and make you all fall in
love with engineering. If you resonate with this then follow along, I always keep it no-fluff.

Пікірлер: 40
@saptarshidey13
@saptarshidey13 2 жыл бұрын
Can't we use graphQL as the bff layer? That will avoid platform specific bff creation.
@AsliEngineering
@AsliEngineering 2 жыл бұрын
Yes we can and it beautifully fits as a BFF and hence it is really a very common way to implement BFF pattern.
@manikantaannavarapu5415
@manikantaannavarapu5415 2 жыл бұрын
I was about to ask the same question
@sahilsamantaray1101
@sahilsamantaray1101 2 жыл бұрын
Throughout the video I was thinking about how we can implement all of this using GraphQL.
@sagarkanojia
@sagarkanojia 2 жыл бұрын
Loved the explanation! Clear and Crisp, To the point! Helped me a lot in understanding this pattern.
@hariharan7729
@hariharan7729 Жыл бұрын
You have explained the concept very well Thanks for that.
@golamrabbi7246
@golamrabbi7246 Жыл бұрын
Excellent explanation, thanks
@shishirchaurasiya7374
@shishirchaurasiya7374 Жыл бұрын
Finally completed 😎😎 Getting the feeling of becoming a Senior Engineer very soon
@AsliEngineering
@AsliEngineering Жыл бұрын
You are making great use of your time 🙌 stay curious... Always.
@nazeerhussain6650
@nazeerhussain6650 Жыл бұрын
Absolutely awesome video and to the point.. Keep it up Arpit!!
@hyrdeshgangwar
@hyrdeshgangwar 2 жыл бұрын
Another gem by Aprit! Great explanation as always!
@TaeChai-uu2ou
@TaeChai-uu2ou Жыл бұрын
Beautifully explained!
@amarzavery1
@amarzavery1 2 жыл бұрын
loved the content! learnt something new ❤️
@shervilgupta92
@shervilgupta92 2 жыл бұрын
Amazing always ! thanks Arpit
@ragus1416
@ragus1416 11 ай бұрын
Hi, the explanation was really good and live. Keep up the good work!
@AkashGupta-pc2cb
@AkashGupta-pc2cb 4 ай бұрын
9:45 How would it be more complicated than creating bffs, maybe 3 cases that call their own functions returning the tailored data in that monolith?? What was complicated here, did not get it.
@047gauravkumartiwari5
@047gauravkumartiwari5 Жыл бұрын
Awesome explanation!
@RishiRajxtrim
@RishiRajxtrim 8 ай бұрын
Excellent explanation and very useful topics.
@swapnilgt
@swapnilgt 8 ай бұрын
Code duplication might not really be a problem if the code in BFF is desgined well. The common parts being used for different types of clients can be extracted in to use cases.
@d4devotion
@d4devotion 2 жыл бұрын
Was worth to watch, great video. And yes there is something which I observed in the video (starting 14:02) which could be a kind of great add-on to your video if you add little bit funny situation. Starting the timing 14:02, you changed your tone to imitate like a "dari sahmi si ladki jisko hamesh question poochne main darr lagta h" and asked this question in that tone which I felt was a great moment in this video :D :D , And then I extended my imagination for this particular scene, I imagined you wearing a long hair wig with lipstick and earings and asking the question exactly like in that tone of Dari sahmi si ladki. :D :D
@AsliEngineering
@AsliEngineering 2 жыл бұрын
Hahahhaha 😭😭😭 I wish I could enact more such situations. Maybe after some time when I build that camera confidence 😀😀
@Techie-u8s
@Techie-u8s 5 ай бұрын
Thank you
@subhstha-j6b
@subhstha-j6b Жыл бұрын
Good explanation can you make example video how you implement it practically.
@singh.aadarsh
@singh.aadarsh Жыл бұрын
Amazing
@sureshkumar-gx6xy
@sureshkumar-gx6xy 4 ай бұрын
Can we use java for BFF? And instead of graphql can we create same type pattern using java?
@AsliEngineering
@AsliEngineering 4 ай бұрын
yes you can. BFF is a pattern not a tech.
@ravividap1227
@ravividap1227 2 жыл бұрын
Thanks for sharing
@ramendu2812
@ramendu2812 Жыл бұрын
Thank you for this video. I have question. Does the request url remain same for different bffs? For example, if idea is to fetch a product detail for prod prod_id, is the rest call still to the v1/api/products/{prod_id} ? If yes, then on what sort of intelligence does the particular bff tweaks or prunes the data? For example, how does mobile bff know to prune out the faq and review information? And in the subsequent call when we fetch for product review, does mobile bff make anothe call to generic BE or it makes use of cached info to extract the queried info? Is there any known tool or tech suggestions to implement bff or it can be a generic service like any other BE service? Also, considering bff can be a probable spof, in your experience how's the duplication setup like for bffs? Thank you 😊
@sauravbhatta5303
@sauravbhatta5303 2 жыл бұрын
Where can I learn practically by implementing these?
@AsliEngineering
@AsliEngineering 2 жыл бұрын
Local machine. Not difficult at all.
@karthikeyanarla4163
@karthikeyanarla4163 7 ай бұрын
Is GraphQL a BFF?
@AsliEngineering
@AsliEngineering 7 ай бұрын
GraphQL is not BFF but it can be used to implement BFF.
@ayushtripathi4514
@ayushtripathi4514 Жыл бұрын
Can't we use graphql here?
@AsliEngineering
@AsliEngineering Жыл бұрын
Yes. We can. That's one on the ways to implement BFF
@ayushtripathi4514
@ayushtripathi4514 Жыл бұрын
@@AsliEngineering got it. Thanks for replying back❤️
@theSeniorSDE
@theSeniorSDE 2 жыл бұрын
Unusal timing today. Is there any change is the upload schedule Arpit?
@AsliEngineering
@AsliEngineering 2 жыл бұрын
experimenting :)
@theSeniorSDE
@theSeniorSDE 2 жыл бұрын
@@AsliEngineering oh ok
@tir0__
@tir0__ 2 жыл бұрын
❤️
API Composition Pattern in Microservices
25:50
Arpit Bhayani
Рет қаралды 8 М.
99.9% IMPOSSIBLE
00:24
STORROR
Рет қаралды 31 МЛН
Chain Game Strong ⛓️
00:21
Anwar Jibawi
Рет қаралды 41 МЛН
The Best Band 😅 #toshleh #viralshort
00:11
Toshleh
Рет қаралды 22 МЛН
Why do databases store data in B+ trees?
29:43
Arpit Bhayani
Рет қаралды 51 М.
Pattern: Backend for Frontend
13:34
Bran van der Meer
Рет қаралды 641
Shared Database Pattern in Microservices
21:21
Arpit Bhayani
Рет қаралды 19 М.
Expert Guide: Backend for Frontend (BFF) in Microservices
6:36
What Is A Backend For A Frontend (BFF) Architecture Pattern
6:41
Going Headless with John
Рет қаралды 59 М.
Designing Workflows in Microservices - Orchestration vs Choreography
17:26
Database per Service Pattern in Microservices
22:49
Arpit Bhayani
Рет қаралды 14 М.
99.9% IMPOSSIBLE
00:24
STORROR
Рет қаралды 31 МЛН