Messaging and Queuing : The MOM Middleware

February 1, 2008 at 4:02 pm (Unit 1) (, )

  • MOM is a key piece of middleware that is absolutely essential for a class of client/server products.
  • If the application can tolerate a certain level of time-independent responses, MOM provides the easiest path for creating enterprise and inter-enterprise client/server systems.
  • This accumulates outgoing transactions in queue and do a bulk upload when a connection can be established with an office server.
  • MOM allows general purpose messages to be exchanged in a client/server system using message queues.
  • Applications communicate over networks by simply putting messages in queues and getting messages from queues.
  • MOM hides all the nasty communications from applications and typically provides a very simple high-level of API to its services.
  • A MOM consortium was formed in mid-1993 with the goal of creating standards for messaging middleware.
  • Members are product providers including
    • IBM – MQSeries
    • Covia – Communications Integrator
    • Peerlogic – PIPES
    • Horizon Strategies – Message Express
    • System Strategies – ezBridge
  • MOM’s messaging and queuing allows clients and servers to communicate across a network without being linked by a private, dedicated, logical connection.
  • The clients and servers can run at different times.
  • Everybody communicates by putting messages on queues and by taking messages from queues.

MOM 1

  • MOM products provide their own NOS services – including hierarchical naming, security, and a layer that isolates applications from the network.
  • They use virtual memory on the local OS to create their queues.
  • Most messaging products allow the sender to specify the name of the reply queue.
  • The products also include some type of format field that tells the recipient how to interpret the message data.
  • MOM enabled programs do not talk to each other directly, so either program can be busy, unavailable, or simply not running at the same time.
  • The target program can even be started several hours later.

MOM 2

  • Many clients are sending requests to one server queue.
  • The messages are picked off the queue by multiple instances of the server program that are concurrently servicing the clients.
  • The server instances can take messages off the queue either on a FIFO basis or accounting to some priority to load-balancing scheme.
  • The message queue can be concurrently accessed.
  • The servers can also use messaging filters to throw away the messages they don’t want to process, or they can pass them on to other servers.
  • The MOM messaging products provide persistent (logged on disk) and non-persistent (in memory) message queues.
  • Persistent messages are slower, that they can be recovered in case of power failures after a system restart.
  • A message queue can be local to the machine or remote.
  • System administrators can usually specify the number of messages a queue can hold and the maximum message size.

MOM 3

Post a Comment

You must be logged in to post a comment.