Message Queuing technology:
is a technique for exchanging information among distributed applications. Message queues can reside on memory or on disk, and queues store messages until they are read by the application. With Message Queuing, applications can be executed independently-they do not need to know each other's location, or they do not need to wait for the receiving program to receive this message before proceeding with execution.
Message Middleware Overview:
In distributed computing environment, in order to integrate distributed applications, developers need to provide effective means of communication for distributed applications in heterogeneous network environments. In order to manage the information that needs to be shared, it is important to provide a public information exchange mechanism for the application.
the main methods of designing distributed applications are:
Remote Procedure Call (PRC)--one of the basic standard components of a distributed computing environment (DCE);
RPC is a component of DCE, an application-integrated software standard released by the Open Software Foundation (OSF). RPC mimics the traditional programming method used by a program to refer to another program using a function reference, which is the form of a procedure call, and once invoked, the control of the program shifts to the invoked program.
In the case of an RPC implementation, the invoked procedure can reside and execute in another system, either locally or remotely. When the invoked program completes processing the input data, the result is returned to the calling program in the return variable of the procedure call. When RPC completes, the program is immediately returned to the calling program. Thus RPC mimics the call/return structure of a subroutine, which provides only synchronous data exchange between the client (the caller) and the server (the invoked procedure).
Object Transaction Monitoring (OTM)--a combination of object-oriented industry standard and transaction processing (TP) monitoring technology based on CORBA;
In the CORBA specification, we define the architecture using object-oriented technology and method, the common Client/server programming interface, the guidelines for transmitting and translating data between platforms, the development of the language (IDL) of distributed application interfaces, and the client/for constructing distributed applications. The server application provides a broad and consistent pattern.
Message Queuing (MessageQueue)--constructs a loosely coupled approach to distributed applications.
The message team lists loosely coupled methods for constructing distributed applications that are implemented synchronously or asynchronously. The API call for Message Queuing is embedded in a new or existing application that provides an exchange of information via a message sent to memory or a disk-based queue or read from it. Message Queuing can be used in applications to perform a variety of functions, such as requesting services, exchanging information, or asynchronous processing.
Middleware is a kind of independent system software or service program, distributed Application system uses this kind of software to share resources among different technologies, manage computing resources and network communication. It is a key software in the computer system, it can realize the interconnection and interoperability of the application, and can ensure the safe, reliable and efficient operation of the system. Middleware is located between user application and operating system and network software, it provides common communication means for application, and is independent of network and operating system. Middleware provides developers with an application interface that is common to all environments, and when embedded in the application, it can use the functions of the specific operating system and network environment in which it runs to perform communication functions for the application.
If there is no message middleware to complete the exchange of information, application developers in order to transfer data, must learn how to use the network and operating system software functions, to write appropriate applications to send and receive information, and exchange of information there is no standard method, each application must be specific programming, and multiple platforms, One or more application communications in different environments. For example, in order to achieve communication between different host systems on the network, it will require knowledge of how to exchange information on the network (for example, by using TCP/IP sockets); In order to achieve communication between different processes within the same host, knowledge such as the operating system message queue or named pipe (pipes) is required
The message transfer middleware (MOM) is one of the many types of middleware currently available, such as transaction management middleware (IBM's CICS), Web application Server middleware for Java applications (such as IBM's WebSphere Application server), and so on. It simplifies the transmission of data between applications, masks low-level heterogeneous operating systems and network platforms, provides consistent communication standards and application development, and ensures reliable, cross-platform information transmission and data exchange in distributed computing networks. It is based on the storage-forwarding mechanism of message queues and provides a unique asynchronous transmission mechanism, which can realize application integration and data exchange based on message transmission and asynchronous transaction processing.
With its unique security mechanism, simple and fast programming style, exceptional stability, scalability and Cross-platform, and powerful transaction processing and messaging capabilities, the IBM messaging middleware MQ becomes the industry's highest-market-share messaging middleware product.
MQ has a powerful cross-platform, it supports up to 35 of the number of platforms. It supports a variety of mainstream UNIX operating system platforms, such as HP-UX, AIX, SUN Solaris, Digital Unix, Open VMX, SUNOS, NCR Unix, and support for a variety of host platforms, such as: os/390, Mvs/esa, Vse/esa ; Windows NT servers are also supported. Supports Windows9x/windows nt/windows 2000 and Unix (UnixWare, Solaris) and major Linux versions (Redhat, Turbolinux, etc.) on the PC platform. In addition, MQ also supports a variety of other operating system platforms, such as: OS/2, as/400, Sequent Dynix, SCO OpenServer, SCO UnixWare, tandem, etc.