Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WebSphere MQ Low Latency Messaging - Does it have a JMS (or JMS like) API?

Tags:

java

jms

ibm-mq

We are currently using IBM MQ via JMS, but seem to be pushing through more messages than it can handle - strangely, the problem seems to be intermittent.

The messages are prices and thus dont need to be guaranteed, just need to be sent quickly.

As IBM have a Low Latency product, I am wondering if that is perhaps the better solution - but it does not seem to have a JMS api, or at least not easily visible.

Anyone know if there is a JMS api into the Low Latency product, or if the "unique" API it does have is JMS-like...

Alternatively, pointers for MQ tuning would also be appreciated... :)

like image 982
Chris Kimpton Avatar asked Oct 09 '09 14:10

Chris Kimpton


People also ask

Does IBM MQ use JMS?

The JMS specification defines a set of interfaces that applications can use to perform messaging operations. From IBM MQ 8.0, the product supports the JMS 2.0 version of the JMS standard.

Is MQ same as JMS?

JMS is the specification provided by Sun for messaging. MQ Queue is the IBM's implementation of JMS. Similary JBoss has its own implementation. JMS Queue is the generic term.

Is IBM MQ JMS compliant?

IBM MQ is both JMS 1.1 and JMS 2.0 specifications compliant. You can configure IBM MQ resources for applications (for example queue connection factories) and manage messages and subscriptions that are associated with JMS destinations in Liberty.

What is JMS in IBM MQ?

JMS stands for Java Message Service. JMS is a standard that defines how you can access enterprise messaging systems from Java programs. The JMS API is implemented by messaging service providers like IBM MQ to allow JMS client applications to access the provider's messaging service.


2 Answers

Definitely a low latency messaging product would be better suited to your problem, I am working on a project where we do something very similar using a low latency messaging product called LBM from 29West. It doesn't have a JMS api and I suspect most of the products in the low-latency space won't. There a large number of features that don't make sense in combination with these types of products (e.g. persistence, selectors, etc.). We found that writing our own simple api over the top of the messaging product to be fairly easy and gives use the flexibility to change products later and frees us from some of the bulk and verbosity of the JMS api.

Another option to consider would be JGroups.

29West have added JMS support to their messaging product line.

like image 104
Michael Barker Avatar answered Oct 20 '22 00:10

Michael Barker


Regarding "pointers for MQ tuning", on the SupportPacs page there are performance evaluations per platform with specific recommendations. Scroll down to the SupportPacs named MP* and look for the appropriate version and platform. A variety of scenarios are tested with large and small messages, persistent and non-persistent, variations on numbers of getter and putters, etc.

like image 26
T.Rob Avatar answered Oct 19 '22 23:10

T.Rob