No, I don't want to make it stateful. What I'd like is basically for
the application to see the AMQP client as an HTTP client. All the AMQP
front end does is take an incoming HTTP request, serialize it, and
pass it to the message queue. The AMQP client on the backend receives
it and translates it into a normal http request that gets sent to the
application. The application does whatever it wants, and returns an
HTTP response, just like it would if it were being accessed normally.
This request then gets passed back to the front end via AMQP and the
front end translates it into the HTTP response that the end user is
waiting for. This way I can spawn lots of front end threads, say if
I've got a mixture of slow and fast clients, and my application
servers can complete requests as fast as they receive them, because
the AMQP backend client receives the HTTP request as fast as it is
generated. AlexKane's suggestion is interesting as well, I shall have
to look into it. Redis is as high on my 'I'd like to use this to do
awesome things' as AMQP is :)
--
Aleks Clark