[rabbitmq-discuss] Caching proxy for cloud HA
David Wragg
david at rabbitmq.com
Tue May 25 22:51:40 BST 2010
Hi Jon,
Jon Brisbin <jon.brisbin at npcinternational.com> writes:
> Actually, HAProxy does just about everything I need so far, so I'm
> just using that to front a standard cluster.
>
> The HA I was thinking of would basically be a proxy pretending to be a
> single server. Incoming requests (client -> server) go out to all
> backend servers and responses (server -> client) go back to the client
> by using the first responder. The idea is that all backend servers are
> equal and no matter which one replies, that answer will be valid. It
> seems to me that any cloud or HA solution is going to involve a
> middle-man of some sort. No matter what service it is, something like
> HAProxy will have to be integrated into the platform to allow dynamic
> membership on the backend with a fixed front-end.
What you describe doesn't seem feasible for AMQP, at least in
general. Matthias mentioned a few reasons, but I expect it's possible
to come up with many more objections.
It might be possible to get further by making application-specific
assumptions. For example, if you know that certain messages are part of
idempotent or cacheable request-response exchanges. But once you start
making such assumptions, it's questionable what the result has to do
with AMQP. Why not just use an application-specific protocol instead,
or HTTP, which explicitly covers issues such as cacheability and
idempotency?
David
--
David Wragg
Staff Engineer, RabbitMQ
SpringSource, a division of VMware
More information about the rabbitmq-discuss
mailing list