Message Queue

In computer science, message queues and mailboxes are software-engineering components typically used for inter-process communication (IPC), or for inter-thread communication within the same process. They use a queue for messaging – the passing of control or of content. Group communication systems provide similar kinds of functionality. wikipedia

The message queue paradigm is a sibling of the publisher/subscriber pattern, and is typically one part of a larger message-oriented middleware system. Most messaging systems support both the publisher/subscriber and message queue models in their API, e.g. Java Message Service (JMS).

[…] Other implementations allow the passing of messages between different computer systems, potentially connecting multiple applications and multiple operating systems.[5] These message queuing systems typically provide Resilience functionality to ensure that messages do not get "lost" in the event of a system failure. […]