2009/2/2 Andrew Wright <[email protected]>: > Essentially, yes. Each app node is responsible for a subset of the data > processing (we're looking to implement an order matching engine/exchange).
OK - a domain quite familiar to me. > The big difficulty we have is a hard requirement for in-order message > processing. This unfortunately rules out load balancing from a queue across > active-active client pairs. We'd rather just route incoming msgs to a > store-and-forward topic, and accept a small processing pause during app node > failover. Do you have the requirement for total ordering or is it just a partial ordering, i.e. you need to process requests for a given order id in the right order (i.e. new/amend/cancel for a given order id)? > Once a message has been read from the topic, it is written into the TC > cache. At that point we can failover processing to a different node without > any message or data loss. Does TC now support memory replication between the server nodes? Previously it required shared storage which meant the performance sucked. > We were rather hoping that qpid clients (eg. the Java client) would be able > to failover against a HA broker pair without the use of a dedicated load > balancer. Yes, it can. It implements heartbeats and can automatically resubscribe. Carl - does the active/active propagate subscription info across nodes of the cluster? >>> 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). > > Absolutely - and we haven't ruled anything out yet. We're going to start > with the lowest cost option, and if it doesn't work out, then have a > rethink. What are your throughput and latency requirements? This is an interesting domain since it blurs the distinction between messaging and in-memory data grids. RG --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:[email protected]
