MMO Video Game (Fortnite) Design Deep Dive with Google SWE! | Systems Design Interview Question 21

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 ม.ค. 2025

ความคิดเห็น •

  • @art4eigen93
    @art4eigen93 2 ปีที่แล้ว +4

    I searched through the internet for days to find out how the game server works. Not for interview purposes but for sake of the interest. And your explanation quenched my thirst.

  • @cambriandot3665
    @cambriandot3665 2 ปีที่แล้ว +2

    4:34 P2P (zoom call) vs multi player games
    5:33 Latency considerations: in-memory, TCP/UDP
    6:41 Game server events
    8:36 Sharding map: Region servers
    9:38 Region boundary challenges
    11:32 Region-of-interest for a player
    12:19 Cross-region locks
    14:50 Interpolation
    15:34 Rebalancing region servers: Consistent hashing
    16:25 CDNs

  • @surenderthakran6622
    @surenderthakran6622 5 หลายเดือนก่อน +1

    Nicely explained. Your videos have a lot of positives but the best one for me is that you discuss other options and their tradeoffs before sharing your design. This in my opinion gives a wider technical coverage for someone who is studying for SD interviews.
    A couple of questions for the current design:
    1. Are we using UDP for both client to server and server to client comms? Why not explore websockets since it is two way comms with lots back and forths?
    2. Can we split the map into much smaller sub maps and to every player send state updates from user's sub map and their immediate neighbour sub maps only? This should solve the cross region visibility issue.

    • @jordanhasnolife5163
      @jordanhasnolife5163  5 หลายเดือนก่อน

      1) the reason that we use UDP here is just for a subset of the droppable updates, like movement, since it is typically faster to communicate with the server in this way. I suppose multicasting it also makes this more "fair"

  • @semperfiArs
    @semperfiArs 2 ปีที่แล้ว +2

    Jordan bro this is brilliant

  • @bet_more_pls
    @bet_more_pls 2 ปีที่แล้ว +2

    Would love to see a video on designing a notification service!

  • @stomic50
    @stomic50 2 ปีที่แล้ว +1

    first, kudos on these videos. I wish you continue doing them when you get more and more experienced.
    btw, your sound is not in sync with the video, so it looks like one of those German movies - the moustache fits nicely :D
    keep doing these type of videos!!

    • @jordanhasnolife5163
      @jordanhasnolife5163  2 ปีที่แล้ว

      Haha thanks! Unfortunately I had to shave it as I was trying to not look too gross on a date. Interesting about the mic syncing! I'll look into that, but my video and audio is recorded at the same time and locked together in the editor.

    • @jamrockgallis
      @jamrockgallis 2 ปีที่แล้ว

      @@jordanhasnolife5163 yea the mic sync issues is a thing...watch your videos on another device or something, idk

  • @swayampurnamishra5548
    @swayampurnamishra5548 3 หลายเดือนก่อน +1

    This might be a very naive question, but what type of connection is between client and server? How are multiple servers able to send notifications to client? Is it SSE only?

    • @jordanhasnolife5163
      @jordanhasnolife5163  3 หลายเดือนก่อน

      A client can have a few open connections at a time. SSE could work, but I'd probably lean more towards web sockets for bidirectional communication.

  • @Prem-xe8hk
    @Prem-xe8hk 2 ปีที่แล้ว +1

    At the start of the game, when all the users are in the same region server how to handle hotspot and distribute load?

    • @jordanhasnolife5163
      @jordanhasnolife5163  2 ปีที่แล้ว

      I think this is just a good example of where the dynamic sharing comes into place! Have a dedicated server for the small region and then repartition as everyone jumps from the plane. Or perhaps they do some optimization where a player isn't loaded into the servers until they drop or something, good question though!

  • @noahgsolomon
    @noahgsolomon ปีที่แล้ว +1

    i support the moustache but yeh probably give it a few more weeks before u walk by any schools

  • @Vinit5700
    @Vinit5700 ปีที่แล้ว +1

    Amazing

  • @jamrockgallis
    @jamrockgallis 2 ปีที่แล้ว +1

    Dude you are sooo freaking funny hahahaha

  • @recursion.
    @recursion. 2 ปีที่แล้ว +2

    Fortniteeeeeeee