Implementations
Below mentioned are the implementations of the STOMP Protocol
STOMP Servers
These are some message servers that support STOMP:
- Apache ActiveMQ,
- Fuse Message Broker
- Open Message Queue (OpenMQ)
- RabbitMQ
- syslog-ng through its STOMP destination plugin
STOMP Client
- activemessaging, stomp in Ruby
- Apache CMS in C++
- Gozirra and Stampy in Java
- Stompy, pyactivemq, stomper, stompest and stomp.py in Python
- stomp-php, Zend_Queue, stomp in PHP
- stompngo in Go
- AnyEvent::STOMP, Net::Stomp, Net::STOMP::Client, POE::Component::Client::Stomp in Perl
STOMP is also supported by the Spring Framework in module org.springframework:spring-websocket
.
STOMP Releases
The latest version of the specification can be found at:
- STOMP1.2 Released on 10/22/2012
The older version of the specification are at:
- STOMP1.1
- STOMP1.0
STOMP Protocol
STOMP is the Simple (or Streaming) Text Orientated Messaging Protocol, formerly known as TTMP. It provides an interoperable wire format that allows STOMP clients to talk with any message broker asynchronously supporting the protocol. It is similar to HTTP, and works over TCP using the commands – CONNECT, SEND, SUBSCRIBE, UNSUBSCRIBE, BEGIN, COMMIT, ABORT, ACK, NACK, DISCONNECT.
STOMP is a simple and easy-to-translate protocol. Many developers managed to write an STOMP client in just a couple of hours in their particular language, runtime, or platform into the STOMP network. So if the language/runtime we prefer does not offer a good enough STOMP client we can write one without any hassle.