System Design · Senior · Pytanie 12 z 75
Jak zaimplementować status „online” dla milionów użytkowników?
- ✓Poprawna odpowiedź: Heartbeat z TTL: status wygasa bez sygnałów od klienta
- 2Zapisywać status w głównej bazie przy każdym ruchu myszy
- 3Odpytywać każdego użytkownika z serwera co sekundę
Wyjaśnienie
Klient wysyła sygnał co N sekund, a serwer przechowuje klucz z TTL w szybkim magazynie (Redis). Rozłączenie bez jawnego wylogowania wykrywa się po wygaśnięciu. Zmiany statusu rozsyła się tylko tym, którzy je widzą.