We have been evaluating Aerogear Unified Push and things are going well so
But up until now we have only had a small numbers of users (in the tens)
registering or requiring a push.
We are looking at adding push functionality into one of our core products.
Last time we did a major revision to our core product we had in the order of
half a million users upgrade to the new version in the first 24 hours.
Unfortunately I don't have stats to hand on the busiest hour during that
If we add push to our Android and iOS versions of our application and a
large proportion of our users accept the new permission in app we could be
looking at hundreds of thousands of registrations in a day and tens of
thousands in an hour. Note that we are not migrating from another provider
so this will be a "cold start".
So my questions are:
- Has anyone used Aerogear at this sort of scale? (happy to talk out of band
if you don't want to put your name out in a forum)
- What is the best deployment architecture to go for in this case?
- Similar to the above question - will Aerogear work nicely behind a load
- If there are multiple instances of the app running can it take advantage
of read slaves if DB is a bottle neck?
- Has anyone done any sizing or transaction rates against AWS instances?
- Do any of the database back ends perform better or worse for this sort of
Obviously once we get all of our users on we will want to push them some
messages. So has anyone done pushes to hundreds of thousands of users using
Aerogear? What was the approximate time from the start to the end of the
Note I've read JIRA and haven't seen much related to scalability except
- https://issues.jboss.org/browse/AGPUSH-661 from
I also note with interest that dealing with pushing messages at scale isn't
without its challenges
Any help greatly appreciated.
PS - Assuming we do go with Aerogear we will happily write up our findings
on how it ended up ;)
View this message in context: http://aerogear-dev.1069024.n5.nabble.com/Large-user-base-with-Aerogear-U...
Sent from the aerogear-dev mailing list archive at Nabble.com.
I'm working on a demo of UPS pushing to iOS, Android, Windows, as well as
Firefox OS using our Cordova plugin.
But as you know, with FFOS it is not that simple - since SimplePush
protocol allows to transfer just incremental versions, we are not able to
deliver any interesting message.
UnifiedPush Server could be a correct place where we unify and shield our
users from this limitation:
my idea is storing the message on UPS under the SimplePush endpoint URL.
Once the message with version reaches the client, he would contact UPS to
retrieve this message under a key ( pushEndpoint, version ).
The messages could have default built-in TTL to allow periodic cleanup.
What do you think?
For the next release we're looking to create some SDKs for iOS, Android,
Our preference is to build on top of what Aerogear has already developed,
or even simply use the AeroGear SDK's with a different set of connection
As the AeroGear team are well versed in various issues of developing SDKs,
I was hoping to get some advice as to the best way for us to develop ours
such that they're only a very thin layer on top of AeroGear's SDKs.
Thanks in advance!