The Stomp project is the Streaming Text Orientated Messaging Protocol site (or the Protocol Briefly Known as TTMP and Represented by the symbol :ttmp). Stomp provides an interoperable wire format so that any of the available Stomp Clients can communicate with any Stomp Message Broker to provide easy and widespread messaging interop among languages, platforms and brokers.
Stomp is a very simple and easy to implement protocol, coming from the HTTP school of design; the server side may be hard to implement well, but it is very easy to write a client to get yourself connected. For example you can use Telnet to login to any Stomp broker and interact with it!
Many developers have told us that they have managed to write a Stomp client in a couple of hours to integrate their particular language, runtime or platform into the Stomp network. So if your favoured language/runtime of choice does not offer a good enough Stomp client please try write one as we love contributions!
Pick the right Stomp client for your particular language or platform...
- Dynamic C for Rabbit® microprocessors
- C# and .Net
- Delphi and FreePascal
- haXe has the hxstomp client
- Ruby and Rails support.
The following is a list of the various Stomp compliant Message Brokers which can be used with any of the Stomp Clients
- Apache ActiveMQ which can also support other protocols like OpenWire, REST, Ajax, Cometd, XMPP
- StompConnect provides a bridge to any other JMS provider. This means that all major commercial and open source message brokers can be used with Stomp! (The only significant message broker which doesn't implement JMS is TibCo's RV which is now legacy and the long term replacement is TibCo EMS which does support JMS).
- StompServer a lightweight pure Ruby Stomp server
- CoilMQ is a lightweight pure Python Stomp broker inspired by StompServer.
- Gozirra is a lightweight Java Stomp broker
- HornetQ puts the buzz in messaging
- PocoMQ is a highly configurable, extensible and stable Perl based Stomp server
- WS-Ramp - SOAP based asynch messaging profile
- WS-ReliableMessaging - SOAP based asynch messaging profile
- WS-Reliability SOAP based async messaging profile. I think this one has fallen out of favor with the WS-Glitterati
- XMPP - XML based messaging protocol originally created for IM, but not really bound to it.
- TOC- Text oriented messaging protocol created for interop with AOL Instant Messenger. I've seen people use it for arbitrary asynch messaging, so am listing it. Please don't serioulsy consider it.