Message-driven processing is an approach used within the client/server computing model in which a client (for example, your Web browser) sends a service request in the form of a specially-formatted message to a program that acts as a request broker, handling messages from many clients intended for many different server applications. A message may contain the name of the service (application) wanted and possibly a requested priority or time of forwarding. The request broker manages a queue of requests (and possibly replies) and screens the details of different kinds of clients and servers from each other. Both client and server need only understand the messaging interface. Message-driven processing is often used in distributed computing in a geographically-dispersed network and as a way to screen new client applications from having to interact directly with legacy server applications. Special software that provides message-driven processing is known as middleware.
In IBM's MQSeries middleware messaging product, its MDp (for "message-driven processor") provides an example. MDp is an intermediary layer between clients and a legacy system of applications, and serves as a request broker between clients and applications. The client formulates a request; MDp (which retains information about which applications and databases are to be invoked and where they reside) then breaks the request down into work units and sends these out to the appropriate server applications and databases. After executing the tasks, the back-end processes return the results to MDp, which in turn formulates replies to return to either the requesting client or some other target destination.