The hottest middleware is the key technology to bu

2022-09-28
  • Detail

Middleware is the key technology to build complex distributed applications.

in the early 1990s, the client/server computing mode began to become the mainstream technology, storing data uniformly on the data server, and the relevant business logic was implemented on the client, that is, the so-called fat terminal solution. This two-tier structure greatly hindered the development of the system, and a single server structure was closely dependent on suppliers; Data access is restricted; It is difficult to expand to large enterprise wide area or international interconnection; It is also difficult to manage the cluster of clients. With the growth of users' business needs and the popularity of internet/intranet, it will be replaced by three-tier or four tier architecture. The three-tier structure is to separate the business logic of the client and combine it with the stored procedures in the database server to form an application layer, so as to improve the computing power and realize flexibility. In this structure, the user end only deals with the graphical user interface (GUI), and the current trend is to adopt the browser with interactive function, that is, to form the working mode of thin terminal. For this reason, another layer is added in the middle, called the web server layer, forming a four layer architecture

in this kind of multi-layer distributed system, servers and terminals are connected through networks, and there is a large amount of information and data for transmission. For each application system, the software that needs to be developed in the design and implementation is only the business logic part of the application server. In addition, the software that deals with the unique functions of the distributed system must also be designed, which is not supported by the current system software (operating system and support software). For this reason, middleware appears, which is a batch of software between system software and application software. It enables designers to concentrate on the design and application related parts, which greatly simplifies the design and maintenance work. Through five or six years of extensive application and practice, middleware has a number of mature products, and has become an indispensable software in the design of distributed systems. In just a few years, middleware has developed rapidly at a lightning speed, and the annual market sales have doubled

what is middleware

middleware is the software between the operating system and the application. Some people also think that it should be part of the operating system. When using middleware, people often integrate a group of middleware to form a platform (including development platform and operation platform), but there must be a communication middleware in this group of middleware. Therefore, I agree with this definition:

middleware = platform + communication

this definition also limits that it can be called middleware only for distributed systems, At the same time, it can also be distinguished from supporting software and practical software

the role and classification of middleware

to clarify this problem, we use an example in life to compare. The distributed system is regarded as the traffic system in the urban area of Beijing, and the network is regarded as the urban roads. Communication is realized through vehicles (cars), and tens of thousands of vehicles will drive on the roads every minute. Without corresponding traffic facilities and management planning, Beijing will be in a mess, causing various traffic accidents

1. Communication processing (message) middleware

first of all, we need to repair the roads, install traffic lights, set up traffic management agencies, and formulate traffic rules, that is, we need to build and formulate communication protocols that can communicate between different platforms to achieve reliable, efficient, real-time cross platform data transmission in Distributed Systems (such as tonglink, BEA elink, IBM MQSeries, etc.), which is called message middleware. This is the only indispensable middleware product with the largest sales volume. At present, some of its functions have been included in the windows 2000 operating system

2. Transaction processing (transaction) middleware

deals with a large number of transactions in the distributed transaction processing system, and often tens of thousands of transactions are done at the same time in the system. For example, in Beijing, it is necessary to set up various delivery vehicles to complete daily delivery. At the same time, it is necessary to monitor the operation of vehicles at any time. In case of failure, troubleshooting measures should be taken, and scheduling should be carried out in case of congestion. In the online transaction processing system (OLT computer and network technology are the representatives of modern technology P), each transaction often needs the programs on multiple servers to coordinate and complete in sequence. Once a certain failure occurs in the middle, it is not only necessary to complete the recovery work, but also to automatically switch the system, so that the system will never stop and realize high reliability operation; At the same time, to make a large number of transactions run concurrently in real time on multiple application servers, and schedule the load balance, so as to realize the same function of expensive reliable computers and large-scale computer systems. In order to achieve this goal, the system is required to have the function of monitoring and scheduling the whole system. BEA's tuxedo is famous for this, and it has become the manufacturer with the highest growth rate. A transaction processing platform is composed of transaction processing middleware, communication processing middleware and data access management middleware according to the parameter model of x/open. Tonglink and tongeasy of dongfangtong technology company have implemented this reference model

3. Data access management middleware

in distributed systems, important data are stored centrally in data servers. They can be relational, compound document, multimedia with various storage formats, or encrypted or compressed. This intermediate control response slow will bring convenience to virtual buffer access, format conversion, decompression, etc. on the network

b server middleware

browser graphical user interface has become a recognized specification. However, its poor session ability, unable to write data, and limited by HTTP protocol, it must be modified and expanded to form a web server middleware, such as the products of silverstream company

5. Security middleware

the biggest obstacle in some military, government and commercial departments is the problem of security and confidentiality. Moreover, security measures provided by foreign countries (such as firewall, encryption, authentication, etc.) cannot be used, and domestic products must be used. Unsafe factors are caused by the operating system, but middleware must be used to solve them to meet the flexible requirements

6. Cross platform and architecture middleware

currently, the development of large-scale application software is usually based on architecture and component technology. In the distributed system, it is also necessary to integrate components on different system platforms or new and old versions of components on each node, resulting in architecture middleware. CORBA has the strongest function, which can span any platform, but it is too large; JavaBeans is relatively flexible and simple, which is very suitable for browsers, but its operation efficiency is poor; DCOM model is mainly suitable for Windows platform and has been widely used. In fact, the newly-built systems in China are mainly UNIX (including Linux) and windows, so it is much more practical to establish corresponding middleware for these two platforms

7. Special platform middleware

designs domain reference modes for specific application fields, establishes corresponding architectures, configures corresponding component libraries and middleware, and develops and runs key tasks in specific fields (such as e-commerce, stations, etc.) for application servers

8. Network middleware

it includes management, access, network testing, virtual community, virtual buffer, etc. it is also the most popular R & D project at present

middleware model and form

middleware has been only five years since its birth, but it has developed extremely rapidly. It is the fastest-growing software product in history, but it is still in the stage of growth in technology, and there is no unified standard and model. It is usually implemented with object-oriented technology in C + + language, but its characteristics have exceeded the expression ability of object-oriented, because it belongs to reusable components, At present, it tends to be realized by component technology. However, middleware involves all standards, specifications and technologies of software, and it contains more connotation, because it includes platform functions. It has the characteristics of autonomy, autonomy, isolation, socialization, motivation, initiative, concurrency, cognitive ability and so on. It is similar to the structure of agent (agent). The concept and technology of agent are more appropriate. The establishment of model and specification is the core measure to promote the development of technology

Zhong cuihao: researcher and doctoral supervisor of the Institute of software, Chinese Academy of Sciences. His research direction is computer software and computing methods. Zhong is always the first generation of software experts in China. He took the lead in studying topics in various fields of software: compiler, language, operating system, application software, etc. In the past 10 years, he has been mainly engaged in application software development and software engineering research. He has successively served as a part-time professor in more than 10 colleges and universities, a professional consultant of Beijing software, and a researcher of the national Engineer Research Center of software engineering, and has won the second prize of the national science and technology progress award, the first prize of the provincial and ministerial level, and other eight awards

message middleware products

ibm mqseries

ibm MQSeries is IBM's message processing middleware. MQSeries provides a safe and reliable message transmission system with industrial standards

its function is to control and manage an integrated system, so that the whole workflow can be completed by passing messages between multiple branch applications (modules) that make up the system. MQSeries is basically composed of an information transmission system and an application program interface, and its resources are messages and queues

One of the key functions of MQSeries is to ensure the reliable transmission of information, even when the network communication is unreliable or abnormal. The asynchronous message processing technology of MQSeries can ensure that the local network or communication application itself is "busy" "In case of status or failure, the information between systems will not be lost or blocked. Such reliability is very critical, otherwise a lot of money and customer reputation will be greatly damaged.

at the same time, MQSeries is a flexible application communication scheme. MQSeries supports all major computing platforms and communication modes, as well as advanced technologies (such as Internet and Java), and has the ability to connect to major products (such as lotus notes and sap/r3, etc.)

tonglink/q

tonglink/q is a message oriented middleware. The main function of tonglink/q is to provide reliable message transmission between different network protocols, different operating systems and different applications

efficient, reliable and flexible transmission functions

are guaranteed through pre built connection, multiplexing, flow control, compressed transmission, breakpoint retransmission, transmission priority management, service (class) drive and other mechanisms

event proxy mechanism

event proxy mechanism provides an asynchronous application development model. Users only need to define an event and how to deal with it, and tonglink/q automatically completes the operation. Using the event agent system, as the name suggests, you can subscribe and publish events and realize policy management

session management

tonglink/q describes a complex communication relationship through a simple session ID, and realizes a higher-level and more abstract communication service

good usability and manageability

tonglink/q realizes real-time monitoring and management, and provides logging mechanism, dynamic configuration, and remote management functions. It also provides multi-level security management and supports a variety of development tools

transaction middleware

bea tuxedo

bea tuxedo as an e-commerce transaction platform, it allows clients and servers to participate in a transaction involving the coordinated update of multiple databases, and can ensure the integrity of data. A feature of BEA Tuxedo

Copyright © 2011 JIN SHI