The Stomp Protocol specifies a reduced message broker
with queues usually read by one application and written
by one or more applications.
The specification does not include other, more advanced,
interoperability patterns, where, for example,
a client requests a job from a server or
a publisher sends data to many subscribers.
Such communication patterns, apparantly,
are left to be implemented by applications.
Patterns like client-server, publish and subscribe
and many others, however, are used over and over again
in message-oriented applications.
This library implements a number of communication patterns
on top of the Stomp specification
that are often used and often described in the literature.
There is a set of basic patterns,
as well as a set of derived patterns, namely:
Desk: A service to obtain the access point
(i.e. queue name) of a specified provider;
Load balancers: Services to balance requests
among a group of connected workers
(a.k.a. Majordomo pattern);
Bridge: Connections between brokers.
More information, examples and a test suite are available
on http://github.com/toschoo/mom.
The Stomp specification can be found at
http://stomp.github.com.
The notion of pattern and the related concepts,
as they are presented here,
rely heavily on
Pieter Hintjens, "Code Connected", O'Reilly, 2013
(see also http://hintjens.com/books).