gRPC over HTTP/3 is finally a thing | Backend Engineering Show
ฝัง
- เผยแพร่เมื่อ 6 ก.ค. 2024
- The gRPC team just submitted a proposal to support HTTP/3. This is big news and we have been waiting for a long time for this. In this show, I’ll discuss why would you want gRPC, why gRPC picked HTTP/2, what is actually wrong with HTTP/2 and what HTTP/3 solves. And Finally, I’ll discuss what is wrong with HTTP/3 and pitfalls that you as gRPC user might run into. Let us discuss!
0:00 Intro
1:30 why gRPC
5:20 gRPC & HTTP/2
7:30 gRPC & HTTP/3
8:50 What is wrong with HTTP/2
29:30 What is good about HTTP/3
37:00 What’s wrong with HTTP/3
Resources
github.com/grpc/proposal/pull...
Become a Member on TH-cam
/ @hnasr
🔥 Members Only Content
• Members-only videos
Support my work on PayPal
bit.ly/33ENps4
🧑🏫 Courses I Teach
husseinnasser.com/courses
🏭 Backend Engineering Videos in Order
backend.husseinnasser.com
💾 Database Engineering Videos
• Database Engineering
🎙️Listen to the Backend Engineering Podcast
husseinnasser.com/podcast
Gears and tools used on the Channel (affiliates)
🖼️ Slides and Thumbnail Design
Canva
partner.canva.com/c/2766475/6...
🎙️ Mic Gear
Shure SM7B Cardioid Dynamic Microphone
amzn.to/3o1NiBi
Cloudlifter
amzn.to/2RAeyLo
XLR cables
amzn.to/3tvMJRu
Focusrite Audio Interface
amzn.to/3f2vjGY
📷 Camera Gear
Canon M50 Mark II
amzn.to/3o2ed0c
Micro HDMI to HDMI
amzn.to/3uwCxK3
Video capture card
amzn.to/3f34pyD
AC Wall for constant power
amzn.to/3eueoxP
Stay Awesome,
Hussein - วิทยาศาสตร์และเทคโนโลยี
GRPC is not only used in cloud and high bandwidth scenarios. It is also used on applications over mobile networks, one of the situations where it makes the most sense. Reducing latency and bandwidth usage there is crucial for user experience, data usage and battery consumption
Thank you for your content! And take all the tangents you want, this is your unique show. There are very subtle, crisp and precise knowledge when you take tangents like the one where you talked about databases or hard disks. The fact that you are sub-consciously aware that you had to get back on the main track keeps the side lines very insightful, precise & relevant 😃
Hussain you're the best at explaining in depth such concepts. Thank you. Reading the RFCs is always also the best kind of help, but you make excellent briefs.
This is GOLD!
It's crazy how this video has only 17k views when you have 280k subs, that's around 6% of your subscribers who watched it.
TH-cam need to push such content to s/w folks even more who waste time watching trendy/useless content!
By the way, I am taking your "Fundamentals of Backend Communications and Protocols" to support your passion and your knowledge. Know more and do better!
I found it very enlightening to hear what the different http version actually do.
Never thought about anything he mentioned
I like to think deeply about systems working like you do. Kudos for good video.
Thanks for ur high quality contents mate
Love the Arabic saying. When you dropped it I was like woah I had no idea you spoke Arabic. Keep up the great work man love your content ✌️🙏
Spoiler alert?
you thought Hussein is a nordic name? lol
man you're awesome thanks for all :) au revoir =D
I reached the end, thanks for the info
I reached the end, great content
I was dying on the floor laughing when I heard "arigato gozaimasu" out of no where 😂😂
salute. very good explanation. thumbs up brother.
Great video!
Hey i reached the end ;)
I find the HTTP/3 thing interesting, but as a web developer I would be happy if gRPC with HTTP/2 would be natively supported in the browser. I know there are proxies, but somehow it doesn't feel right.
Hussain i like these stuff
arigato gozaimasu!
I reached the end. like your content bro
In HTTP2 the replys do jotnhave to come in the same order as the requests were sent. That is pipeling in http1.1. Head-of-line vlocking in http2 is only caused by lost segments/packets which block every "channel/stream". In addition, http2 suffers from other problems of TCP which QUIC resolves.
Made it til the end 👌🏼😄
I like this stuff 🙂
Hello, teacher, I am interested in distributed storage. Do you have any materials in this direction to learn and practice projects to become a distributed storage developer. Thanks!
Hi, I have reached the end :)
-TY
Hey Hussein, keep in mind that H2's head of line blocking is not limited to TCP losses. It also happens when buffers fill due to the window-in-window nature of the protocol. There's stream-level flow-control but too small window destroy bandwidth (limiting it to the window/rtt) and increasing stream windows will freeze everyone as soon as the underneath TCP window is smaller or buffers get congested. *This* is the real problem H2 suffers from because it relies on an in-order protocol (TCP) that cannot lose extraneous packets that clog the buffers. That's why even in the datacenter where there are very few losses, H2 is rarely used on internal infrastructure. QUIC+H3 were designed to change that, time will tell if they make their way into the DC (I doubt it due to UDP not being welcome there).
Still the very end..hehe, great 👍work buddy and yes, you do talk alot but it's informative so it's your talent and we enjoy listening to you share your wealth of knowledge.
Thank you for your time and dedication 🙏
Just a small correction, the proposer James NetwonKing is not from GRPC team officially. He is a Principle SE from .NET team at Microsoft.
As with .NET 6, the Http3 and quic implementation is coming up, so grpc can benifit it, because of which he proposed that one, so that other language can implement it and grpc will be more good everywhere!
Hi! I work on .NET at Microsoft, but I'm also a maintainer of grpc-dotnet (gRPC implementation for .NET).
A major protocol change like introducing HTTP/3 requires agreement from many gRPC maintainers.
@@newtonki yeah yeah, James I know that you maintain grpc dotnet! 🙌
Hussein, I like this stuff
Hi Mr Hussein, Please note that I set up a basic asyncio gRPC server and client using python streaming from webcam to localhost client everything works fine but my i7 MacBook pro CPU Utilization 99% . and more than 2000 threads. Thanks Mr.
Arigatho Arigatho 🤟
Thanks for mentioning efficiency. Developers should be aware of cpu and memory, and avoid extreme inefficiency, e.g. more than 3x theoretical. I see no reason http3 packet integrity is any worse than tcp in CPU or memory. Encryption adds a lot. My ISP recently redesigned the account settings UI. Now it's 30s to load a form and 10s response on selecting a toggle button. How can anyone think this is acceptable? I'm plagued with JavaScript that runs infinite loops, allocating memory on an inactive tab. I think my ISP gui is a backend design issue.
hussein, i like this video.
Code Generation For the Win !!
Hussein I like this stuff :D
Hi, Hussein. Great video! What do you think about covering NATS message broker in one of your next podcasts? Recently I started to hear about it from time to time, it appears to be faster than kafka, which is very promising.
After your postvI have searched http/3 or QUIC and I'm waiting you for father more thanks Hussain nasser
I like this stuff
Hi,
Hussein Nasser could please elaborate on whether coders/developers will have to make massive changes for gRPC over HTTP/3 support when HTTP/3 is rolled out?
Shuaib
I don’t believe it will be a breaking change to clients. Just like most apps just works when you move from HTTP/1.1 to HTTP/2 the API remains the same.
Take a look at rsocket too.
Yeei!!
watchedtil the end
reached end ... :)
Hi... I reached the end of video... Walekum Assalam
I wonder how this will affect load balancers? Will it balance?
Good question. And yes it will. Layer 7 Load balancers and reverse proxy need to understand how to talk gRPC/h3 on the backend.
why not to like axios , can you please explain briefly ?
Not that I don't like it, I just don't see a reason to use a library when I have standard API that does all what I need. I can open any browser and use fetch without importing anything.
I reached the end
Grpc gaming
تصدق انا متابعك بقالي سنه ومعرفش انك عربي انا تخيلتك مسلم اسيوي من بلد غير عربي ... اعجابي بالقناه دي اتضرب في 5 دلوقتي تحياتي ليك وبالتوفيق دايما
okei here we say it different "التكرار يعلم الحمار " xD
it's strange that you talk about grpc as if it's the only game in town with a client. You don't even mention thrift, which is an obvious competitor to grpc
Gotta admit I don’t know much about thrift thats why I didn’t mention it. Maybe I should look into it. Thanks!
I like this stuff
I reached the end
I reached the end