Whatsapp system design | system design interview

preview_player
Показать описание
System design in 15 minutes!

Here is the full system design playlist:

More videos coming soon...
Рекомендации по теме
Комментарии
Автор

Sharing a typing indication requires a bidirectional connection thus existing WebSocket connection is being used but sending presence status to all contacts in realtime does not make any sense thus in order to maintain a presence (online/offline) status we are not using a web socket connection but sending the last seen epoch from the user device/browser client to the user management service every minute. User management service maintains a sliding window in the cache for active users and if it does not receive the last seen epoch for the last 3 consecutive minutes it marks the user as offline. Also, we are maintaining the presence (online/offline) statuses and the last seen for the top 10 most interacting contacts in the cache for online users. while for a new private chat, we would have to fetch the last seen and presence status from DB. Hope this helps.

minutesystemdesign