Nate Barbettini - API Throwdown: RPC vs REST vs GraphQL, Iterate 2018

  Рет қаралды 94,291

OktaDev

OktaDev

Күн бұрын

Пікірлер: 62
@michaelellis627
@michaelellis627 4 жыл бұрын
VERY few people excel at presenting complex topics in a way that is interesting, informative, and easily digestible. After watching this video and the OAuth 2.0 and OpenID Connect video that led me here, it's clear that Nate Barbettini is one of those people. Please keep doing what you're doing!
@stuck90
@stuck90 6 жыл бұрын
I loved your oAuth in plain english talk. Brought me here. Another awesome win. Keep doing these.
@anvaysfromairoli
@anvaysfromairoli 4 жыл бұрын
@@jarnovirta6997 For me as well
@mehransarabchian6795
@mehransarabchian6795 4 жыл бұрын
Same here :-D He is a great speaker and learnt a lot by his talk. Thanks :)
@gauravmalhotra944
@gauravmalhotra944 4 жыл бұрын
I followed the same path and completely agree.
@aerlaut
@aerlaut Жыл бұрын
@@gauravmalhotra944 Same here
@JohnnyNilsson83
@JohnnyNilsson83 4 жыл бұрын
Great talk. And btw, regarding the acronym - you could indeed call it "the 5 C's", but slightly modified into "D V C's". D = The V = Roman letter for 5 C = ... well, the C's
@nelsonthekinger
@nelsonthekinger 4 жыл бұрын
It's very funny because peaple praise GraphQL because of the schema stuff but that we praise NoSQL because is schemaless over the schema in Databases. I can't understand Humans.
@ChaitanyaDevavarapu
@ChaitanyaDevavarapu 5 жыл бұрын
Wow, me too not an exception. First I watched ‘OAuth in plain English’. That interest brought me here. Another wonderful presentation. Kudos.
@AkhilSharmaTech
@AkhilSharmaTech 4 жыл бұрын
probably the most mature talk on this topic
@ehguacho2008
@ehguacho2008 5 жыл бұрын
man, that was such an amazing talk! thnx a lot for sheding some light (:
@eyesight2073
@eyesight2073 4 жыл бұрын
All these days I assumed I was doing REST API. After watching this.... I was actually doing RPC in the name of REST API 😅😅🤣🤣🤣
@nbarbettini
@nbarbettini 4 жыл бұрын
I think we've all done that! :)
@LotusP2
@LotusP2 3 жыл бұрын
SAME haha
@manantank
@manantank 2 жыл бұрын
What an Amazing talk. I learned a ton of stuff - thank you very much !!!
@THEBEST-lh6pq
@THEBEST-lh6pq 3 жыл бұрын
Lol I feel attacked. Had no idea what RPC was, seems like have been using it all the time. An eye opener
@ShramikTangadkar
@ShramikTangadkar 5 жыл бұрын
Explained nicely which API design patterns should we use.
@jaysistar2711
@jaysistar2711 4 жыл бұрын
I would say thay although caching is not as easy, it's better in GraphQL with ApolloEngine and ApolloClient due to the possibility of using id as a unique identifier for a server object, and per field timing and caching.
@nbarbettini
@nbarbettini 4 жыл бұрын
I've had a pretty different experience with ApolloClient caching actually. More bugs due to ApolloClient doing weird caching stuff than anything else.
@jaysistar2711
@jaysistar2711 4 жыл бұрын
@@nbarbettini Their use of the id field and your ability to override its use is not something that they talk much about, but they should because, as you said, it gets really confusing if you don't know what it's doing.
@yjhjerry
@yjhjerry 3 жыл бұрын
Very informative and explanatory, thank you!
@theaxacall
@theaxacall 3 жыл бұрын
hey hi I made an api with express. I can read the images on the same port with api.map... but I can access the links of my api images from a different server, but I cannot view the images.
@parahumanoid
@parahumanoid 3 жыл бұрын
The "function explosion" is not a problem, I believe, with any careful planning. RPC is public by definition, so proper attention should be devoted to segmenting the api into groups. Granted, not all that simple to foresee everything, but we sure can go a long way to avoid the so-called "explosion". Also, why in the hell would to publish an API synonymous to internal structure? Have an abstraction layer for that!
@samanthaferguson6018
@samanthaferguson6018 4 жыл бұрын
same here i also came after watching oAuth in plain English.Keep it up bro
@boyangli9489
@boyangli9489 6 жыл бұрын
Wow this is exactly what I am looking for! It clears my confusion! Thanks!
@meisterthea
@meisterthea 6 жыл бұрын
Interesting and useful ways to think about APIs
@tommytian
@tommytian 6 жыл бұрын
Great presentation! easy to understand. well done.
@anandsakthivel9425
@anandsakthivel9425 5 жыл бұрын
Thank you! It's well organized presentation, I learned a lot.
@BGivo
@BGivo 5 жыл бұрын
Seemed like this was put together from an initial idea to make them seem equal. If you listen closely, the content within shows why GraphQL is actually far superior. The only thing against it, really, is that it's more complicated and not everyone is familiar with it. I don't think this characteristic should hold equal weight when the point of the presentation is to compare technologies.
@nbarbettini
@nbarbettini 5 жыл бұрын
My goal was not to show that they are equal, but they are different tools for different jobs. I think GraphQL absolutely shines for first-party APIs and some third-party ones too (now that it is becoming more mainstream). I wouldn't use it for communication between microservices.
@ngodinhloc3065
@ngodinhloc3065 4 жыл бұрын
@@nbarbettini thanks Nate, for clearing my doubt. I have always believed that there is place for RPC, and REST is not suitable for micrservices communication, especially when it comes to asyn communication or messaging, that is where RPC shines.
@nbarbettini
@nbarbettini 4 жыл бұрын
@@ngodinhloc3065 Indeed, Thrift and gRPC are very common for those scenarios.
@shoulderstack5527
@shoulderstack5527 Жыл бұрын
Thanks for the confirmation
@cdishiyam9232
@cdishiyam9232 4 жыл бұрын
came from that great OAuth talk ...
@dinuminichandraweera3540
@dinuminichandraweera3540 5 жыл бұрын
Wow. You rock, man. Amazing explanation
@hackwar1
@hackwar1 4 жыл бұрын
gRPC 'solves' many of the of the issues you describe with RPC API's. If used with protocol buffers, you get a single endpoint instead of X endpoints because the generated code abstracts this from the developer. The most important asset of any API is the contract and protocol buffers allow you to create backwards compatible contacts, so no need for 'v2' function names. Maybe also don't compare RPC with REST or GraphQL it's like comparing apples with pears. Because SOAP is RPC, gRPC is RPC and Corba as well, but they are very different. So a more fair comparison would have been to compare gRPC with the other two. Other than that, great talk, thank you!
@emadknolg3937
@emadknolg3937 5 жыл бұрын
Great presentation Nate, Thanks :)
@javacoder1986
@javacoder1986 5 жыл бұрын
Great content, thanks for uploading.
@xinyuanliu1959
@xinyuanliu1959 4 жыл бұрын
What does resource mean in the REST part?
@LeeBrandt
@LeeBrandt 4 жыл бұрын
It means some _THING_ that you want to get. For instance: contacts.google.com holds contact resources. IMDB holds movie resources. I hope that helps.
@arunkumarsilvarajan7991
@arunkumarsilvarajan7991 3 жыл бұрын
Every object/noun is a resource
@iwandepee
@iwandepee 3 жыл бұрын
Great explanations!
@amirhosseinahmadi3706
@amirhosseinahmadi3706 4 жыл бұрын
Great talk! Thank you!
@samanthaferguson6018
@samanthaferguson6018 4 жыл бұрын
Thanks. Great presentation.
@barsvelioglu2276
@barsvelioglu2276 4 жыл бұрын
Well done. Really nice explanation.
@repme
@repme 6 жыл бұрын
Thanks. Great presentation.
@KhaAadijaKHA
@KhaAadijaKHA 6 жыл бұрын
Great presentation !
@humanbeing496
@humanbeing496 6 жыл бұрын
great video quality!
@jankidepala
@jankidepala 5 жыл бұрын
i dont to see the screen..
@prastikgyawali6545
@prastikgyawali6545 4 жыл бұрын
All I can say is GraphQL is the only positive contribution done to humanity by Facebook. LOL ! Great explanation tho.
@rajeshkishore7171
@rajeshkishore7171 4 жыл бұрын
Excellent
@bellajbadr
@bellajbadr 5 жыл бұрын
great talk
@shivangchaturvedi237
@shivangchaturvedi237 2 жыл бұрын
👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻... Bravo!
@kaamisama_jabrawala
@kaamisama_jabrawala 6 жыл бұрын
great so none of the APIs i have seen up to this point has been true RESTful APIs. Good to know.
@ravikumarprasad9009
@ravikumarprasad9009 5 жыл бұрын
This guy is genius!
@bobbydrake8113
@bobbydrake8113 6 жыл бұрын
That shirt is cool.
@pharmokan
@pharmokan 4 жыл бұрын
smart dude
@pharmokan
@pharmokan 4 жыл бұрын
http/3 makes graphql obsolete
@arnavkumarambastha7638
@arnavkumarambastha7638 5 жыл бұрын
Nate Barbettini - GOD _/\_
@javacppdevelopment3884
@javacppdevelopment3884 5 жыл бұрын
REST is the best.
REST vs. GraphQL: Critical Look
33:06
Nordic APIs
Рет қаралды 61 М.
OAuth 2.0 and OpenID Connect (in plain English)
1:02:17
OktaDev
Рет қаралды 1,8 МЛН
OCCUPIED #shortssprintbrasil
0:37
Natan por Aí
Рет қаралды 131 МЛН
Почему Катар богатый? #shorts
0:45
Послезавтра
Рет қаралды 2 МЛН
GraphQL vs REST: What's The Difference And When To Use Which?
26:57
Comparing web API types: SOAP, REST, GraphQL and RPC
15:19
AltexSoft
Рет қаралды 97 М.
Securing Your APIs with OAuth 2.0 - API Days
31:36
OktaDev
Рет қаралды 71 М.
The Story of Why We Migrate to gRPC and How We Go About It - Matthias Grüter, Spotify
29:25
CNCF [Cloud Native Computing Foundation]
Рет қаралды 34 М.
The Only Database Abstraction You Need | Prime Reacts
21:42
ThePrimeTime
Рет қаралды 231 М.
Intro to the Zig Programming Language • Andrew Kelley • GOTO 2022
50:14