In Message-Oriented Middleware (MOM), one or more Producers create messages and send them to a queue. Then one or more Consumers retrieve messages from the queue. The queue, however, can actually be a message broker that can do value-added analyses on the messages. A client of a MOM system can send messages to, and receive messages from, other clients of the messaging system. MOM uses a model with a peer-to-peer relationship between individual clients. MOM typically supports two forms of messaging: point-to-point (PTP) and publish/subscribe (Pub/Sub). MOMs also define a set of reliability attributes for messaging, including non-persistent or persistent and non-transactional or transaction queues. If the distributed systems will be geographically dispersed deployments with poor network connectivity and stringent demands in reliability, flexibility, and scalability, then MOM is the ideal solution. The Enterprise Service Bus can also be considered a Message-Oriented Middleware, although its features go beyond what is normally expected from a MOM.