How JioCinema live streams IPL to 20 million concurrent devices w/ Prachi Sharma | Ep 7

preview_player
Показать описание

Build Your Own Redis / DNS / BitTorrent / SQLite - with CodeCrafters.

# Recommended videos and playlists

If you liked this video, you will find the following videos and playlists helpful

# Things you will find amusing

# Other socials

I keep writing and sharing my practical experience and learnings every day, so if you resonate then follow along. I keep it no fluff.

Thank you for watching and supporting! it means a ton.

I am on a mission to bring out the best engineering stories from around the world and make you all fall in
love with engineering. If you resonate with this then follow along, I always keep it no-fluff.
Рекомендации по теме
Комментарии
Автор

Couple of very high level takeaways I could get from this podcast:
1. Keep all features behind a feature flag.This helps when you need to turn something off that's breaking production without doing a code release.
2. Wherever possible have a stand by setup like a static api that can keep your most business critical services up to ensure no customer/business impact in case a disaster strikes your system.
3. Run time auto scaling of DB capacity doesn't necessarily work for use cases like live streaming. You need to scale up before traffic surges.
4. Careful planning and back of the envelop calculation for all system components that are likely to get impacted by traffic surges. Like DBs, Kafka, CDN etc.

ravikatiyar
Автор

The only IPL thing I'm interested in

mmmnmmmmmmmm
Автор

The way Prachi broke down and explained the intricacies of scaling and load handling for high-traffic applications like JIO Cinema is truly commendable.

debdanroy
Автор

Rule 1. If it works, leave it
Rule 2. Preplan things
Rule 3. Always assume that things will fail 100% and have backup ready
Rule 4. Feature flags are superb
In short, system design requires presence of mind and future planning (generally taking peak cases)

factfry
Автор

The engineering behind the amazing stuff we get to experience in life is nothing less than magic! Thanks for making these podcasts happen Arpit

sleep-
Автор

Feature flag (keeping in config service, based on geography),
Charles testing tool,
Exponential backoff for API retries,
Request flow ( client -> Multi CDN -> LB -> Origin server -> DB),
DB autoscaling is not recommended (takes lot of time 45 mins from her example for scaling 5 instances) (prescale is recommended after some calculations),
Increasing TTL of caches when there's a hockey spike (can or cannot help),
API personalization (serving static response when having this hockey spikes),
Always Prepare for plan B, C, D,
Multi CDN Optimizer (decides where to send the traffic, used for live streamings),
Cache Offload < 90%,
Designing cache policy in CDN is important (offloading cache monitoring),
Kafka,
DNS issue mitigation at backend,

aimusicvibes
Автор

Key notes: Feature flags, Circuit breaker pattern, APM, Kubernetes, Client Caching, Multi cdn optimiser, Cache offload, Kafka distributed system, Ads timing is manual, Ad personalisation is on the server side.

arjunk
Автор

Thanks Arpit for bringing such content. I look for these podcasts with seniors engineers. Cheers 🎉

diwakarisonyoutube
Автор

Hey @arpit, can you get someone from IRCTC technical team who can get us understanding on Tatkal mechanism. I believe what Amazon, hotstar, jiocinema do in their seasons(be it ipl, billion day sale etc) irctc handles far more requests on daily basis during Tatkal.

prakashranjan
Автор

Not sure how many non tech people will be watching it, but If you're watching this, take a moment to appreciate the people who are disrupting their own schedules and family time to ensure you enjoy a seamless IPL match. Their dedication makes this experience possible and tech a good place to be in.

mkmkmk
Автор

Can we take a moment to appreciate the engineers involved in this, they stretch their time, compromise connections with their families for us to have a seamless experience, it’s a long work for 2 months and hope they deserve necessary appreciation and bonuses for their time. Yes, tech is just one aspect, but I hope asking questions like how the team is able to manage the work load is also very important.

jotrades
Автор

The ad insertion part was quite interesting for me, I did not realize that even the ads that we see during the games could be personalized and inserted based on different strategies. SCTY-35 markers was something completely new to me. The guest really had an end to end grasp of the whole solutions and was able to present a very coherent picture. Loved the podcast :)

mach-
Автор

crazy how at very young age she is a director of engineering of company like jio/viacom

and she is from normal college

naruto
Автор

Feels like review version of OG old Hotstar scaling to 25 million talk by Gaurav Kamboj

Thanks for bringing this for us Arpit!

jayvasant
Автор

Brilliant discussion - "Dhoni ke side effects on Content streaming architecture" would have been perfect title. Thanks for bringing this.

Codetutor-DemystifyCoding
Автор

Excellent content! As a backend engineer, this is exactly the kind of content I love to watch. I hope you continue to bring such insightful guests on the show.

mehuldantani
Автор

Great insights, mostly when you see these kind of things people throw around standard fancy terminologies, but here its just from pure experience, deciding on base64, multiplication factors, one small change * the number of API requests etc...

Enjoyed watching this.

rishushrivastav
Автор

Watched this during my weekend run!

What an amazing conversation- the passion that you both have for engineering is so inspiring. 🙏🏻

prashanthvaidya
Автор

"ISP" : That guess by Arpit at 38:18 gave me goosebumps 🫡

AbhishekKumar-xrss
Автор

Hi all techies,

I am stuck trying to figure out the maximum capacity of my system. Specifically, I am running Nginx on a system with:

4 CPUs
8 GB RAM
1 Gbps network
I want to know how many requests it can handle. Additionally, I want to understand the capacity for the backend Node.js application and the database. Is there any formula or type of calculation to determine this?

HappyKumar-jrpb