System Design: Content Delivery Networks (Simplified)

Поделиться
HTML-код
  • Опубликовано: 3 окт 2024

Комментарии • 172

  • @gkcs
    @gkcs  3 года назад +68

    Hey guys, sorry for the poor sound quality. Please turn on the subtitles for a clear understanding.
    Also, if you are preparing for a system design interview, try get.interviewready.io 😁🔥

    • @edithpuclla6188
      @edithpuclla6188 2 года назад

      Thank you for the advise :)

    • @sankalparora9374
      @sankalparora9374 Год назад +1

      When the content is good - sound and video qualities can be very conveniently ignored!
      Thanks for the video!

    • @aditisingh6330
      @aditisingh6330 8 месяцев назад

      I thought my speakers are gone 😪...jokes apart it was just excellent content

  • @kapilchoudhary2922
    @kapilchoudhary2922 Год назад +2

    Great explanation Gaurav, thanks! 💯

    • @gkcs
      @gkcs  Год назад

      Thank you 😁

  • @pritomsaha2051
    @pritomsaha2051 3 года назад +23

    Sound quality should be improve

  • @sinvalfelisberto
    @sinvalfelisberto 11 месяцев назад

    Thank you for sharing! Greetings from Brazil!

  • @muratcosar6303
    @muratcosar6303 2 года назад +10

    I love when you make it a story, it becomes much clearer and understandable, thank you gaurav, as always :)

  • @deeecode
    @deeecode Год назад

    Thank you so much for this 🙌🏾

    • @gkcs
      @gkcs  Год назад

      You're welcome!

  • @ibrahimshaikh3642
    @ibrahimshaikh3642 3 года назад

    Very good explanation

  • @abhishekk3561
    @abhishekk3561 Год назад +2

    That moment when a person who's teaching smiles

  • @ahmetbcakici
    @ahmetbcakici Год назад

    Thanks for the content!

  • @AbhishekKumar-kd7bp
    @AbhishekKumar-kd7bp 3 года назад +17

    grt explanation . but audio quality :(.. try this Rode NTG3 Condenser Shotgun Microphone ..

  • @vaibhavmehta36
    @vaibhavmehta36 3 года назад +2

    Paxos/Raft new learning. Your videos always amaze and I get to know new terminology every single time.

  • @GerardBeaubrun
    @GerardBeaubrun 2 года назад

    Thank you so much Gaurav

  • @devashish887
    @devashish887 3 года назад +4

    In last video during the interview i noticed you were not that comfortable about cdn I might be wrong
    But then
    Here you are, developed proper understanding on it. And sharing that knowledge.
    Great

    • @jmain9192
      @jmain9192 3 года назад +2

      I noticed that too. I’m glad he took the initiative to learn CDN’s and share his understanding with us. 👍🏽

  • @TheTandeddu
    @TheTandeddu Год назад

    mic up brother! would make all the difference and don't worry about zooming in and out so much. On a pos note, content and material was good and clear explanation. Thank you!

  • @atorcode
    @atorcode Год назад

    Excellent video

  • @AmitSharma-ek1py
    @AmitSharma-ek1py 2 года назад

    Great explanation .. thanks

  • @sophianachiba663
    @sophianachiba663 3 года назад +18

    your videos are great! thanks! a little tip: maybe a microphone would help with the sound. keep them coming!

  • @aadityakiran_s
    @aadityakiran_s 11 месяцев назад

    Great video. First time I watched about 3 years ago, I didn't understand anything but now, this is pretty obvious to me. Your content needs a lower barrier of entry in my opinion but otherwise it's a great resource to prepare for technical interviews.

  • @sayanroy15
    @sayanroy15 Месяц назад +1

    Its not system design , you are telling me the concept.

  • @bittupaul100
    @bittupaul100 3 года назад

    great explanation, thank you

  • @anastasianaumko923
    @anastasianaumko923 Год назад

    Great work, Gaurav! thank you so much 🤩

  • @deshantdevkota2563
    @deshantdevkota2563 3 года назад

    Thanks man, i dont have experience with most of things you say rn, vut i definitely know I will need it.

  • @totolesslie
    @totolesslie 2 года назад

    Asynchronous Dynamic Reverse Proxy Index AI based upon allocation requests with redundancy exponential difference reduction.

  • @y2an
    @y2an Год назад

    Thanks for the diversity t-shirt. It drew me in, and I’m happy to have found your channel as a result.

  • @송예은-h7b
    @송예은-h7b Год назад

    Very clearly explained! Thank you for the video - it helped me a lot! :)

  • @AmreshTripathi
    @AmreshTripathi 2 года назад

    I thought it was designing a CDN like Akamai, it is simply use case and explanation of why you need a CDN. Kindly change the title to be more appropriately. Perhaps : What is a CDN or What does CDN do.

  • @pkjindal953
    @pkjindal953 2 года назад

    Hope you take care of the acoustic next time....

  • @babbarimam2058
    @babbarimam2058 3 года назад +7

    Wonderful video, It would be more appreciatable if clarity of sound would be better. Thanks for sharing such knowledgeful videos.

    • @gkcs
      @gkcs  3 года назад +4

      Yes the mic had some issues this time. I'll make sure this doesn't happen again.

    • @AbhishekKumar-kd7bp
      @AbhishekKumar-kd7bp 3 года назад

      @@gkcs grt explanation . but audio quality :(.. try this Rode NTG3 Condenser Shotgun Microphone .. bit expensive but worth the price for next 6-8 years

    • @KAUSHALDOKANIA
      @KAUSHALDOKANIA 3 года назад +6

      @@gkcs probably 1 mic is a single point of failure, you can distribute this as well 😂

    • @gkcs
      @gkcs  3 года назад +1

      @@KAUSHALDOKANIA Hahaha! Damn :p

  • @TheDiscreet
    @TheDiscreet 3 года назад +14

    Hi Gaurav.. a few questions crept up.. We use CDN mostly not to hit the actual servers for frequently accessed static content.. Can you give more information on
    1. what content will not be served by CDN
    2. Does CDN need a load balancer
    3. For the content which cannot be served by the CDN, is there a way to reduce the time to hit the actual server located at a different geography. Is setting up another sever in the geography going to help?
    4. One naive question.. Are data center and server (application deployed) different? Setting up data center means only data realated stuff and not the application servers?

  • @raj_kundalia
    @raj_kundalia Год назад

    thanks you

  • @mandarg3243
    @mandarg3243 3 года назад +21

    Hi Gaurav thanks for the great content. One correction - at around 10:16 the video says that 'the most popular CDN is S3' which I think is not true. S3 is a storage service and not a CDN per se.

    • @darshangowda309
      @darshangowda309 3 года назад +4

      You’re right, all the content is explained well and then he mentions S3 as an example for CDN 🤦🏻‍♂️

    • @cyethacksolutions6761
      @cyethacksolutions6761 3 года назад +8

      i think he mentioned the cloudfront as a CDN service , so S3 stored and cloudfront serve the data to Edge Network[Nearby user geo location], and @Gaurav great explanation, even for security engineer it help me to understand the system very well, keep the good work

    • @chalchalamchal
      @chalchalamchal 2 года назад +2

      Right he was confused or may be in hurry said so... but s3 is just a storage in a region but cloud front is cdn which may get things from s3 and actually makes the access faster.

    • @nehasht2
      @nehasht2 2 года назад

      He mentioned cloudfront which is a AWS service that provides these geographical caching benefits

  • @IMSOURAVM
    @IMSOURAVM 3 года назад

    Awesome Explanation!

  • @showbikshowmma3520
    @showbikshowmma3520 Год назад

    use kubernet instead of CDN?

  • @greyreynyn
    @greyreynyn 3 года назад

    its a design interview, but **spoiler alert** its also paid ad placement for akamai

    • @gkcs
      @gkcs  3 года назад +1

      Akamai didn't pay me. But if they'd like to, I wouldn't mind :p

  • @bossgd100
    @bossgd100 Год назад

    the sound is bad :/

  • @jaspherj6905
    @jaspherj6905 2 года назад

    Please use mic , lot of echoes

  • @Bobby-lh2sx
    @Bobby-lh2sx 3 месяца назад

    Me and boys on the ways to use excel sheet for inter service communication

  • @emilyaung2963
    @emilyaung2963 2 года назад

    Great content. I really do appreciate you not using the word particular in every sentence like other indian youtubers. I get tired of hearing it so often.

  • @rishabhkukreja3485
    @rishabhkukreja3485 Год назад

    I would really appreciate if you can you a good microphone. The content is amazing 😀

  • @skfiroz1783
    @skfiroz1783 2 года назад +1

    Great.

  • @dhananajaykrishna8259
    @dhananajaykrishna8259 3 года назад

    Great video.... Kindly take care of the audio, it ruins the experience of such great explanation.

  • @swaaminathan1
    @swaaminathan1 3 года назад +1

    Thanks for the video. This seem to be a complicated explanation of CDNs, I feel.

  • @rahularya091
    @rahularya091 Год назад

    Hey Guarav, Nice video on CDN. Just want to point out S3 is not really a CDN it's an object storage. Btw AWS cloudfront is a CDN service

    • @gkcs
      @gkcs  Год назад

      Thanks. We use them accordingly at our startup InterviewReady 😁

  • @SorsumBhatia-e1p
    @SorsumBhatia-e1p 5 месяцев назад

    cdn are replicated servers. are they anyhow related to caching?

  • @chalchalamchal
    @chalchalamchal 2 года назад +1

    At the end you mixed the concept of s3 and cloud front (cdn) which sounded same but they are different actually. May be you wanted to wrap up the video soon but anyways overall explanation was good.

  • @suryatejaachanta3983
    @suryatejaachanta3983 3 года назад +1

    Wonderful Explanation, the audio quality can be improved!

  • @ashwintastic
    @ashwintastic 2 года назад

    Could not proceed ... Because of poor Audio quality

  • @hridayeshpawar2788
    @hridayeshpawar2788 3 года назад +1

    Nice content. Please make your studio echo proof by attaching those "panels" to the walls

  • @anuragtiwari1384
    @anuragtiwari1384 3 года назад

    Please use a better quality of mic, the explanation is very good but the audio quality is not so good.

  • @marmikpatel5371
    @marmikpatel5371 3 года назад

    It'd be great if you explain concept of sso on whiteboard

  • @Oreganal75
    @Oreganal75 2 года назад

    Isn’t Cloudfront more relevant as a CDN than S3? S3 may be the origin for Cloudfront. ??

  • @pc2780
    @pc2780 2 года назад

    Could you please do videos on networking fundamentals like vpc , elastic ips etc

  • @stutijindal3413
    @stutijindal3413 3 года назад +5

    What if the data gets updated but the cached data in the CDN has not expired ? Do we update data in the CDN too (incase of Push CDN) ? Do we let the data be inconsistent (incase of PULL CDN) till the TTL expires and the data is re-fetched ?

  • @gauravgarg031
    @gauravgarg031 3 года назад +14

    What is the sequence of call in this case ?? Client -> Application Server (in other region) -> CDN (local cache) or client directly connects with CDN and Application server is completely skipped ??

    • @codr0514
      @codr0514 3 года назад +16

      When Client requests for an static resource, let’s say requesting an image, clients are configured to hit a url with resource Id and the url is nothing but the CDN. So the client makes request to CDN, if found in cache (cache hit) then serves back the image, if not (cache miss) then CDN hits your service and get the resource, store it in cache and return the image to the client. And there should be optimal TTL for every resource you cache else either there will too many cache misses or caching for too long in both case you end up paying more to CDN 😊

    • @gauravgarg031
      @gauravgarg031 3 года назад

      @@codr0514 Thanks... Thanks a lot.

  • @ilikememes9052
    @ilikememes9052 3 года назад +1

    Can you please work on audio clarity.The voice is echoing.

  • @SiddharthSingh-xt5mi
    @SiddharthSingh-xt5mi 3 года назад +1

    Awesome video Gaurav. Right now I am working on a design where I have to host static files on CDN which stands behind the ALB. The only problem is adding security headers to it. AWS provides Lambda@edge to add Headers or quite recently AWS came up with CF functions. Maybe you could add that to the video. Also, maybe various people have already written, S3 being a storing mechanism and CF being the CDN AWS provides.

  • @sanyam.ss99
    @sanyam.ss99 2 года назад

    Please work on your audio quality. Great Content

  • @madhavareddy580
    @madhavareddy580 2 года назад

    Good content, but audio is not clear

  • @chiragbaid8211
    @chiragbaid8211 3 года назад

    The audio quality is quite poor Gaurav bhai

  • @reallgreen
    @reallgreen 11 месяцев назад

    please i have a question. i am an isp , can i own a cdn for me to save banwidth .please answer

    • @gkcs
      @gkcs  11 месяцев назад

      Have a look at my netflix video here: ruclips.net/video/x9Hrn0oNmJM/видео.html

  • @ShubhamSingh-ku2ow
    @ShubhamSingh-ku2ow 3 года назад

    Please use a better quality microphone. The voice was echoing a lot.

  • @bijayagiri5746
    @bijayagiri5746 2 года назад

    nicely done but poor sound quality.

  • @nativeKar
    @nativeKar 3 года назад

    Noticed the wedding ring in the last video but thought better of commenting there. However, congratulations.

    • @gkcs
      @gkcs  3 года назад +1

      Thank you 😁

  • @jankeshchakravarthy9389
    @jankeshchakravarthy9389 Год назад

    @Gaurav Sen - Thanks for explanation and I liked it.I do have a very naive question. The information you provided in this video is knowledge. So why do you title it as "system design". What aspect of the system is being designed in the video?

    • @gkcs
      @gkcs  Год назад

      Thanks Gary :D
      I titled it system design since it is an important part of most systems, and some systems especially depend on CDNs to scale their solution.

    • @jankeshchakravarthy9389
      @jankeshchakravarthy9389 Год назад

      @@gkcs -Thanks. Probably you may refer such videos as 'System design knowledge base'. Anyways, I should not be too picky on the title of the video and appreciate your effort on putting the video together. -:)
      I have another or new video request. Video can first start with back of the envelope calculations. In a system consisting of clients, servers, data base, networks of various types, what are the bandwidths of each components in the system that one can assume in real life? How would you find the bottleneck in the system, if # of servers, type of database, storage, network speeds are provided? Lastly, would you mind touching upon the subject what is the current industry bottleneck in cloud storage?

  • @DeadPool-ti5ig
    @DeadPool-ti5ig Год назад

    great

  • @pritishbarbara7962
    @pritishbarbara7962 3 года назад

    Nice content, there is a concept called PNI , please share the consequences if local Cache Utilization is 100%, then will the user request go via PNI(Via internet)

  • @amrutya3298
    @amrutya3298 3 года назад

    Loved it

  • @mrinalverma3010
    @mrinalverma3010 3 года назад

    bro video was on point, had a hard time understanding because of unclear voice

  • @sophieshen6054
    @sophieshen6054 2 года назад +1

    Thank you so much for the awesome video. I've been having difficulty distinguishing CDN and caching.
    1. is CDN always placed right after the client?
    2. If I place a cache before the DB, can we also make it a CDN?
    Thank you!!!

    • @akshatshah139
      @akshatshah139 2 года назад +1

      A Cache is a utility for faster lookup of frequently accessed data which is either pre-computed or queried to avoid multiple high-latency calls to a database/remote server.
      1. A CDN is a cache very close to the user. It isn't right after client, but by design, a CDN is much closer to client than the server
      2. A cache before a DB helps reduce a query time by 10-100x. Because it is behind server and not closer the the client, it cannot be categorised under CDN

  • @lemp9582
    @lemp9582 3 года назад

    How the user is gonna hit a specific cache (you mention the location in the request) but which tool is responsible to determine that? I guess something like geoDNS is gonna help

  • @siddharthdedhia11
    @siddharthdedhia11 3 года назад

    Love how the users from netherlands are green ;)

  • @Dead2098
    @Dead2098 2 года назад

    Thank you. Could you elaborate on why we need Distributed Consensus (Paxos/Raft) on our cache CND?

  • @rajanlagah4529
    @rajanlagah4529 2 года назад

    Cloudflares ?

  • @archuseapaf6264
    @archuseapaf6264 3 года назад

    Finally trimmed good haircut!

  • @srndrpec
    @srndrpec 3 года назад

    Thought this is Designing CDN itself but it's about using CDNs....
    Does CDNs use object stores for hosting. Can we make use of S3 as it's alternative.

  • @bertanyilmaz9818
    @bertanyilmaz9818 3 года назад

    My man! You and your videos are nothing short of phenomenal! Thank you very much.

  • @dasojushiva8663
    @dasojushiva8663 10 месяцев назад

    I just quit watching this video in just a 15 seconds, sound quality must improve, please do re upload the video…

  • @rthangam77
    @rthangam77 3 года назад

    Thanks Gaurav for the video. How is the deployment taken care of ?

  • @ayushraj6525
    @ayushraj6525 3 года назад

    Nice t-shirt man

  • @chiragkumar3354
    @chiragkumar3354 3 года назад

    Sound sir, sound...

  • @nomadsoul466
    @nomadsoul466 2 года назад

    Great explanation Gaurav. What kind of web servers the cdns use to serve the content? Also the caches (edge locations) , are those coupled with web servers to serve the content that is cached?

  • @GamingGleeSquad
    @GamingGleeSquad 3 года назад

    I can relate it with CSGO game now. 😅

  • @dhmilmile1
    @dhmilmile1 3 года назад

    Can we make our own cdn and use it? Like you explain in the video and what will be the cost if we developed it.

    • @gkcs
      @gkcs  3 года назад +1

      Difficult to say. Why would you want to reinvent the wheel though? Cost savings?

    • @dhmilmile1
      @dhmilmile1 3 года назад

      @@gkcs Not exactly cost but want to learn how it work from ground. That's it.

  • @coolchetang
    @coolchetang 3 года назад +3

    @Gaurav : Once a file, say a video is uploaded to CDN, does it get a different URL for each geographic location ?

    • @codr0514
      @codr0514 3 года назад +4

      No, for a user, URL remains same for a specific resource. But the routing behind the screens will take to the nearest CDN server. But again it's not guaranteed that it will always take to the nearest server, it depends on lot of factors like load, outage, routing/network configuration in-progress etc.

  • @vikastomar3727
    @vikastomar3727 3 года назад +2

    Just an observation: If your T-shirt designer would have put "Respect" before "Integrity" then they wouldn't have to add extra "Pride" at the end.

  • @manuelvaldez448
    @manuelvaldez448 3 года назад +2

    Hi @Gaurav. I'm a big fan of you. I have seen most of your videos. I recently had a interview and this question was asked to me. How would you design a system in which you need to allocate a 900TB integer matrix (that is already ordered on the rows and columns), so you can search for a number in that matrix the most efficient way. Any suggestions ?

    • @gkcs
      @gkcs  3 года назад +6

      Split the matrix into 900 sorted chunks. Now use a reverse proxy to route requests based on the input number (binary search)

    • @manuelvaldez448
      @manuelvaldez448 3 года назад +1

      @@gkcs Thank you for your response!!!! What strategy would you use to split the matrix? The numbers in the matrix are not unique. What data structure would you use to save the data?Those were some follow up questions.

    • @gkcs
      @gkcs  3 года назад +3

      @@manuelvaldez448 i would split the matrix into 30*30 chunks to make a higher level matrix.

  • @thorthegreat10
    @thorthegreat10 3 года назад

    Hey dude, thanks for video, although definitely not the best one of your, you can do better - more depth would be nice

  • @UntamedRogueMavrick
    @UntamedRogueMavrick 3 года назад

    You opened the black box buddy.....

  • @shivangawasthi8750
    @shivangawasthi8750 2 года назад

    What is the extra purpose of content delivery network if famous cloud providers have regions and we can replicate data in those regions to serve customer better. Also is S3 a CDN or CloudFront a CDN?

    • @austinkim7804
      @austinkim7804 Год назад

      S3 is the storage mechanism. Cloudfront is the CDN.

  • @SoferPeOZN
    @SoferPeOZN 3 года назад +1

    great hairstyle :)

  • @snake1625b
    @snake1625b 2 года назад

    so is s3 installed on each of the nodes on the CDN?

  • @TuvRaz
    @TuvRaz 6 месяцев назад

    its the bad sound and the strong accent combo that makes this a bad video

  • @kushagragautam3979
    @kushagragautam3979 3 года назад

    good content but t bad audio quality. please buy good mike

  • @abeechr
    @abeechr 3 года назад +1

    Love your shirt!

  • @susmitac6346
    @susmitac6346 2 года назад

    Hi can you provide the simulators for CDN? What are the different simulators can be used for the simulation of CDN?

    • @gkcs
      @gkcs  2 года назад +1

      Use a staging environment, or stub it through the programming environment.

  • @EshwarNorthEast
    @EshwarNorthEast 3 года назад +1

    Looking at the CDN outage recently causing problems. Why didn’t companies implement something like if cdn request fails then directly hit the server for static files? Slow will be better than nothing right? Or am I missing something here?

    • @arjun1194
      @arjun1194 3 года назад

      Its better to just fail static content rather than failing the whole system,
      Lets suppose you had everything on the server and the server provider had an outage.. your static and dynamic content both would be out.. rather than just Static content ( Like images etc. )

    • @anuj9538
      @anuj9538 3 года назад +1

      Depends on the type of failure. Client doesn't know if the request are serving from cache or server. If the cache went down i think standard CDN provider must have a fallback option to serving from server or nearest cache server. If the DNS itself fails they don't have another option.
      This is my view only but if someone else have other insight - please add a point or correct me if i'm wrong.

    • @arjun1194
      @arjun1194 3 года назад

      @@anuj9538 With the latest fastly failure that took place, i realised maybe some big brains like Twitter Github etc. Weren't using the fallback option because their static contents were completely down for a while.

    • @umanga312
      @umanga312 3 года назад +2

      It wasn't a CDN Outage first of all, it was a DNS outage for specific set of customers which got in triggered due to a config push

    • @EshwarNorthEast
      @EshwarNorthEast 3 года назад

      @@umanga312 dns outage was a recent one, there was some cdn outage because of a misconfig before that I suppose.

  • @dsenpy5653
    @dsenpy5653 3 года назад

    Can you please explain what is happened when we upload an image to Facebook and my friends react to it?
    Does this image upload to direct DB or via CDN? If it is upload directly when it is a callback to CDN?

  • @random4573
    @random4573 3 года назад +1

    Voice is bit unclear!!

    • @gkcs
      @gkcs  3 года назад +1

      Yes the mic was off 🤦‍♂️😅

  • @sumanthchowdary9699
    @sumanthchowdary9699 3 года назад

    bro I got job offers from Accenture as infrastructure and security engineer role and programer analyst role from cognizant(Genc) which one should I choose for the better carrier?

    • @mishra.prateek
      @mishra.prateek 2 года назад

      Bro! I think you should join the congnizant role. It's more future proof.

  • @bhojnikhil
    @bhojnikhil 2 года назад

    Good content. Poor Audio.