|
View:
New views
4 Messages
—
Rating Filter:
Alert me
|
|
|
AMPQ vs XMPP and RabbitMQ vs ejabberdHi,
Can anyone please explain the differences between AMPQ and XMPP.
Are both addressing the same problems?
What are the differences between RabbitMQ and ejabberd?
Both are written in erlang.
Is the only difference is the protocol they support or are there more differences in quality, extensibility, license...?
Thanks
_______________________________________________ rabbitmq-discuss mailing list rabbitmq-discuss@... http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss |
|
|
Re: AMPQ vs XMPP and RabbitMQ vs ejabberdMark
This excellent blog post by Steve Jenson goes some way to addressing your question. http://saladwithsteve.com/2007/08/future-is-messaging.html AMQP is aimed at Business Messaging which means delivery semantics can be much more specific ("at least once", "exactly once", "publish to these subscribers only", "persist", "be durable"). This means that, as Steve points out, the notion of 'presence' is replaced by the more general notion of a subscription. AMQP's model has routing exchanges and queues which can be composed into pretty much any messaging scenario. Finally, AMQP is a binary protocol whereas XMPP is XML. All these characteristics make AMQP more fundamental in some sense. Really, it complements XMPP which is good at Instant Messaging. The great thing about this is that large Instant Messaging infrastructures exist and are used by lots of people. AMQP will be very good for cases where human-human messaging is only a part of the solution - for example business integration and reactive event monitoring. In terms of license and quality differences between ejabberd and RabbitMQ - well they are both open source. RabbitMQ is MPL 1.1 and (iirc) ejabberd is GPL. I think that because AMQP is more general and comprehensive than XMPP, it is arguably more 'extensible', and hence so is RabbitMQ, but you may find it easier to locate XMPP tools as it has been around for longer. RabbitMQ is a high quality implementation whose users often report happiness with its stability. That said, ejabberd has been around even longer and its scalability and manageability, is why we chose erlang for RabbitMQ :-) If you wish to choose between ejabberd or RabbitMQ, then ask yourself if you are solving an XMPP type of problem or an AMQP type of problem. Many solutions could quite happily use both. For example: http://blog.folknology.com/2008/05/31/reactored-my-packet-based-future-finally-emerges/ Cheers, alexis On Sun, Jun 1, 2008 at 4:59 PM, mark peleus <mark.peleus@...> wrote: > Hi, > > Can anyone please explain the differences between AMPQ and XMPP. > Are both addressing the same problems? > > What are the differences between RabbitMQ and ejabberd? > Both are written in erlang. > Is the only difference is the protocol they support or are there more > differences in quality, extensibility, license...? > > Thanks > > _______________________________________________ > rabbitmq-discuss mailing list > rabbitmq-discuss@... > http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss > > -- Alexis Richardson +44 20 7617 7339 (UK) +44 77 9865 2911 (cell) +1 650 206 2517 (US) _______________________________________________ rabbitmq-discuss mailing list rabbitmq-discuss@... http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss |
|
|
Re: AMPQ vs XMPP and RabbitMQ vs ejabberdAlexis
Thank you for your detailed answer.
Isn't pubsub implementation in ejabberd + a custom client can address:
AMQP is aimed at Business Messaging which means delivery semantics can Does binary streams have any other advantage over xml other then smaller size?
Is AMQP suitable for streaming video and audio?
Can AMQP has something like http-bind (BOSH) implemented, letting web clients interact with the server.
I've read the post about Reactor but didn't understand much.
Any news about that?
Mark
On Sun, Jun 1, 2008 at 7:17 PM, Alexis Richardson <alexis.richardson@...> wrote: Mark _______________________________________________ rabbitmq-discuss mailing list rabbitmq-discuss@... http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss |
|
|
Re: AMPQ vs XMPP and RabbitMQ vs ejabberdMark
On Sun, Jun 1, 2008 at 5:33 PM, mark peleus <mark.peleus@...> wrote: > Alexis > Thank you for your detailed answer. Thank you for your interesting and timely question. > Isn't pubsub implementation in ejabberd + a custom client can address: Um, yes up to a point. You *could* do pub-sub over many types of intermediary tech. For example Twitter does a form of pubsub in a way that appears to critically involve a database tier. The consquences of that decision are currently a debating point in the community... XMPP was not designed to do pubsub, it was designed to broadcast IMs and presence. This is why the XEP extensions have been proposed. Those are new, and implemented in afaik one ejabberd implementation. For all I know they are implemented really well - to be clear: I *don't know*. That said, a useful question to ask is - for which pubsub scenarios, possibly involving ordering, queues, delivery guarantees, and availability or reliability guarantees, is AMQP a better tool than XMPP+XEP? >> AMQP is aimed at Business Messaging which means delivery semantics can >> be much more specific ("at least once", "exactly once", "publish to >> these subscribers only", "persist", "be durable") BTW implementing these semantics in a system that scales and is stable and manageable, is really not trivial :-) > Does binary streams have any other advantage over xml other then smaller > size? Parsing speed, and embeddability, are similar benefits of binary over XML. The notion of a *stream* is orthogonal and brings with it the notion of conversational durability. There are some similarities between AMQP and SCTP, and bittorrent, in this regard. > Is AMQP suitable for streaming video and audio? Yes we have a demo on the RabbitMQ site. But to get carrier grade video streaming you'd want AMQP with smaller headers. > Can AMQP has something like http-bind (BOSH) implemented, letting web > clients interact with the server. There is a RabbitMQ client for HTTP and "AJAX" style coding. We would like more natural HTTP bindings - would you like to help? > I've read the post about Reactor but didn't understand much. > Any news about that? Well, I have cc'd the author... Cheers, alexis > Mark > > > > > On Sun, Jun 1, 2008 at 7:17 PM, Alexis Richardson > <alexis.richardson@...> wrote: >> >> Mark >> >> This excellent blog post by Steve Jenson goes some way to addressing >> your question. >> >> http://saladwithsteve.com/2007/08/future-is-messaging.html >> >> AMQP is aimed at Business Messaging which means delivery semantics can >> be much more specific ("at least once", "exactly once", "publish to >> these subscribers only", "persist", "be durable"). This means that, >> as Steve points out, the notion of 'presence' is replaced by the more >> general notion of a subscription. AMQP's model has routing exchanges >> and queues which can be composed into pretty much any messaging >> scenario. Finally, AMQP is a binary protocol whereas XMPP is XML. >> >> All these characteristics make AMQP more fundamental in some sense. >> Really, it complements XMPP which is good at Instant Messaging. The >> great thing about this is that large Instant Messaging infrastructures >> exist and are used by lots of people. AMQP will be very good for >> cases where human-human messaging is only a part of the solution - for >> example business integration and reactive event monitoring. >> >> In terms of license and quality differences between ejabberd and >> RabbitMQ - well they are both open source. RabbitMQ is MPL 1.1 and >> (iirc) ejabberd is GPL. I think that because AMQP is more general and >> comprehensive than XMPP, it is arguably more 'extensible', and hence >> so is RabbitMQ, but you may find it easier to locate XMPP tools as it >> has been around for longer. RabbitMQ is a high quality implementation >> whose users often report happiness with its stability. That said, >> ejabberd has been around even longer and its scalability and >> manageability, is why we chose erlang for RabbitMQ :-) >> >> If you wish to choose between ejabberd or RabbitMQ, then ask yourself >> if you are solving an XMPP type of problem or an AMQP type of problem. >> Many solutions could quite happily use both. For example: >> >> http://blog.folknology.com/2008/05/31/reactored-my-packet-based-future-finally-emerges/ >> >> Cheers, >> >> alexis >> >> >> >> >> On Sun, Jun 1, 2008 at 4:59 PM, mark peleus <mark.peleus@...> wrote: >> > Hi, >> > >> > Can anyone please explain the differences between AMPQ and XMPP. >> > Are both addressing the same problems? >> > >> > What are the differences between RabbitMQ and ejabberd? >> > Both are written in erlang. >> > Is the only difference is the protocol they support or are there more >> > differences in quality, extensibility, license...? >> > >> > Thanks >> > >> > _______________________________________________ >> > rabbitmq-discuss mailing list >> > rabbitmq-discuss@... >> > http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss >> > >> > >> >> >> >> -- >> Alexis Richardson >> +44 20 7617 7339 (UK) >> +44 77 9865 2911 (cell) >> +1 650 206 2517 (US) > > -- Alexis Richardson +44 20 7617 7339 (UK) +44 77 9865 2911 (cell) +1 650 206 2517 (US) _______________________________________________ rabbitmq-discuss mailing list rabbitmq-discuss@... http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss |
| Free embeddable forum powered by Nabble | Forum Help |