Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Lightweight JMS broker

I'm looking for a small and yet efficient enough lightweight JMS broker solution with no or minimum of dependencies. My messaging code should be running in the environment with a lot of dependencies I have no control of. Thus it would make ridiculous to deploy say ActiveMQ solution along with my custom bunch of classes.

like image 364
nixau Avatar asked Mar 24 '10 12:03

nixau


People also ask

What is a broker in JMS?

The JMS Broker Between the sender and receiver (aka producers and consumers) is a broker – an application server – that receives messages from producers and sends messages to consumers. The producers and consumers are completely decoupled.

Can Kafka replace JMS?

No. Apache Kafka is a distributed publish-subscribe messaging system that receives data from disparate source systems and makes the data available to target systems in real time. Java message service is an api which are provided by Java. It is used for implementing messaging system in your application.

What are JMS alternatives?

You could use JMX, EJB, RMI, a web-service call or a tuple-space such as gigaspaces, but this is slightly more tightly coupled as both client and server need to be active for the notification to be sent successfully.

Is JMS push or pull?

The providers push the JMS message to queues and topics. The consumers pull the message from the broker.


2 Answers

Currently I'm investigating FFMQ solution. It's open source (GNU LGPL license), has only 4 dependencies (commons-logging, log4j, jms and jmx), and it's mature enough to accomplish my goals.

like image 147
nixau Avatar answered Sep 21 '22 15:09

nixau


Especially if you're using spring, don't count activemq out. You can also run it as an embedded server, and it isn't really all that heavyweight.

Look at: http://activemq.apache.org/how-do-i-embed-a-broker-inside-a-connection.html

like image 36
Andrew B Avatar answered Sep 25 '22 15:09

Andrew B