Slashdot Mirror


What Java Message Service Implementation?

alapalaya queries: "If you had to implement a message dispatcher with soft real time requirements, which has to manage a lot of messages, and in general subject to a lot of problematic requirements (including object persistence); all implemented using a Java Message Service; what implementation would you use? In fewer words: in your opinion what is the best Java Message Service Implementation? Among the various JMS implementations I am currently using SonicMQ; but it doesn't seem to scale up in a proper way (to around several hundreds of clients generating from 10 to 200 messages/sec each). What do you know about other vendors/implementations?"

4 of 25 comments (clear)

  1. JBoss, OpenJMS by LarryRiedel · · Score: 3, Informative

    These are kind of obvious, but it might be useful to take a look at JBossMQ in JBoss, and at OpenJMS.

  2. JMS does not meet real time requirements by angel'o'sphere · · Score: 2, Informative

    As far as I know ....

    Message services are designed to guaranty message delievery, not to be particular fast or even "real time", what ever the timing criteria of you might be.

    What about clustering? JMS implementations usualy support clustering, at least SonicMQ does so.

    In a project I was, we used MQSeries(sp?) from IBM. It had to process 600k messages a day but it was good enough for us if a message was processed in a couple of minutes ...

    Regards,
    angel'o'sphere

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  3. Other options??? by arberya · · Score: 4, Informative

    I have tried SwiftMQ, in which the main engine is free, but add ons are at a modest cost. What I would like to see are JMS implementations on top of Spread or Elvin. The OpenJMS and JBossMQ are okay, but still lag behind the commercial vendors, but are quickly catching up.

  4. Try IBM MQ Series by Arthur+Dent · · Score: 2, Informative
    We are using the IBM MQ series in a large financial institution with clients publishing and subscribing from global locations.

    I've found that it handles the load pretty well (just an informal test right now gives about five 10K messages/sec on a 100Mbps network).

    The advantages of this solution are that you are not restricted to JMS clients. IBM MQ Series can deliver messages to non-JMS clients too. Admittedly, this is a non-issue if you are tossing Java objects around. In our case, we use it to pass XML data as queries and responses. I've generally found a near instantaneous response rate from the time the publish happens to when the subscriber is notified of a new message. Just my $0.02c