3 ms·
Hey all, one of the authors here. I wanted to provide some more context on the questions asked here. - Most of the tech described in the article is something y
by madan 6y ago
Hey all, one of the authors here. I wanted to provide some more context on the questions asked here.
- Most of the tech described in the article is something you will have to do whether you choose gRPC or websockets. Most of the tech was about sharding and maintaining sticky connections and load balancing those connections across servers based on load.
- The heartbeat introduced on top of HTTP was needed to detect the broken connection faster and recover quickly as some of the payloads were very latency sensitive. Note that these connections are not 1:1 connections but have multiple hops across low bandwidth mobile networks.
- At the time we developed this initially in 2014, most of the WebSockets libraries would fallback to longpolling when the network connections were unstable. We explicitly went away from long polling. Since server->mobile payloads are the larger of the volumes, we settled in on SSE. Netty and the netty libraries provided most of the implementations of SSE out of the box.
- perfectstorm 6y agoOn iOS, what happens if the user declines to allow notifications? Can you send silent notifications even when the user declines permission?
- samat 6y agoYes except when user disables 'background app refresh'. https://stackoverflow.com/questions/30644343/is-silent-remote-notifications-possible-if-user-has-disabled-push-for-the-app https://stackoverflow.com/questions/30644343/is-silent-remot...
- madan 6y agoThis push is not the native push like FCM/APNS that show notifications to the users. These are payloads that update the app (e.g., location of the cars on the map or eta) and never show any notifications to the user.
- lsb 6y agoAt a certain mobile security shop ;) there was a push service rollout, back in 2013, and it was basically pings over the network, and mailboxes in Cassandra, no Redis layer atop. The volume was much smaller (~1hz), so it's interesting to see how the ecosystem has evolved, and how the volume requirements change the shape of the system
- madan 6y agoGood times!