Real Time Updates easy
When a mobile app is closed/backgrounded, it cannot keep a WebSocket open. How does it receive real-time alerts (like 'New Message')?
- A It wakes up every second to check.
- B It uses magic packets.
- C It relies on OS-level Push Notification Services (APNS/FCM) which maintain a single persistent connection to the device.
- D It uses SMS.
Answer: C. It relies on OS-level Push Notification Services (APNS/FCM) which maintain a single persistent connection to the device.
To save battery, the OS (iOS/Android) kills background apps. The OS itself keeps one low-power connection to Apple/Google. Your server tells Apple/Google, and they push the alert to the device.
One system design question a day, with spaced repetition so the ones you miss come back.
Get the appRelated questions
- For a human user, what is generally considered the maximum acceptable latency for an interaction to feel 'Real-Time' (e.g., typing in a Google Doc)?
- If you want to update a news feed on a website every time a new article is published, what is the simplest (but least efficient) 'Real-Time' technique?
- In a persistent real-time connection, what is the purpose of a 'Heartbeat' or 'Ping/Pong' message?
- Why is Short Polling considered 'Chatty'?
- Server-Sent Events (SSE) are ideal for which type of real-time application?
- What is the primary advantage of using a WebSocket over standard HTTP for a chat application?