I am asking this question after doing some research at my end and going through answers like one in :
Rate Limit Exceeded error when using Google Cloud Messaging API
I am trying to build an application which I would honestly like to be scalable up to 2-3 million devices. I know it's a far-fetched number but I have to plan accordingly. Now one part of my app is periodic updates (notifications - textual with max 500 characters). I would like to use GCM for these updates rather than creating my own push infra (or using third party paid tools). Although resources over the web state that:
"To ensure a stable service, there is a per minute / per device app upper limit on the number of messages that can be sent from a backend server. This limit is set high so most well behaving apps should not be affected, all apps should however be prepared to receive this error code."
I can't seem to find a definitive answer which can quantify the terms "well-behaving app" and "per minute/device" limit.
Questions
Is there a quantified rate limit or is it all subjective?
In case I have a scenario wherein I have to send maybe 1 notification/10 minutes on maybe 2 million registered devices, will the current GCM environment be able to scale? I am assuming I will be using a single sender ID for a single app.
Can anyone share their experience with GCM for large scale deployments?
Do I have an advantage using third party paid apps?
What is the kind of latency/message-drops that are usually associated with GCM. As in, is this a good candidate for "low latency/high availability" sort of scenarios?