2009/1/30 Andrew Wright <atwri...@mac.com>:

> Actually this was to integrate with Terracotta. TC needs some sort of load
> balancer to get locality of reference (for performance) - qpid would fit the
> bill here, via hierarchical topics. There'd only be a single subscriber on a
> topic at a time. TC clients are notified as nodes join/leave, so can take
> over the processing of a given topic if the primary processor goes away.

So you have a number of nodes which access Terracotta shared storage
and you want to push jobs into those nodes, with some kind of affinity
between job types and nodes in order to be able to get the locality of
reference.

Are you pairing the nodes up so that each node has a "backup" that
will take over if the primary dies?

The issue with using a topic is that recovery is made more complicated
- unless the backup also subscribes to the messages and just throws
them away. I would be tempted to use a queue with the headers exchange
and just load balance between the primary and secondary (effective
having active/active pairs with the clients). I'm obviously making a
lot of assumptions about your application's suitability for that
approach!

As far as the broker goes, I think that is an orthogonal question. I
would run active/active brokers behind a hardware load balancer such
as an F5. That will mean the client doesn't have to deal with failover
plus you don't have to use shared storage so should give higher
throughput (Carl can you confirm?).

> As you say, Coherence has this sort of thing built in. Unfortunately it also
> comes with a fairly hefty Oracle price tag...

Yes it is expensive but it is a much more sophisticated product (or
certainly a "different" product) than Terracotta - I think it would
depend what your non-functionals are whether it is worth using it (or
Gemfire, IBM ObjectGrid or Gigaspaces which are credible Coherence
competitors).

RG

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscr...@qpid.apache.org

Reply via email to