×
Community Blog What Is Middleware

What Is Middleware

Middleware is a type of computer software that connects software components and applications.

Middleware is a type of software between the application system and the system software. It uses the basic services (functions) provided by the system software to connect various parts of the application system or different applications on the network, and It can achieve the purpose of resource sharing and function sharing. The middleware is located on the operating system of the client-server and manages computing resources and network communication.

At present, it does not have a very strict definition, but it has the definition of IDC is generally accepted: Middleware is an independent system software service program. Distributed application software uses this software to share resources between different technologies. The middleware is located on the operating system of the client server and manages computing resources and network communication. In this sense, we can use an equation to express middleware. Middleware is equal to platform plus communication. This also restricts that middleware can only be called middleware when used in distributed systems. At the same time, it also combines middleware with supporting software. Practical software is distinguished. At the same time, we can distinguish middleware from supporting software and utility software.

Middleware Introduction

Middleware is a type of computer software that connects software components and applications. It includes a set of services so that multiple software running on one or more machines can interact over the network. The interoperability provided by middleware promotes the evolution of a consistent distributed architecture. This architecture is usually used to support and simplify complex distributed applications, including web servers, transaction monitors, and message queue software.

Middleware is a big category of basic software. It belongs to the category of reusable software. As the name suggests, middleware is between the operating system software and the user's application software.

Middleware is above the operating system, network and database, and below the application software. The general role of middleware is to provide an environment for running and development of application software in its upper layer, and help users to develop and integrate complex application software flexibly and efficiently.

In recent years, more and more areas of human life have become inseparable from computer, network technology and communication technology. And with the rapid development of computer technology, more application software is required to operate on many different network protocols, different hardware manufacturers, and different network platforms and environments.

This has caused software developers to face the problems of discrete data, difficult operations, and low system matching, and they need to develop a variety of applications to achieve the purpose of the operation. Therefore, the emergence of middleware technology has greatly reduced the burden on developers and made the operation of the network more efficient.

Middleware Basic Functions

Middleware is independent system-level software that connects the operating system layer and the application program layer. The middleware standardizes the application interfaces provided by different operating systems, unifies the protocols, and shields the details of specific operations.

Middleware generally provides the following functions:

Middleware Communication Support

Middleware provides a platform-based operating environment for the application software it supports, this environment shields the interface differences between the underlying communication and realizes mutual operation. So communication support is one of the most basic functions of middleware.

The main communication methods of early application and distributed middleware interaction were remote call and message. In the communication module, remote calls communicate through the network, and by supporting data conversion and communication services, different operating systems and network protocols are shielded. Remote call is to provide service access to the process, it only provides a very simple programming interface or process call model for the upper system. Messages provide a mechanism for asynchronous interaction.

Middleware Application Support

The purpose of middleware is to serve upper-layer applications and provide an interoperability mechanism between different services at the application layer.

It provides a unified platform and operating environment for upper-level application development and encapsulates different operating systems to provide API interfaces, it provides a unified standard interface to the application, to make the development and operation of the application independent from the operating system, to realizes its independence. Middleware provides strong support for application structuring and development methods, through a loosely coupled structure, standard encapsulated services and interfaces, and an effective interoperability mechanism

Middleware Public Service

Middleware public service is the extraction of common functions or constraints in application software. Classify and implement these common functions or constraints, support reuse, and provide them to applications as public services. By providing standard, unified public services, it can reduce the workload of upper-level application development, shorten application development time, and help improve the quality of application software.

Middleware Advantages

  • Meet the needs of a large number of applications;
  • Runs on a variety of hardware and OS platforms;
  • Supports distributed computing and provides interactive functions of transparent applications or services across networks, hardware, and OS platforms;
  • Support standard protocol;
  • Support standard interface;

The views expressed herein are for reference only and don't necessarily represent the official views of Alibaba Cloud.

Related Blog

Practical Experiences with Alibaba Cloud's Middleware in the Online Education Industry

According to the data from iiMedia Research, the number of online education users in China exceeded 200 million in 2018 and is expected to reach 300 million by the end of 2020. In addition, according to the data of iiMedia Research, the market size of China's online education in 2018 reached 251.8 billion yuan and is expected to exceed 500 billion yuan by 2022.

Due to the online demands of users, products, and services, the online education industry needs to break through limitations of time and space. Besides, the uneven distribution of education resources caused by geographical restrictions is also a difficulty that needs to be solved by the online education industry. By solving these problems, the industry can lower the learning threshold and share education resources. At the same time, the online education industry needs technical means and capabilities to gradually build up integrated ecological capabilities of content supply, platform, distribution, and promotion. Starting from the business logic, its core link includes two points: the introduction and realization of traffic.

Facilitating Enterprise-Level Internet Architecture with Alibaba Cloud Middleware

Many businesses are facing various challenges when it comes to IT because traditional IT architecture is unable to meet existing business needs. Often times this situation is worsened by the lack of a professional and business-oriented architecture for enabling microservices, as well as a lack of development resources to address application access, system compatibility, and performance problems. These combination of factors lead to complicated O&M problems that cannot be solved immediately after an enterprise-level Internet architecture is put into use, resulting in flooding business complaints.

To address these issues, Alibaba Cloud Middleware has recently upgraded its services comprehensively to facilitate developers in building enterprise-level Internet architectures for middle- and small-sized enterprises. This comprehensive upgrade covers Enterprise Distributed Application Service (EDAS), Application Real-time Monitoring Service (ARMS), Performance Testing Service (PTS), Tracing Analysis, Alibaba Cloud Toolkit for Eclipse, and Application High Availability Service (AHAS).

Breaking the Limits of Relational Databases: An Analysis of Cloud-Native Database Middleware

The development and transformation of database technology is on the rise. NewSQL has emerged to combine various technologies, and the core functions implemented by the combination of these technologies have promoted the development of the cloud-native database.

This article provides an in-depth insight into cloud-native database technology Among the three types of NewSQL, the new architecture and Database-as-a-Service types involve many underlying implementations related to the database, and thus will not be elaborated here. This article focuses on the core functions and implementation principles of transparent sharding middleware. The core functions of the other two NewSQL types are similar to those of sharding middleware but have different implementation principles.

0 0 0
Share on

Alibaba Clouder

2,605 posts | 747 followers

You may also like