[rabbitmq-discuss] does native web xmpp plugin in rabbitmq makes sense?

ofir r ofirr.dev at gmail.com
Thu Feb 4 13:33:01 GMT 2010


Ben

As I see it, RabbitMQ is best used for routing messages with minimal or no
processing.
You might compare it to Nginx that can modify URLs and http headers but you
don't want to put your application logic there.

AMQP with RabbitMQ can provide the basic features of XMPP.
An app server or a RabbitMQ plugin is needed to handles some logic and db
integration.
Presence:
------------------
- Each user have a fanout exchange.
- Each online user has bindings to fanout exchanges of users in his roster.
- When a user changes his presence he publishes it to his exchange.
One To One:
------------------
- Each user has a queue named as his jid.
- Messages published to the direct exchange with the user jid.
- You can name the queue with unguessable string if you want them to be
private.
Muc:
-----------------
- A fanout exchange with bindings to participants queues.

If you need more advanced XEPs, using AMQP might not be a good idea.
MUC, for example, support affiliations, roles and privileges (owner,
moderator, member, guest, room history, nickname...).
The same message might be sent with a different syntax to different users
according to their privileges.
When messages need processing and complex ACL you loose the power of AMQP.

ofir
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20100204/f1f23a3d/attachment.htm 


More information about the rabbitmq-discuss mailing list