Tuesday, 10 July 2007

a pure RESTful way of working with ActiveMQ queues

I've been snowed with the day job but really wanted to reply to niklas's post on A RESTful queue. It looks a great suggestion; I need to catch up on the discussion.

The REST support in ActiveMQ isn't really pure REST; as it uses non-idempotent GETs as a bit of a hack - though it does make it very easy to work with :). I’d LOVE a nice, proper, RESTful API to ActiveMQ. Though properly exposing message queues efficiently over REST while handling concurrency is a tricky problem, but its looking like some consensus is emerging. Niclas's suggestion sounds about right to me too.

Though I guess a proper REST API would involve more complexity on the client side (e.g. having to do a POST then follow a Location header to then do a DELETE or whatever). So even if we had the worlds most RESTful API, some folks might still want to use the non-idempotent GET hack (particularly if they no there's no caches in between :).

Ideally I was also thinking we should expose the entire broker on the Atom Publishing Protocol; so an APP client could discover all the queues & topics etc.

Am a bit snowed right now but ASAP I'd love to get a proper REST and APP protocol for ActiveMQ...

No comments: