views:

56

answers:

1

Hi,

  • I have 20 messages/s, each 1 - 1.5 Mbytes.
  • I need High Availability (2 to 4 servers min).
  • I need low latencey (high daily volume -> full RAM prefered).
  • I need persistent poisoned messages queue.
  • Only few clients (about 16), locally.
  • I can have 12-16G bytes RAM per server (brooker).

Which JMS message queue / messaging would you recommend ?
On what configuration (CPU/RAM) ?

Can I propose optionnal NAS persistence (in case of final delivery failure) ?

Thanks

A: 

If you were to use WebSphere MQ you would need NFS v4 instead of NAS but other than that it fits your requirements if tuned accordingly. I would configure it with:

  • Circular logging for performance
  • NPMCLASS(HIGH) persists the messages on normal shutdown but can lose them in event of failure. Provides high performance in-memory transfers, deferring write until memory buffers overflow or QMgr is shut down.
  • BOQNAME/BOQTHRESH to automatically requeue poison messages after BOQTHRESH backouts.
  • WebSphere MQ cluster for workload balancing and horizontal scaling.
  • A supported UNIX/Linux platform.

I'm just guessing about the hardware requirements but I've seen very good throughput on average hardware. There are platform-specific performance reports available at the http://bit.ly/WMQSupportPacs page. They are the ones named MP*.

  • 8 to 10 GB of memory
  • 4-CPU

You'd definitely want to use WMQ v7 for this, on both the server side and the client side, instead of an earlier version.

Full disclosure: I'm an IBMer, I specialize in WMQ and I don't have any comparative suggestions for other transport providers. I trust others will weigh in so you can get a good survey of available choices, though.

T.Rob
yes, thanks.<br/>Any alternative product (redhat,BEA,apache...) ?