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!
==Usage== In a typical message-queueing implementation, a [[system administrator]] installs and configures message-queueing software (a [[queue manager]] or broker), and defines a named message queue. Or they register with a [[message queuing service]]. An application then registers a software routine that "listens" for messages placed onto the queue. Second and subsequent applications may connect to the queue and transfer a message onto it. The queue-manager software stores the messages until a receiving application connects and then calls the registered software routine. The receiving application then processes the message in an appropriate manner. There are often numerous options as to the exact semantics of message passing, including: * Durability β messages may be kept in memory, written to disk, or even committed to a [[database|DBMS]] if the need for reliability indicates a more resource-intensive solution. * Security policies β which applications should have access to these messages? * Message purging policies β queues or messages may have a "[[time to live]]". * Message filtering β some systems support filtering data so that a subscriber may only see messages matching some pre-specified criteria of interest. * Delivery policies β do we need to guarantee that a message is delivered at least once, or no more than once? * Routing policies β in a system with many queue servers, what servers should receive a message or a queue's messages? * Batching policies β should messages be delivered immediately? Or should the system wait a bit and try to deliver many messages at once? * Queuing criteria β when should a message be considered "enqueued"? When one queue has it? Or when it has been forwarded to at least one remote queue? Or to all queues? * Receipt notification β A publisher may need to know when some or all subscribers have received a message. These are all considerations that can have substantial effects on transaction semantics, system reliability, and system efficiency.
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)