[rabbitmq-discuss] New open source PHP Amqp implementation

Mark Steele msteele at beringmedia.com
Tue Jan 11 16:32:48 GMT 2011

Hi Robin,

A few questions:

   - Is it possible to make your class work with SSL connections? (Use php's
   stream context api instead of creating plain sockets?).
   - Will it behave properly in an app that uses signals/alarms?

Nice work, looking forward to testing it.

Mark Steele
Bering Media Inc.

On Sat, Jan 8, 2011 at 8:46 AM, Robin Harvey <harvey.robin at gmail.com> wrote:

> Hello Rabbiteers!
> I hope I'm not being importune by posting this message to let you know
> about an LGPL Amqp implementation I've recently written for PHP 5.3:
>  https://github.com/BraveSirRobin/amqphp
> I've implemented the 0.9.1 Amqp spec using a code-generation approach.  If
> any of the more experienced Amqp people were able to take a quick look at my
> code in order to provide feedback, or have any other advice I'd be very
> grateful.  There's a UML class diagram showing the implementation classes
> here: https://github.com/BraveSirRobin/amqphp/raw/master/diag/amqp.png
> Secondly, I have a question regarding using basic.consume on multiple
> channels.  Is it possible for message frames to be mixed up for
> basic.consume?  Section 4.2.6 of the spec says this:
> *Content frames on a specific channel are strictly sequential. That is,
> they may be mixed with frames for*
> *other channels, but no two content frames from the same channel may be
> mixed or overlapped, nor may*
> *content frames for a single content be mixed with method frames on the
> same channel.*
> What I find confusing is that a single "message" consists of a frame
> header, a content header and one or more content frames, for large messages
> there can be many content frames; a single message contains many frames.
>  For example, is it possible to get a content header frame on channel A,
> then a content header frame on channel B, then the message content for
> channel A, then the message content for channel B?  The testing I've done so
> far indicates that RMQ always sends basic.deliver messages sequentially - it
> sends the content header then all content frames for a single message on a
> single channel in a non-interleaved fashion.  Is this always the case?  Is
> this what the spec guarantees?
> Many thanks,
> --Robin
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20110111/9ffe87d9/attachment-0001.htm>

More information about the rabbitmq-discuss mailing list