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

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

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 5 жыл бұрын
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.
@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
@AkhilSharmaTech
@AkhilSharmaTech 4 жыл бұрын
probably the most mature talk on this topic
@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
@ehguacho2008
@ehguacho2008 5 жыл бұрын
man, that was such an amazing talk! thnx a lot for sheding some light (:
@manantank
@manantank 2 жыл бұрын
What an Amazing talk. I learned a ton of stuff - thank you very much !!!
@samanthaferguson6018
@samanthaferguson6018 4 жыл бұрын
same here i also came after watching oAuth in plain English.Keep it up bro
@ShramikTangadkar
@ShramikTangadkar 5 жыл бұрын
Explained nicely which API design patterns should we use.
@yjhjerry
@yjhjerry 2 жыл бұрын
Very informative and explanatory, thank you!
@boyangli9489
@boyangli9489 5 жыл бұрын
Wow this is exactly what I am looking for! It clears my confusion! Thanks!
@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.
@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!
@meisterthea
@meisterthea 6 жыл бұрын
Interesting and useful ways to think about APIs
@cdishiyam9232
@cdishiyam9232 4 жыл бұрын
came from that great OAuth talk ...
@tommytian
@tommytian 6 жыл бұрын
Great presentation! easy to understand. well done.
@prastikgyawali6545
@prastikgyawali6545 4 жыл бұрын
All I can say is GraphQL is the only positive contribution done to humanity by Facebook. LOL ! Great explanation tho.
@shoulderstack5527
@shoulderstack5527 Жыл бұрын
Thanks for the confirmation
@dinuminichandraweera3540
@dinuminichandraweera3540 5 жыл бұрын
Wow. You rock, man. Amazing explanation
@emadknolg3937
@emadknolg3937 5 жыл бұрын
Great presentation Nate, Thanks :)
@anandsakthivel9425
@anandsakthivel9425 4 жыл бұрын
Thank you! It's well organized presentation, I learned a lot.
@hackwar1
@hackwar1 3 жыл бұрын
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!
@iwandepee
@iwandepee 3 жыл бұрын
Great explanations!
@javacoder1986
@javacoder1986 5 жыл бұрын
Great content, thanks for uploading.
@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 4 жыл бұрын
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.
@barsvelioglu2276
@barsvelioglu2276 4 жыл бұрын
Well done. Really nice explanation.
@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.
@humanbeing496
@humanbeing496 5 жыл бұрын
great video quality!
@KhaAadijaKHA
@KhaAadijaKHA 5 жыл бұрын
Great presentation !
@amirhosseinahmadi3706
@amirhosseinahmadi3706 4 жыл бұрын
Great talk! Thank you!
@samanthaferguson6018
@samanthaferguson6018 4 жыл бұрын
Thanks. Great presentation.
@rajeshkishore7171
@rajeshkishore7171 3 жыл бұрын
Excellent
@repme
@repme 6 жыл бұрын
Thanks. Great presentation.
@shivangchaturvedi237
@shivangchaturvedi237 2 жыл бұрын
👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻👏🏻... Bravo!
@bellajbadr
@bellajbadr 5 жыл бұрын
great talk
@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.
@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
@ravikumarprasad9009
@ravikumarprasad9009 5 жыл бұрын
This guy is genius!
@bobbydrake8113
@bobbydrake8113 6 жыл бұрын
That shirt is cool.
@pharmokan
@pharmokan 4 жыл бұрын
smart dude
@jankidepala
@jankidepala 5 жыл бұрын
i dont to see the screen..
@javacppdevelopment3884
@javacppdevelopment3884 5 жыл бұрын
REST is the best.
@arnavkumarambastha7638
@arnavkumarambastha7638 5 жыл бұрын
Nate Barbettini - GOD _/\_
@pharmokan
@pharmokan 4 жыл бұрын
http/3 makes graphql obsolete
OAuth 2.0 and OpenID Connect (in plain English)
1:02:17
OktaDev
Рет қаралды 1,8 МЛН
REST vs. GraphQL: Critical Look
33:06
Nordic APIs
Рет қаралды 61 М.
СКОЛЬКО ПАЛЬЦЕВ ТУТ?
00:16
Masomka
Рет қаралды 3,2 МЛН
The IMPOSSIBLE Puzzle..
00:55
Stokes Twins
Рет қаралды 157 МЛН
When RESTful architecture isn't enough...
21:02
Dreams of Code
Рет қаралды 283 М.
Microservices are Technical Debt
31:59
NeetCodeIO
Рет қаралды 639 М.
Comparing web API types: SOAP, REST, GraphQL and RPC
15:19
AltexSoft
Рет қаралды 96 М.
An Illustrated Guide to OAuth and OpenID Connect
16:36
OktaDev
Рет қаралды 612 М.
Distributed Systems 1.3: RPC (Remote Procedure Call)
19:45
Martin Kleppmann
Рет қаралды 103 М.
GraphQL vs REST: What's The Difference And When To Use Which?
26:57
Turns out REST APIs weren't the answer (and that's OK!)
10:38
Dylan Beattie
Рет қаралды 161 М.
Securing Your APIs with OAuth 2.0 - API Days
31:36
OktaDev
Рет қаралды 71 М.
Event-Driven Architecture (EDA) vs Request/Response (RR)
12:00
Confluent
Рет қаралды 170 М.