Whatsapp System design or software architecture

  Рет қаралды 251,144

Tech Dummies Narendra L

Tech Dummies Narendra L

Күн бұрын

Most important and common question asked for developers and architect to check their design skills.
Design whatsApp or Provide architecture for whatsApp
OR
Learn how to build Realtime messaging system or Chatting application.
blog.whatsapp.com/196/1-milli...
highscalability.com/blog/2013/...
blog-bhaskaruni.blogspot.com/2...
Disclaimer: System design can vary based on the feature. this video explains the possible solution to build one. it doesn't guarantee the scale or full working. Instead this resource should be consumed to understand how it can be designed.
Donate/Patreon: / techdummies

Пікірлер: 284
@ajinkyagawali6442
@ajinkyagawali6442 5 жыл бұрын
You are pretty thorough about the subject and it is reflected by the way you teach. A lot of people are usually confused as they have a vague idea about what to speak. This shows that you take efforts perparing for the delivery of the content. Thank you so much for your efforts to make these videos. I am learning a lot.
@vipulsingh4637
@vipulsingh4637 3 жыл бұрын
Awesome video. Few points :- i) We can use indexing on UID for faster retrievals. O(n) to O(log(n)) ii) Spawning a thread for every user is not efficient. Instead, we can use a dynamic threadpool. iii) Similarly, having a queue per user is not efficient. Instead, we can have a global queue with object (message, action like send/receive, uid) iv) Since you are using DB for storing message in case user is not online, we need to implement a disaster recovery mechanism i.e. replication. v) We can also implement blocked contacts by storing list of blocked UIDs for each user in the DB & we can drop such messages in web server.
@mahee96
@mahee96 2 жыл бұрын
actually whatsapp and other messaging apps use very customized protocols and language features to cater specific needs, such as Erlang which is extremely useful where millions of lightweight processes might need to be started and each other doesn't need to share data (everything is immutable)...also their xmpp based messaging uses extremely compressed payload compared to normal xml data transfer. These are implementation details but these are what makes the design itself eventually.
@DanteS-119
@DanteS-119 Жыл бұрын
Great comment. I guess this video is good to understand how to get to the point where such optimizations are needed
@balajireddy8985
@balajireddy8985 5 жыл бұрын
Excellent brother..before seeing your videos I never thought about the system design. Now I exited to understand every application system design . Thanks for everything.!
@RanjithVj404
@RanjithVj404 3 жыл бұрын
Clear and better than other WhatsApp design videos on KZfaq. Thanks!
@ChandramouliMallampalli99
@ChandramouliMallampalli99 5 жыл бұрын
crisp, in depth and perfect ! thanks for your time
@avinashyadav1
@avinashyadav1 5 жыл бұрын
Thanks man! these videos are really helpfull.
@visitor-in-the-world
@visitor-in-the-world 3 жыл бұрын
the guy has done amazingly! what I don't fully understand is the pid uid approach. All the messaging servers sit behind ALB. If a user session is bound with a pid in a specific server, it will lower the efficiency of load balancing, cuz the user will stay with that server during the conversation session. It's doable, but not ideal, IMO.
@abrarisme
@abrarisme 5 жыл бұрын
Thanks, that was pretty great. Would love to see an expansion of how encryption would work for the system and the tradeoffs you'd get between symmetric/asymmetric encryption.
@TechDummiesNarendraL
@TechDummiesNarendraL 5 жыл бұрын
Considered :) and Thanks
@harishkrish14386
@harishkrish14386 3 жыл бұрын
Thanks for the recommendation YT , was searching fr ur videos frm few months but was not particular but now im very specific learning from ur videos
@anjalisharma7919
@anjalisharma7919 3 жыл бұрын
So neat and just rightly detailed. I regret finding your channel so late.
@dibyendusarkar6821
@dibyendusarkar6821 3 жыл бұрын
Well firstly, this video is really good. One part which is missing is you did not consider multiple messaging server instances running. This actually raises a very important question. One server let's say maintain persistent connection, what if that goes down for some reason?
@thakurpavan
@thakurpavan 4 жыл бұрын
Good job and explained well. Just one suggestion it is always good idea to save in db first each message and then transfer it to the other user.
@asambatyon
@asambatyon 3 жыл бұрын
I love this content. Just for people who want to read, I got a couple of suggestions here: I personally would use the hearthbeat to keep the process alive. Once the heartbeat stops, or messages fail to be delivered, the process responsible for a client shutdowns and writes the shuttingdown timestamp in the DB and that is the last seen time. It has much less writes to the DB. For asymmetric encryption one would use the public/private key pairs to encrypt a common secret key (that is how you use it usually in SSL and other protocols) since asymmetric encryption is very expensive in both time and computing resources. You don't want to spent most of your processing power on encryption primitives (even less in a cellphone).
@dillon9347
@dillon9347 2 жыл бұрын
How do you recognize when heartbeat has stopped?
@sammed.sankonatti
@sammed.sankonatti Ай бұрын
Thats an excellent explanation. Thats marks the start of my system design interviews preparation. 24-05-2024
@rdb8324
@rdb8324 5 жыл бұрын
This is really great and straightforward. I liked it better than Tushar Roy's video on the same topic
@manishwankhede17
@manishwankhede17 5 жыл бұрын
I thought its just a Send or Rec App...Gud explained
@antonyspiano2403
@antonyspiano2403 4 жыл бұрын
Just brilliant Boss, Thank you!!
@lebanese000
@lebanese000 4 жыл бұрын
love your videos. Pretty straight forward and informative. Keep it up.
@satboddu
@satboddu 4 жыл бұрын
Nice Explanation. its my first system design understanding. Its clear
@sameeshprajan6404
@sameeshprajan6404 3 жыл бұрын
just loved the way you explain and make it simple to understand!!!great video !! thanks
@daleprather3026
@daleprather3026 3 жыл бұрын
Love your videos! Thank you. And the links in the description are very helpful as well.
@FoodieNishi
@FoodieNishi 5 жыл бұрын
Thanks for the concise video, I like the accent.
@yashbhardwaj8510
@yashbhardwaj8510 4 жыл бұрын
I found your videos very interesting sir, just I watch them 1.25x speed and then it becomes awesome.
@talivanov93
@talivanov93 4 жыл бұрын
Thank you for the video, it was very helpful! Great Idea using the CDN. One point that I would like to mention, that you don't have to send a heartbeat . Because with WebSocket there are events, for example connected and disconnection, so heartbeat might be wasteful.
@Collins01
@Collins01 2 жыл бұрын
so, when a user I disconnected, the timestamp at that point is sent to the small dB holding the user's active status right?
@pramodprajapati9166
@pramodprajapati9166 5 жыл бұрын
Thanks so much for your time and effort.This section was missing from youtube or sometime they went into too much details which led to a disinterest in the topic. I don't know how, but somehow you are able to make these interesting and just the right amount of depth is explained. Really helpful and much appreciated.
@TechDummiesNarendraL
@TechDummiesNarendraL 5 жыл бұрын
Thanks :)
@jyotitolanikhanchandani9796
@jyotitolanikhanchandani9796 5 жыл бұрын
Very nice explanation, thank you very much! I would like to see the followup video talking about encryption and audio/video calling service.
@chetan21k
@chetan21k 4 жыл бұрын
Thank you!!! I beign to learn System Design!!!
@tirupatirao7521
@tirupatirao7521 4 жыл бұрын
no words...simple and superb
@khalidelgazzar
@khalidelgazzar 4 жыл бұрын
Thank you. That's well explained and to the point
@ayushjindal4981
@ayushjindal4981 3 жыл бұрын
For last seen, instead of continuous heart beat, the user can update the column whenever he is closing the app and make the column as Null whenever he comes online Here null specifies that the user is online...
@abhrajyotikirtania2275
@abhrajyotikirtania2275 5 жыл бұрын
Nice ! Thanks for sharing
@rishabkumar4940
@rishabkumar4940 3 жыл бұрын
Man, you need more light in the room, by the way, great video, Thanks!
@MegaSk786
@MegaSk786 3 жыл бұрын
Really great videos, Thank you Narendra
@ganeshsundar1484
@ganeshsundar1484 5 жыл бұрын
Awesome explication !!!
@logicboard7746
@logicboard7746 2 жыл бұрын
Brilliant! Just the right depth and clarity!
@umeshkumarroy5804
@umeshkumarroy5804 3 жыл бұрын
Simply Great Work. Awesome.
@bhashkarbelwal4116
@bhashkarbelwal4116 4 жыл бұрын
wow, thanks a lot for the clear explanation.
@dev-skills
@dev-skills Жыл бұрын
location sharing is another important use case but can be implemented similarly to text message as we here sent the latitude-longitude data.
@shawnngohungson9662
@shawnngohungson9662 5 жыл бұрын
Thanks for your work man!!
@at_tap
@at_tap 5 жыл бұрын
Your videos are absolutely simple and to the point..real beauty....hats off, Great work!
@TechDummiesNarendraL
@TechDummiesNarendraL 5 жыл бұрын
@At thanks
@pramodsingh344
@pramodsingh344 8 ай бұрын
very nicely explained. Thanks
@andrejab74
@andrejab74 2 жыл бұрын
Very useful video, great explanation!
@neerajcrespo
@neerajcrespo 3 жыл бұрын
Few Questions which I am pondering right now 1. How does the long running thread/process work in Messaging server? Does it mean that the connection from client to server is not stateless but stateful and every time it finds the same process? Does that mean that the process is running on a single central machine and not in a horizontally scaled pods? 2. Is it client responsibility to poll for the messages after some time interval or is it the server's job to push messages to the client? If its the later then does that mean that Billions of client (devices) are making a stateful connection to server? is the protocol being used here is HTTP?
@uday1225
@uday1225 3 жыл бұрын
Awesome one! Thanks! your videos are great! a quick question on this lecture. Say for an instance, if client A resides in a separate country (say US) from client B (say India), to which CDN A will upload the image in this scenario? If it's on US, how will the client B know which CDN url to connect to?
@akaukuntla
@akaukuntla 5 жыл бұрын
Very educational. The other very important feature that wasn't addressed here is the 'group chat'. I wonder how WhatsApp handles them. If you could shed light on that as well, that would be awesome. Other than that, it simply awesome. Keep up the great work.
@parthacnp
@parthacnp 2 жыл бұрын
It would be very similar to the one to one chat logic. Except that, Whatsapp stores the users in a group. So, when a message sent to a group, whatsapp, takes the users in the group and sends to the corresponding Queues through the PIDs. If the user is offline, it is stored in DB against the userid.
@JUSTINHBK007
@JUSTINHBK007 5 жыл бұрын
Narendra, I will pass my interview thanks to your tutorials !! I owe you a beer.. or two
@TechDummiesNarendraL
@TechDummiesNarendraL 5 жыл бұрын
All the best:)
@somerandomguy000
@somerandomguy000 3 жыл бұрын
Did you pass?
@JUSTINHBK007
@JUSTINHBK007 2 жыл бұрын
@@somerandomguy000 I am a Software Development Manager at Amazon now !
@somerandomguy000
@somerandomguy000 2 жыл бұрын
@@JUSTINHBK007 congrats man!
@RS-vu5um
@RS-vu5um 2 жыл бұрын
Excellent Tutorial. Keep up the good work
@joelswapnilsingh5263
@joelswapnilsingh5263 3 жыл бұрын
Absolutely incredible!
@varunjain7360
@varunjain7360 3 жыл бұрын
awesome video. Wouldn't a single queue for a server handling multiple client connections be more efficient than 1-1 for the queue to thread/client?
@computersciencebypandey1339
@computersciencebypandey1339 4 жыл бұрын
Hey, I think some example of duplex protocol should be mentioned. Just saying "TCP" does not provide complete picture. Mostly XMPP protocol (built on top of TCP) is used, and not, for example HTTP.
@anikpait5556
@anikpait5556 4 жыл бұрын
Great knowledgable explanation. Quick question: Why are we using a different connection HTTP server for media rather not the same connection?
@ravkrgmail
@ravkrgmail 4 жыл бұрын
Whatsapp like chat app often use MQ broker like kafka, rabbitmq to exchange messages across users. The server side code is lightweight for messaging but not for telephony. Server doesn't store messages in DB but are managed by message brokers i.e. A sends msg to server for B, Server put it on MQ for B destination (Q the B is listening to) and double tick the sender, B finds a msg for download and double tick the receiver, B downloads/saves the msg locally and Blue tick is done. At this point your msg is remove permanently from the server. Which is why you can't retrive a msg once you delete it. Media files are handled slightly differently. We don't need a hardcore monolithic server for msgs. IMO.
@SubhramRana
@SubhramRana Жыл бұрын
Did not explain the case where sender and receiver clients are connected to two separate "message servers". In that case the message cant be sent to in-memory-queue. A dedicated messaging queue like sqs can be used to solve this.. This is a great explanation 💖💖
@4324234fdsfds
@4324234fdsfds 4 жыл бұрын
Your videos are really great.. :) Delivered
@sudharsansathiamoorthy1075
@sudharsansathiamoorthy1075 5 жыл бұрын
Great explanation!! the best system design video so far I have seen in youtube!!
@rtripath
@rtripath 2 жыл бұрын
Great explanation. Some question on last seen design. Why you need a heart bit send by user at regular interval. If the user is connected to server it is the current time and once disconnected just store that time as last seen. So difference of current time minus that timestamp will be last seen. Once user reconnect to server it is again going to be current time as last seen.
@anastasianaumko923
@anastasianaumko923 Жыл бұрын
Great job, thank you so much 😌
@anshugoel4381
@anshugoel4381 4 жыл бұрын
Can we have a messaging queue when the receiver is offline so that when receiver is online system does not has to query DB
@shivprasad920
@shivprasad920 5 жыл бұрын
Hii Thanks dude☺ can you please make something for Devops engineer interview prep..
@templestamilnadu869
@templestamilnadu869 Жыл бұрын
Really really really super great explanation bro👍👌👌👌
@ajourney179
@ajourney179 4 жыл бұрын
This was amazing.
@siyabonganzulwana3316
@siyabonganzulwana3316 5 жыл бұрын
Good Job man,
@GiorGoS07031992
@GiorGoS07031992 11 ай бұрын
Great work!🎉
@stobikoc
@stobikoc 5 жыл бұрын
Nice video btw. However, there are questions that I wanted to ask. When A sends a message to B and B is yet to connect to the server, your explanation said that the message is kept in the global DB until the PID of B in the server is created. When the PID of B is created, the server did a full lookup to the DB in order to find out what messages that is not received by B. My question is that: 1. Does the server evoke a trigger to lookup the global database whenever a new PID entry is formed? 2. If the server evoke a lookup trigger to the global DB with an assumption of there maybe a million of pending messages in the global DB. Does looking up without updating the global DB or indexing could scale up the system? 3. What is the main core /pattern of every real life system? Does multiple queries by giving heartbeat will slow down the performance?
@meiliangwhut
@meiliangwhut 4 жыл бұрын
Steven Candra the design listed in the video is a poor design. I cannot believe he is putting the pid in the database. The thread id is transient.
@nitinkulkarni7942
@nitinkulkarni7942 4 жыл бұрын
@@meiliangwhut I dont think, he is saying to store the pid in the DB. He is storing the uid of the user B and the message for user B. When user B connects, and reports that is it connected, we have to find all undelivered messages and send it to user B. Also even though pid is transient, it will alive while the connection is on. You have to know which messaging server the receiver is connected to
@salesforceben
@salesforceben 4 жыл бұрын
this is fantastic.
@adipratapsinghaps
@adipratapsinghaps 5 жыл бұрын
So are you talking about running a process for every client? Which keeps reading from queue?
@akn4336
@akn4336 5 жыл бұрын
Very good video, thank you. qq! what if client B is connected to another server? How does server A (that client A is connected) communicate to all other servers and check to see if client B has any online process there?
@jiayangsun7309
@jiayangsun7309 4 жыл бұрын
Personally, I think .(1) The message receiver and message delivery should be decouple into 2 separate service, and they could be fully stateless. They can be connected with a message queue service or sit behind service discovery directly. Put them in a single executable and pass message between process is feasible for very small user base, but it's not scalable at all. Besides, It makes the "Mess SERVER" hard to test. (2) If you have an abstract concept "channel" or "session" here, then it's easy to forward message with rpc or write it into DB. (3) real-time message is time sensitive and has high frequent requests. It's not a very good idea to write all message into DB. Instead, I would say we should only write message for offline users into two level DB (Memory + persistent).
@kushangowda
@kushangowda 4 жыл бұрын
What did I just hear? New thread/process to handle each peer? We are talking about billions of peers together here!
@ryan-bo2xi
@ryan-bo2xi 4 жыл бұрын
What is your idea ? Any standard http server handles request processing creating multiple threads unless you are using CGI.
@08himanshu
@08himanshu 5 жыл бұрын
Hi Naren, One Doubt, If the thread of another user is on different messaging server, how the communication is happening between two nodes handling different connections of the same conversation. Sorry, if I am missing something
@user-oy4kf5wr8l
@user-oy4kf5wr8l 4 жыл бұрын
U r amazing Guy!!! We love u we love u we LOVVVVVVVVVE U !!!!
@phoenixbird6834
@phoenixbird6834 5 жыл бұрын
When I saw this video, I had doubts that WhatsApp’s messaging server can handle 10 million concurrent connections. Those were arose on the basis that setup would hit limit of 65k because all the connections to the back end server would be from the load balancer, that means source ip, destination ip, destination port would be same for each connection. Then only variable would be source port. So load balancer won’t be able to create more than 65k connections. But I learnt that this can be solved by making backend server listen on multiple ports due to which we can have 64k * (no. of ports on which backend is listening), which can easily overcome 10 million connections limits (given that throughput of application server is high enough).
@adithyaks8584
@adithyaks8584 3 жыл бұрын
One thing I don't understand is how many threads will be active in the service instances and clarity around thread management. Also let's say we have millions of connections in one server, will there be calls to other servers for contacts who have connections in other server.(If so this could be the reason for some delay that we experience when contacting some remote contacts) Rest is superb!
@kambalavijay6800
@kambalavijay6800 3 жыл бұрын
What in case client 1 and 2 are connected to different messaging server?
@nakulkumar9415
@nakulkumar9415 5 жыл бұрын
What about the low level design? Dont you think if MySQL tables are used they cannot handle queries in millions? Please explain that also.
@akashmahalik8001
@akashmahalik8001 2 жыл бұрын
I thought my dog was barking but it was in the video lol.
@anandkumar2058
@anandkumar2058 5 жыл бұрын
good video, can you make a video on design of a video calling service.
@dulajmanjula7271
@dulajmanjula7271 4 жыл бұрын
Thanks a lot 👍
@weibo4413
@weibo4413 5 жыл бұрын
I prefer the big whiteboard you used. LOL
@rahulsharma5030
@rahulsharma5030 3 жыл бұрын
you are making complex things so simple.I did not know how 27 mins pass and know i feel like i know a lot of things.Thanks a ton.
@mohitladia
@mohitladia 3 жыл бұрын
Great content!!
@user-lw3ws6ec2v
@user-lw3ws6ec2v 5 жыл бұрын
It would be impossible to use system threads for an application like Whatsapp so it is definitely Erlang's actors
@WalkingArchive
@WalkingArchive 4 жыл бұрын
@@shaaradpandey5546 It won't scale.
@WalkingArchive
@WalkingArchive 4 жыл бұрын
@@shaaradpandey5546 spring? no. It depends on how much users do you need to support. forget about spring, that's 90s tech
@Codeness23
@Codeness23 3 жыл бұрын
Even actors are threads, all you gotta look at is whether they are scaling across servers or on the same server.
@aneeinaec
@aneeinaec 3 жыл бұрын
Yes... He is explaning Erlang OTP framework in simple way... Only super light weight threading mechanisms will scale like this... WhatsApp itslef uses Erlang OTP I guess.
@odionedwards5538
@odionedwards5538 Жыл бұрын
😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊
@NeemiasJunior1
@NeemiasJunior1 4 жыл бұрын
Very good video, just a point that needs more attention is at 14:33 when you talk about threads and process inside the message service. Actually this is not strictly true, actually they use green threads inside the BEAM machine which are totally different and much more scalable than a real CPU thread per connection. For more info I would recommend the reading on en.wikipedia.org/wiki/Green_threads and en.wikipedia.org/wiki/C10k_problem
@9986698971
@9986698971 2 жыл бұрын
I believe sending receiving txt messages when clients are offline is done using a lightweight connection . For other use case of media files https protocol is being used . what prompted for this decision as only difference is payload
@dev-skills
@dev-skills Жыл бұрын
0:53 - Group chat is also an important use case of Whatsapp
@aakashjana6225
@aakashjana6225 4 жыл бұрын
I have some questions though 1) how are users identified/distinguished from the senders device before the message reaches the server. 2) how could I possible create such a connection in Django?
@allenhoung9887
@allenhoung9887 5 жыл бұрын
love your video
@adipratapsinghaps
@adipratapsinghaps 5 жыл бұрын
19:40 So when a new process is spawned when user B is back online, and since you are just storing uid and msg in the DB, and when that process reads msgs for B in the table, how does B know who is the sender of the msg? Shouldn't you be storing the sender_uid too in the db? Because you are sending the msg to B, but since B doesn't have the sender information, in which chat will it show the message?
@santoshdl
@santoshdl 3 жыл бұрын
in think message itself will be stored with sender_id on it. the app will parse the message into the user and message. in fact message here will be an array with message, id, timestamp, group_name etc. IMO
@PoonamSharma-ki4wc
@PoonamSharma-ki4wc 5 жыл бұрын
Hi Naren how does a user connected to one server communicates to a user connected to a different whatspp server
@akshaygupta9625
@akshaygupta9625 4 жыл бұрын
Why there is a need for separate Http server to send images or audio files? Why can't we use the message server directly?
@dev-skills
@dev-skills Жыл бұрын
3:30 - Should also clarify with the interviewer - how many messages per day will be sent by a user on average.
@sanjeev123455
@sanjeev123455 Жыл бұрын
You there! There is no videos from your end from last 2 year!
@bobbysugianto5744
@bobbysugianto5744 5 жыл бұрын
Genius! are you WhatsApp engineer? :D
@jollysrivastava3326
@jollysrivastava3326 3 жыл бұрын
Really helpful.
@Daniyar52
@Daniyar52 3 жыл бұрын
great job!
@cesar3228
@cesar3228 5 жыл бұрын
where is the xmpp server going? is the messaging server?
@aakashjana6225
@aakashjana6225 4 жыл бұрын
Also what if Client's a and b are connected to different servers.
@bbs32
@bbs32 2 жыл бұрын
Thanks. Is there any messaging framework that I can hands on and play with?
@AbhishekKumar-yu2fy
@AbhishekKumar-yu2fy 4 жыл бұрын
Hi @Tech Dummies, Thanks for this video. But i have one doubt. As you have mentioned at 15:47 minute of this video, for every active client there would be a corresponding thread/process and a queue. But my point is - isn't it taking unnecessary space in memory just for being active. bcz whatsApp has billions of users. And if millions are just active( they are not doing messaging or call) , for them also process and queue will be created. Thank You !
@foysolahmedshuvo706
@foysolahmedshuvo706 Жыл бұрын
I came here to ask the same question. Anyway, do you have any answer / Explanantion for this? though the question you asked two years ago. Thanks!
@walaaelsayed8764
@walaaelsayed8764 4 жыл бұрын
Amazing and very simple explanation for such a complex system. I have a question about managing unique ID for every message for million different users. How could they do that? Thanks 😊
@TechDummiesNarendraL
@TechDummiesNarendraL 4 жыл бұрын
user_id + uuid ?
@jagjotsinghwadali3535
@jagjotsinghwadali3535 Жыл бұрын
Thank you for this lecture . Further, I have a query regarding design Problem Statement:- I have subcategories defined under Vehicle Class as :- Bike ,Car, truck, bus Further, there are different variants under each four categories Bike :- sport, standard Car :- sport, standard, electric Truck :- Mini Truck , Power Truck Bus:- Mini Bus, AC Bus I have to calculate the price based on variants. For example Mini Bus price. Question:- How should I define the classes ? 1. Keep only vehicle as a class . 2. Keep Vehicle as a base class and make bike, car, truck , bus as subclasses and they should inherit the base class. 3. make sports bike as class which will inherit bike class which will further inherit vehicle class
Redis system design | Distributed cache System design
34:10
Tech Dummies Narendra L
Рет қаралды 282 М.
NETFLIX System design | software architecture for netflix
51:26
Tech Dummies Narendra L
Рет қаралды 424 М.
1❤️
00:17
Nonomen ノノメン
Рет қаралды 13 МЛН
Вечный ДВИГАТЕЛЬ!⚙️ #shorts
00:27
Гараж 54
Рет қаралды 14 МЛН
버블티로 체감되는 요즘 물가
00:16
진영민yeongmin
Рет қаралды 108 МЛН
The child was abused by the clown#Short #Officer Rabbit #angel
00:55
兔子警官
Рет қаралды 24 МЛН
LEARN BITMAP INDEXES
13:20
Tech Dummies Narendra L
Рет қаралды 70 М.
Amazon Interview question: Learn hashing and consistent hash ring
19:26
Tech Dummies Narendra L
Рет қаралды 153 М.
Rate Limiting system design | TOKEN BUCKET, Leaky Bucket, Sliding Logs
35:55
Tech Dummies Narendra L
Рет қаралды 268 М.
How to Crack Any System Design Interview
8:19
ByteByteGo
Рет қаралды 328 М.
How row oriented and column oriented db works?
21:26
Tech Dummies Narendra L
Рет қаралды 40 М.
Yelp system design | amazon interview question Yelp software architecture
57:31
Tech Dummies Narendra L
Рет қаралды 80 М.
ОБСЛУЖИЛИ САМЫЙ ГРЯЗНЫЙ ПК
1:00
VA-PC
Рет қаралды 1,1 МЛН
Choose a phone for your mom
0:20
ChooseGift
Рет қаралды 6 МЛН
Самый дорогой кабель Apple
0:37
Romancev768
Рет қаралды 284 М.
When you have 32GB RAM in your PC
0:12
Deadrig Gaming
Рет қаралды 1,9 МЛН