Scaling Push Messaging for Millions of Devices @Netflix

  Переглядів 89,842

InfoQ

InfoQ

5 років тому

Want to attend #Qcon or #DevSummit for free? Here's your chance!
Write an article for #InfoQ and you could win a ticket! Show off your expertise and contribute to the tech community.
Join the contest now: www.infoq.com/articles/infoq-...
💪 Knowledge is power!
#ArticleContest #TechArticles #WinATicket
--------------------------------------------------------------------------------------------------------------------------------------
Download the slides & audio at InfoQ: bit.ly/2SKpUIC
Susheel Aroskar talks about Zuul Push, a scalable push notification service that handles millions of "always-on" persistent connections from all the Netflix apps running. He covers the design of the Zuul Push server and reviews the design details of the back-end message routing infrastructure that lets any Netflix microservice push notifications to any connected client.
This presentation was recorded at QCon New York 2018: bit.ly/2JFHitG
#SoftwareArchitecture #Netflix #ZuulPush #InfoQ #QConNewYork

КОМЕНТАРІ: 61
@prudvim3513
@prudvim3513 2 роки тому
Much better than watching "Design a Notification Service" System design interview videos.
@zkwentz
@zkwentz 2 роки тому
The “ask client to close” due to TCP wait avoidance, is brilliant. Well done!
@bedtimestoriesforkids9755
@bedtimestoriesforkids9755 3 роки тому
I am watching this right before a system design session! :)
@vibhorsharma6172
@vibhorsharma6172 2 роки тому
Same lol
@audi88
@audi88 3 роки тому
This talk is so good. Especially the mention of benchmarking numbers. m4.large ~ 8G,2vCPU = 84000 concurrent connections. ❤️
@mat822
@mat822 3 роки тому
yes it is very good talk but it not clear what is the throughput of the system with 84K clients, I guess it is very low if he was saying the CPU was barely used.
@faizhalde2836
@faizhalde2836 3 роки тому
@@mat822 the system does look io intensive (mostly network calls) so low cpu makes sense i think
@helloworld7313
@helloworld7313 2 роки тому
@@mat822 125 million users, 1 push notification per day, each notification takes 1KB 125000000*1024/86400 < 2MB/s negligible throughput. Of course they kill connections periodically, but still very low throughput system.
@ThanosVassilakis
@ThanosVassilakis 3 роки тому
This a great talk that really warms up after 20 minutesin when the talk goes into operation details.
@Nemosaur
@Nemosaur 3 роки тому
This has been so insightful Thank you so much for this talk!
@RanjithVj404
@RanjithVj404 3 роки тому
Excellent presentation. Thanks for getting into implementation details!
@km2411_
@km2411_ 3 роки тому
Really neat presentation with much informative content.
@sasaa4908
@sasaa4908 3 роки тому
Thank you so much for this talk !! very well explained ...
@amitbaijal421
@amitbaijal421 4 роки тому
Great presentation.
@viveksai9353
@viveksai9353 2 роки тому
Every bit of applause deserved for such a verbose explaination.
@8Trails50
@8Trails50 3 роки тому
This is an insanely good talk.
@AbhijeetJadhav24
@AbhijeetJadhav24 Рік тому
Super comprehensive and very inspirational! Thank you.
@pothiq
@pothiq 5 років тому
It's truly comprehensive. Thanks for the nice presentation in a very understandable way.
@PankajKumar-vi4tn
@PankajKumar-vi4tn 3 роки тому
Very good talk. I also liked some of the questions in the end.
@at_tap
@at_tap 2 роки тому
Extremely well conducted video, very informative and explained without any wrinkles. Kudos!!
@Dipesh_Sol
@Dipesh_Sol 7 місяців тому
Reminds me of backpressure, ofc not the same here.
@pragmaticsoftwareengineer7965
@pragmaticsoftwareengineer7965 2 роки тому
Brilliant Talk.. Learned so much.. Thanks Susheel.
@huhu5375
@huhu5375 Рік тому
Amazing talks! I learn a lot from this video. "Ask client to close" is really brilliant. Randomized the connection time is also very impressive. I have seen random backoff algorithm, don't know it can also be used in this scenario.
@stillyi
@stillyi 2 роки тому
Thank you! Very informative presentation.
@madeeshafernando8496
@madeeshafernando8496 3 роки тому
wow, what a great talk, explains really well!!
@jmitesh01
@jmitesh01 3 роки тому
nit pick here, but how does sharding for availability help in push registry feature checklist? Its because it protects by only some portion of connection server goes down?
@renon3359
@renon3359 Місяць тому
TCP TIMED WAIT avoidance was brilliant
@codetolive27
@codetolive27 2 роки тому
Excellent presentation!! Lots to learn
@wyjiaonju
@wyjiaonju 2 роки тому
Great talk! Very inspirational!
@attention_shopping
@attention_shopping 2 роки тому
what a great talk. so dense, no fluff
@lukeyd13
@lukeyd13 2 роки тому
What an amazing speaker this guy is
@deepakkumarnd
@deepakkumarnd 2 роки тому
Great talk, very detailed
@unmeshchougule5666
@unmeshchougule5666 Рік тому
Question : when you say client opens connection and stays connected to that server, wouldn't it talk to load balancer and not the actual server here? So even if you deploy new server behind that load balancer there won't be any issue of the connection closing and re-opening as you mentioned? Please shed some light if I am missing something here.
@ankitjindal7059
@ankitjindal7059 2 роки тому
Really thought through presentation
@mukeshprajapati9642
@mukeshprajapati9642 Місяць тому
Really good explanation. Literally clapped at the end :)
@BHARATKUMAR-le6eq
@BHARATKUMAR-le6eq Рік тому
I think some confusion at ELB. ELB operates at Layer 4 which means at the TCP layer already.
@NK-ju6ns
@NK-ju6ns 2 роки тому
Neat presentation and insightful.
@allanvalooran6604
@allanvalooran6604 3 роки тому
Great Talk
@dhrumilparmar9294
@dhrumilparmar9294 2 роки тому
Awesome talk! Enjoyed it.
@praveenX
@praveenX Рік тому
Just Amazing! 👏
@unmeshchougule5666
@unmeshchougule5666 Рік тому
great talk, thank you!
@PratikNandoskar
@PratikNandoskar 5 років тому
Very Good. thanks for sharing.
@hutofrock
@hutofrock 2 роки тому
Excellent presentation with enough in-depth details and nice insights!
@conquerorsanthosh
@conquerorsanthosh 2 роки тому
Such an awesome content , thankyou
@VishalThakur-wo1vx
@VishalThakur-wo1vx 2 місяці тому
Love this talk
@VinayYadav-xy7dk
@VinayYadav-xy7dk 2 роки тому
Brilliant!!
@himanshuupadhyay6749
@himanshuupadhyay6749 Рік тому
Very nice presentation
@hyper.charged_
@hyper.charged_ 3 роки тому
Excellent
@gharatmayuresh15
@gharatmayuresh15 3 роки тому
Excellent presentation !!!
@smonkey001
@smonkey001 2 роки тому
How can they "push messaging" to Android with WebSocket while Google simply banned any push notification methods but FCM?
@lahmerilyas4430
@lahmerilyas4430 10 місяців тому
This push mechanism is for users who are using the app. FCM is used for both forground/background usage.
@BHARATKUMAR-le6eq
@BHARATKUMAR-le6eq Рік тому
I have only one request why the client depends on the server. I mean why this client-server mapping. What if the server is down then we need to migrate all the client-specific servers to a new server which is costly and may create issues like thundering. It's not we should make the server stateless with client requests and maybe only we should store client information in the push registry?? and when push notifications just randomly pick the server and send a message to the client id.
@TheNikhilbhoyar
@TheNikhilbhoyar 2 роки тому
what is worse than thundering herd? its recurring thundering herd
@ridhwaans
@ridhwaans 3 роки тому
what is the difference between push vs kafka messages/ message queues?
@maximecaron3133
@maximecaron3133 2 роки тому
with push client subscribe to a small set of keys( movie name …). while with kafka there is a single log and client need to read all message that have been written to the log
@sonicjetson6253
@sonicjetson6253 Рік тому
Hearing all this talk of massively scalable is getting so nauseous man, fk this shit
@harshitpandey6664
@harshitpandey6664 2 роки тому
Tip : Watch at 1.25x speed.
@greyreynyn
@greyreynyn 2 роки тому
man this is cool and all but all this work is just so you can say "hey, we think you might like this anime" ?
Scaling Slack - The Good, the Unexpected, and the Road Ahead
37:54
Managing Data in Microservices
52:07
InfoQ
Переглядів 141 тис.
РАДУЖНАЯ ГОРКА 🌈😱
00:30
ВИОЛА 🐰
Переглядів 3,5 млн
Китайка и Мармеладный Лего😂😆
00:19
KITAYSKAYA ZMEYKA
Переглядів 2 млн
Meta launches new AI assistant with Llama 3 model
3:33
CBS News
Переглядів 1,4 тис.
What Is an AI Anyway? | Mustafa Suleyman | TED
22:02
TED
Переглядів 348 тис.
Coding a Web Server in 25 Lines - Computerphile
17:49
Computerphile
Переглядів 311 тис.
Design Testing at Netflix
13:12
Manifesto
Переглядів 18 тис.
Architecting a Modern Financial Institution
49:46
InfoQ
Переглядів 75 тис.
How Netflix Really Uses Java
50:31
InfoQ
Переглядів 4,1 тис.
Evolution of Edge @Netflix
43:02
InfoQ
Переглядів 16 тис.
Робот зарядка на 65W🤖
0:36
serg1us
Переглядів 1,6 млн
I had no idea SHEIN sold PC parts…
27:10
Linus Tech Tips
Переглядів 806 тис.
Phone charger explosion
0:43
_vector_
Переглядів 1,5 млн