[rabbitmq-discuss] AMQP library APIs

Michael Klishin mklishin at gopivotal.com
Wed Aug 7 22:43:57 BST 2013


Alan Antonuk:

> Interesting, whole connection recovery is something I haven't really considered.  Any reason why individual channel recovery on error isn't implemented?

Bunny's automatic recovery is for network failures, not connection exceptions (which are rare
and severe, and should be as visible as possible).

> I guess one thought I have had is to abstract away AMQP channels from the public API.

I don't think this is a good idea. First, it is part of the protocol
and developers may want to use that. Second, error handling for operations such as queue.declare
or basic.publish, is per-channel. Finally, basic.qos setting, delivery tags and publisher confirms
are all per-channel.

Bunny before 0.9 tried to completely hide channels in the API. I don't think it's gained it any
new users but it surely annoyed those who needed to use more than one channel. Shaving off one
line from "Hello, world" is as much as it did.

Bunny 0.9 requires opening channels explicitly and I haven't heard a single complaint about that.
--
MK

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 495 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20130808/483b1781/attachment.pgp>


More information about the rabbitmq-discuss mailing list