Message Queuing learn a concept

With the development of distributed messaging middleware system becomes more and more fire, the following learning courses to explain the process of messaging middleware

The concept :( part is quoted from: enjoy school classroom courseware)

  In fact, there is no standard definition. Is generally considered part of a distributed messaging middleware system a subsystem to transmit and receive data of interest, the remainder of the distributed system integration using the various subsystems efficient and reliable asynchronous message passing mechanism.

  Efficient : fast processing speeds for the message.

  Reliable : there will be a general mechanism messaging middleware and other mechanisms to ensure that the message persistence message is not lost.

  Asynchronous : a request transmitting means complete, return without waiting, ready to send the next request can then neither need to wait.

  Sentence summary, we do not produce a message messaging middleware, but porters message

 

Why use messaging middleware?

  Initially the system is designed as a whole, the business is relatively simple and can be deployed using a war, does not involve communication problems between systems,

  But with the development of computer technology, systems increasing amount of data, businesses increasingly complex a system becomes more and more bloated, difficult to maintain, hence the concept of distributed, a large-scale system based on business module

  Split into multiple subsystems, each responsible for different business functions, then there have been frequent cases of data interaction between the system and the system, RPC is used for data exchange between systems, but due to direct data between systems too dependent interaction, a sub-system problems,

  It corresponds to the data exchange will be a problem then there is a problem of the whole system, and with the continuous expansion of the system, subsystem, more and more data between different systems to interact more and more chaotic, difficult to manage and maintain

  Therefore it proposed the concept of messaging middleware:

  No matter how many subsystems, messaging middleware based on their interaction with the case into two parts, news producers and news consumers

  Manufacturer message: data to be sent to the broker, then the system producers

  Consumers message: system requests data to the broker, then the system for consumers

  Of course, the same system at the same time there is the case of request data and send data, he instantly producers or consumers (not the same character at different business scenarios Bale)

Messaging middleware to solve the problem appears:

1, unified data exchange between systems management, making the logical hierarchy is divided between family systems clarity

2, data messaging middleware through statistical analysis easier

3, decoupling between the system media (Message Oriented Middleware) via indirect communication, the system reduces the interdependence

4, the interaction between the asynchronous communication, the system response without waiting for each other, as long as the message is successfully sent to the middleware can (independently performed their operations, to reduce inter-system dependent)

5, buffering capacity, messaging middleware like a huge reservoir, the peak of the large number of requests stored down slowly to the background processing, the system avoids the large data system interactions occur crash, spike for business it is particularly important.

6, buffer capacity scalability Scalability refers to the means by continuously adding server clusters to ease the rising pressure and concurrent user access to the growing data storage needs. Like hang things as springs, multi-user, stretched a little less user, a lighter, ah, no, little shrinkage. Is retractable, not depth. Highly scalable architecture to measure whether or not the main criterion is the availability of multiple servers to build a cluster, is it easy to add new servers to the cluster. Can we provide and the original non-discriminatory service server after adding a new server. The total number of servers in the cluster can be accommodated if there are restrictions.

7, scalability, extensibility, the main criteria is the site when adding new business products, can achieve no effect on the existing products transparent, does not require any modification or change existing business functions can be little more than a new product line. For example, after a user application to purchase movie tickets, and now we want to add a feature, users buy a ticket Predator, randomly selected from a limited user to send the surrounding alien. Do not change the basis of how users ticketing functions add this feature on. The students familiar with design patterns, should be very familiar, this is the principle of opening and closing design mode (open for extension, but closed for modification) a principle in architecture level

 Messaging middleware and RPC (remote system calls) difference --RPC is to achieve a direct data exchange between subsystems

1, RPC synchronous, asynchronous messaging middleware

2, the system of RPC by lazy too strong, low inter-dependent message middleware

 Not to be finished continued. . . . . .

Guess you like

Origin www.cnblogs.com/yutf/p/11544512.html