Тёмный

How Netflix Scales Its API with GraphQL Federation 

InfoQ
Подписаться 231 тыс.
Просмотров 100 тыс.
50% 1

InfoQ Dev Summit Boston, a two-day conference of actionable advice from senior software developers hosted by InfoQ, will take place on June 24-25, 2024 Boston, Massachusetts.
Deep-dive into 20+ talks from senior software developers over 2 days with parallel breakout sessions. Clarify your immediate dev priorities and get practical advice to make development decisions easier and less risky.
Register now: bit.ly/47tNEWv
----------------------------------------------------------------------------------------------------------------
Video with transcript included: bit.ly/31h6rET
Jennifer Shin and Stephen Spalding discuss Netflix’s API unification process using GraphQL Federation.
This presentation was recorded at QCon Plus 2020: bit.ly/3pfdF6I
#Netflix #API #GraphQL

Опубликовано:

 

28 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 119   
@nicholas1460
@nicholas1460 3 года назад
"We did all this work and still ended up with a Monolith." Cue space music.
@thehaptiK
@thehaptiK 3 года назад
its the theme music to stranger things, dawg
@megalodon4272
@megalodon4272 3 года назад
Yes
@some84884
@some84884 3 года назад
Spoiler alert!
@giaphatha88
@giaphatha88 2 года назад
Lol
@Vietnamkid1993
@Vietnamkid1993 3 года назад
I love the abstract explanation then deep dive. It gives me time to process the information and make meaning of it
@mikej9062
@mikej9062 3 года назад
GraphQL is cool, but he doesn't know what all the user service providers are. For that, he has to go to Galactus.
@jamesm7172
@jamesm7172 3 года назад
Nice reference
@avatar098
@avatar098 3 года назад
He will never know what users birthdays are and he will die alone.. :(
@DerekWoolverton
@DerekWoolverton 3 года назад
It really seems like this strategy of federating depends on having a few near-universal keys for data shared across a constellation of services that the aggregator can use for joining pieces together.
@freethinker3095
@freethinker3095 3 года назад
yep seems this needs solid management of domain models
@Mystic-Voyager
@Mystic-Voyager 3 года назад
13:51 kotlin code reads rather nicely 👌
@andreivilla9009
@andreivilla9009 3 года назад
Falcor's internal support was dropped several years ago. I can deduce they've been trying to migrate to GraphQL for several years.
@ThePishty1
@ThePishty1 3 года назад
I want her to read me bedtime stories, sick of Karl Pilkington
@hrtummala
@hrtummala 3 года назад
Netflix have best minds at dispose but I am curious about how do we bake in observability into federation as all we have is single post endpoint with different queries.
@morten-nielsen
@morten-nielsen 3 года назад
How was the graph animations made? I'm looking for something to visualise graphs.
@louisaldorio7251
@louisaldorio7251 3 года назад
U can use a tools called istio, to visualize yout services
@improcrastinating8063
@improcrastinating8063 3 года назад
So you had an API that got too messy, so you broke it up and then aggregated requests in 1 endpoint. Then that grew too messy so that was broken up and now the top endpoint is Federation. So what happens when that gets too big?? Some new fancy library called something like constellation?
@andrewrobie620
@andrewrobie620 3 года назад
And then someone will come along and say, "Hey you've got this layer oriented architecture. You should rework that so it's component oriented." And then someone else will come along and say, "Hey, we really need something to keep track of message routing so every service doesn't have to know about every other service."
@harrylee27
@harrylee27 2 года назад
Netflix is really bold, innovative and united, hard to imagine this would be possible in any other companies at this level.
@santosharakere
@santosharakere 2 года назад
Excellent. Thanks.
@milkyway9225
@milkyway9225 3 года назад
wait, so FalcorJS exist or am I hallucinating?
@blumki
@blumki 2 года назад
How the mutations work in federation model?
@DamjanDimitrioski
@DamjanDimitrioski 3 года назад
How do you handle package (subscription types) using GraphQL, in the resolvers or? And are the resolvers communicating directly with the database or you have some service in front of it?
@SteamedBunX
@SteamedBunX 3 года назад
Resolvers are just API logics, you can use resolver to talk to the database. And there is subscription type in graphql
@gritcrit4385
@gritcrit4385 2 года назад
@@SteamedBunX apollo federation doesn't support graphql subscriptions
@SteamedBunX
@SteamedBunX 2 года назад
@@gritcrit4385 D: it doesnt?
@mayurkulkarni1990
@mayurkulkarni1990 3 года назад
I can listen to her all day 😍. Totally my type. Chemex and wine bottles, what more could one ask for
@swehub3666
@swehub3666 3 года назад
Great video!
@WAgung
@WAgung 3 года назад
amazing
@gautamkrishnar
@gautamkrishnar 3 года назад
this is just lit
@provian
@provian 3 года назад
best voice ever
@vitorvidal5350
@vitorvidal5350 3 года назад
[WARNING] Very very loud meme at around 9:00 mins
@labenm24
@labenm24 Год назад
vim pelo Thales😄
@adfasdfasdf643
@adfasdfasdf643 Год назад
The sound effects are very annoying. Besides that nice talk
@thepetesmith
@thepetesmith Год назад
Would you trust your api federation to a haircut that bad?
@maxbashyrov5785
@maxbashyrov5785 7 месяцев назад
These bottles of red were distracting me all the time.
@edenassos
@edenassos 3 года назад
Stephen looks like a James Bond villain.
@TouiKinMinao
@TouiKinMinao 3 года назад
Hard to think that Jennifer is senpai in this realm with that voice .......
@IIIxwaveIII
@IIIxwaveIII 3 года назад
is it possible I am in love with Jennifer Shin without ever meeting her & seeing her for the first time on this vid ? :)
@kalidsherefuddin
@kalidsherefuddin 3 года назад
Please help me
@Quarknjaguar
@Quarknjaguar 3 года назад
she's cute
@khalidhamid7448
@khalidhamid7448 3 года назад
That girl glass is way too big
@lorezyra
@lorezyra 3 года назад
The sound effects in this video are not just horrible, but absurd!! If it wasn't for the very cute Jennifer, I'd down-vote this video...
@gofudgeyourselves9024
@gofudgeyourselves9024 3 года назад
The BGM is from the movie called Only God Forgives. Thank me later. Also i didnt shazamed it.
@dealloc
@dealloc 3 года назад
It's the theme from Stranger Things. Although they sound similar.
@acer220202
@acer220202 3 года назад
@@dealloc 0:01 through 0:07? Doesnt sound like it.
@dealloc
@dealloc 3 года назад
@@acer220202 No, the intro of the presentation.
@gossipopithecus
@gossipopithecus 3 года назад
I am not clear, there are only 4000 films on Netflix. Why you need to create so complicated federation. I know russian websites, there are hundreds of thousands of films, and everything is much simplier.
@shubitoxX
@shubitoxX 3 года назад
please open source the graphql gateway too :)
@RWMutex
@RWMutex 3 года назад
really nice editing but is the laugh track really necessary?
@generic2928
@generic2928 3 года назад
Generating cringe was one of the goals.
@MikeMike-ms1ns
@MikeMike-ms1ns 3 года назад
It was super necessary - Gamebred
@anilkurmi5966
@anilkurmi5966 3 года назад
Me still learning migration from Soap to Rest and then GraphQL ruin my rest
@koenigluki
@koenigluki 3 года назад
@@internet4543 a LOT of businesses still use SOAP...
@kevinellis8115
@kevinellis8115 2 года назад
I have to say, this was an incredible way to explain the value gained by beginning with almost a "demo" of what created the problems. The visualizations also helped immensely! Thank you!
@phyzix_phyzix
@phyzix_phyzix 3 года назад
So basically they built microservices on top of their microservices
@phyzix_phyzix
@phyzix_phyzix 3 года назад
Soon they'll have to create microservices for these new microservices. Time to take a step back and realize that your original requirements have changed. Original microservices need to be updated to meet new requirements. No need to build all these layers.
@deezysec9199
@deezysec9199 3 года назад
Imagine being an Edge Engineer at Netflix just to be reduced to your looks or voice, rather than having comments about the architectural ideas. I swear some of you ...
@MaikDiepenbroek
@MaikDiepenbroek 3 года назад
Great talk, hands on and in depth. Good explanation as well! Thanks
@TheMsnitish
@TheMsnitish 3 года назад
ASMR feels
@Lucas_Simoni
@Lucas_Simoni 2 года назад
Oh yes, I wish I had them explaining me everything everyday. 🤣
@Bandude231
@Bandude231 3 года назад
This was a fantastic video, new to the channel.
@4saken64
@4saken64 3 года назад
Love her voice
@vibhorsharma6172
@vibhorsharma6172 2 года назад
And the ASMR mic as well.
@maxm3515
@maxm3515 3 года назад
Very interesting! Much innovation! How did you all create the Graph visualizations?
@vibhorsharma6172
@vibhorsharma6172 2 года назад
Thanks to InfoQ. How often is it you get to study distributed systems in ASMR.
@yehiayasseraboel-nga7594
@yehiayasseraboel-nga7594 3 года назад
This is amazing! Love the graph visualizations.
@latestcoder
@latestcoder 3 года назад
their slack support channel as well, their slack support channel as well
@ozzydemir2325
@ozzydemir2325 2 года назад
Wonderful, wonderful explanation. Best from the field explanation I have encountered so far! Great job explaining this complex topic guys from Netflix!
@MMABeijing
@MMABeijing 3 года назад
what s her mic?
@israelayokunnu7974
@israelayokunnu7974 3 года назад
oh my. Netflix Genesis
@ryanquinn1257
@ryanquinn1257 4 месяца назад
FALCOR mentioned! Cool look at what path I’m starting to go down
@ThePandaGuitar
@ThePandaGuitar 3 года назад
Eyeglasses scale
@robertdepesci3418
@robertdepesci3418 Год назад
hi jennifer. what is a woman?
@funcmethod
@funcmethod 3 года назад
Great presentation, did a great job of explaining a complex topic. Graph visualisations were neat.
@AnilBhaskarBhaskey
@AnilBhaskarBhaskey 2 года назад
wow, this is great explanation which starts up from a very simple problem and builds up into interesting use case. examples, animations, background music, jennifer.. beautiful!
@gritcrit4385
@gritcrit4385 2 года назад
Apollo federation doesn't support subscriptions. It's really grinding my gears.
@QueenOfMissiles
@QueenOfMissiles 2 года назад
What tool is being used to render the graphs in 3D?
@gayansenaratne8001
@gayansenaratne8001 2 года назад
Great talk. The best video I found on the usage of GraphQL Federation. Thanks a lot.
@avimehenwal
@avimehenwal 2 года назад
amazing amazing amazing talk. Thankyou so much for sharing :D
@ivaniliev93
@ivaniliev93 3 года назад
I wonder how many different queries they have.
@ismaelgrahms
@ismaelgrahms 2 года назад
Amazing
@ragavkb2597
@ragavkb2597 3 года назад
Thanks for the talk! I'm curious how would a federated mutation look like ? As each domain service may fail a mutation individually, I assume the front end has to be designed to keep partial success in mind ?
@blumki
@blumki 2 года назад
That's true. The response is always 200 and clients has to handle the responses gracefully
@aalto95
@aalto95 3 года назад
8:36 jesus fucking christ
@wafiqb7205
@wafiqb7205 3 года назад
So the family is coming for lunch, you have a big family. You decided to go all out and bake a few different cakes. It's quite difficult to feed everyone and distribute the cakes whilst they are whole so we slice them up and give everyone a spoon, now everybody is happily tasting the different cakes distributed across the table with multiple spoons until someone comes along and says, let's get rid of all the spoons and use a single bigger spoon so we only have one feed and hopefully if all goes well this new spoon will be able to feed us all at once. :@ The End Are the speakers humanoids? they kinda come across as robotic lol... GraphQL no doubt has its benefits in terms of selectively plucking properties, aggregation of multiple graphs when federated, typed values, etc, but my gosh schemas can become huge when made up of multiple fragments and maintenance seems to increase from my experience, also Rest to graphQL conversion is enough to make you want to smash your workstation :|
@barbenaar
@barbenaar 3 года назад
nice talk, thanks!
@RomanScherbatyuk
@RomanScherbatyuk 3 года назад
where's primagen doing vscode ;)
@ravi2519
@ravi2519 3 года назад
I know a lot how Netflix is doing it, but not so much about Prime Video or rest! All thanks to how much Netflix open source or take pain to make us understand what they are doing.
@thunderbolt997
@thunderbolt997 3 года назад
laugh tracks are dead in 2021 in todays world the user decides if something is funny or not and dont like to be told by a laugh track "this is funny, now laugh" but i guess a compromise was made between making the video more enjoyable letting the presenter have a personality with some jokes/funny story but at the same time sigifying with the laugh track that this was a lighthearted joke/event and not incompetency on the presenters part.
@andrewrobie620
@andrewrobie620 3 года назад
If watching far too many talks by Joe Armstrong has taught me anything, it's that a good presenter should be able to convey that something was a lighthearted joke by themselves.
@maladjustedtv
@maladjustedtv 3 года назад
MY GOD she's gorgeous!!
@louisaldorio7251
@louisaldorio7251 3 года назад
I have been implementing graphql for almost 2 years in my organization, we also implement graphql federation, so we find out that graphql federation cause a query complexity (n + 1), so if we query an array , which every object in the array , does federated /extend to other schema in other service, this will cause too many query, especially if the logic on the core federated schema talk to database, this is really time consumjng and resource consuming when a query is executed, thr we try implementing dataloaders with federation, but the samething happen (n + 1), do you guys have solution for this?, we currently use golang with graphql , we also implement apollo gateway as the gateway
@AxiRyu
@AxiRyu 3 года назад
So, aren't we going to talk about how hot she is? I had no interest in graphQL, until I saw her talking about it :D
@multiservicosreptecno3786
@multiservicosreptecno3786 3 года назад
🙄👏🏼👏🏼👏🏼👏🏼👏🏼👏🏼👏🏼👏🏼👏🏼
@KevinMcAfee
@KevinMcAfee 3 года назад
My new bible
@rogerhill1030
@rogerhill1030 3 года назад
religious theme introduction is dumb. Just get to the story
@allanwind295
@allanwind295 3 года назад
The intro was off-putting. Unless your focus is how your problem applies to others. It's just advertisement.
@allanwind295
@allanwind295 3 года назад
​@@iAmCracky I tried to articulate why I thought the intro was off-putting in the initially message (and didn't succeed so I edited out), but I think it's the combination of "old-school PBS computers are the future" whilst having a low S/N. The first thing she says is "we have 100s of mid-tier services". This just summarized the first 2 minutes of the video. Who is the audience? What was the audience expected to learn from this video (other than it was made by Netflix)? Is that information applicable to anyone else? So let's jump to the summary...uh... no, that's a panel discussion. Look at the comments and what did people take away from it?
@dealloc
@dealloc 3 года назад
@@allanwind295 No idea what you're on about. You're reading too much into it. If you didn't like the intro, fine, skip it and move on.
@allanwind295
@allanwind295 3 года назад
@@dealloc Thanks for the advise. I unsubscribed from InfoQ.
@kingsleyoji649
@kingsleyoji649 3 года назад
@@allanwind295 is there another youtube resource that you like? I'm a learner so this is blowing my mind lol. InfoQ seems like a whole new world to me.
@allanwind295
@allanwind295 3 года назад
​@@kingsleyoji649 I just wrote you a long reply. Hopefully it didn't go to /dev/null. It depends on what you are interested. I prefer articles to video. lobste.rs or hacker news. Lots of blogs. Research articles. Def Conf always blows my mind. Strange Loop is great. USENIX is a firehose of content. I always learn something from Martin Thompson and Brendan Gregg.
@alexaltoespiridion1088
@alexaltoespiridion1088 3 года назад
I love you
Далее
The Evolution of Reddit.com's Architecture
33:11
Просмотров 91 тыс.
The Truth About GraphQL
12:06
Просмотров 100 тыс.
100 Identical Twins Fight For $250,000
35:40
Просмотров 32 млн
Six Years Later, I’m Over GraphQL
34:40
Просмотров 70 тыс.
GraphQL: The Documentary
27:58
Просмотров 574 тыс.
Good APIs Vs Bad APIs: 7 Tips for API Design
5:48
Просмотров 237 тыс.
Managing Data in Microservices
52:07
Просмотров 142 тыс.
100 Identical Twins Fight For $250,000
35:40
Просмотров 32 млн