Also, I wish people were more adventurous with XMPP in general and stop thinking that it's just a chat protocol.
Also, I wish people were more adventurous with XMPP in general and stop thinking that it's just a chat protocol.
For server-to-server passing, prefer (in order):
1. redis pubsub
2. zeromq (if you know what you're doing)
3. amqp (if you think you need it)
4. populate events to a DB transactionally then consume later
Only use XMPP if your problem domain is "someone is paying me $LOTS to set up an XMPP service."Specifically, what if the scenario is enabling communication between servers that you have limited control over and do not have shell / root access to install or manage a server? In this case, there wouldn't be an opportunity to install redis, 0mq, or amqp. The database approach might work, but the servers are distributed and might not allow remote connections. Why wouldn't XMPP work in this scenario using a public XMPP server?
I'd like to learn more!
My problem with XMPP is best illustrated by XEP-0060, the pubsub extension proposal: http://xmpp.org/extensions/xep-0060.html -- I don't have time to figure out that monstrosity.
AMQP is at the limit of complexity as far as pubsub things go. It's complex enough to need explaining, but simple enough were you can understand it in an hour.
If you want an in-depth discussion war about pros and cons, ask your question both on the redis mailing list and on the rabbitmq mailing list. I'd be interested in seeing how both communities respond to your requirement of running on limited access servers.
I wish I could use zeromq or redis or amqp, but it just is not an option in this environment.
I was wondering if there was some solid technical reason to not use XMPP, but it looks like there isn't one... it's just a matter of personal preference and wanting to avoid spending time on something. I'll charge ahead with the XMPP implementation in our scenario unless there's a good reason someone can see why not to.
Site streams requires making one connection per 100 users; perhaps they were having trouble sharding with XMPP?