[jdev] Help choosing the right technology

Michael Weibel michael.weibel+xmpp at gmail.com
Tue Nov 13 08:07:14 UTC 2012

> Noting that I'm an expert in neither of these things - APNS is largely
> going to be sending notifications to the user, which is unlikely to be
> useful in a machine<>machine client. GCM seems to be duplicating some
> of the functionality you'd get from the XMPP channel.


> It's worth noting that using load testing tools on XMPP servers (at
> least the higher performance ones) almost always leads to performance
> testing of the load testing tools, rather than the server itself, as
> the server will typically process the data faster than the tool will
> send it.

Yes, that's my experience as well ;) What tsung provides is that you can relatively easily use multiple machines to do the load testing together which might lead to actually load testing the servers. 

> They're still useful, though.
>>>> Message reliability is very important (as said previously). Also you'll need an XMPP library which is robust. There's e.g. asmack[3] for Android and e.g. XMPPFramework[4] for iOS.
>>> There are more choices than just these (and these may not be the best choices).
>> Could you please elaborate on this? As I was searching for libraries I couldn't find a lot more than those.
> Being entirely partisan, I'd use Swiften on iOS. There's also a
> Swiften branch for Android (for a C++ interface), and I expect Stroke
> (Java) will support Android pretty soon. I'm sure there are other
> possible libraries, too.

Interesting. Thanks for the hints.

> I'm encouraging people to do a bit of digging and see what the options
> are, and not pick the first library/server/client/whatever that's
> mentioned.

That's indeed important. 

More information about the JDev mailing list