Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Message queue
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Standards and protocols== Historically, message queuing has used proprietary, closed protocols, restricting the ability for different operating systems or programming languages to interact in a heterogeneous set of environments. An early attempt to make message queuing more ubiquitous was [[Sun Microsystems]]' [[Java Message Service|JMS]] specification, which provided a [[Java (software platform)|Java]]-only abstraction of a client [[Application programming interface|API]]. This allowed Java developers to switch between providers of message queuing in a fashion similar to that of developers using [[SQL]] databases. In practice, given the diversity of message queuing techniques and scenarios, this wasn't always as practical as it could be. Three standards have emerged which are used in open source message queue implementations: #[[Advanced Message Queuing Protocol]] (AMQP) β feature-rich message queue protocol, approved as ISO/IEC 19464 since April 2014 #[[Streaming Text Oriented Messaging Protocol]] (STOMP) β simple, text-oriented message protocol #[[MQTT]] (formerly MQ Telemetry Transport) β lightweight message queue protocol especially for embedded devices These protocols are at different stages of standardization and adoption. The first two operate at the same level as [[HTTP]], MQTT at the level of [[TCP/IP]]. Some proprietary implementations also use HTTP to provide message queuing by some implementations, such as [[Amazon.com|Amazon]]'s [[Amazon Simple Queue Service|SQS]]. This is because it is always possible to layer asynchronous behaviour (which is what is required for message queuing) over a synchronous protocol using request-response semantics. However, such implementations are constrained by the underlying protocol in this case and may not be able to offer the full fidelity or set of options required in message passing above.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)