About Middleware finishing -

2020/4/6 (99 messages) middleware future will disappear? - know almost https://www.zhihu.com/question/22854238/answer/935319055 1/3

For the upstairs referred to the concept and advantages of middleware, we can also talk about a larger range, then talk about why middleware is not going away. Concept: broad and narrow middleware is an independent system software or service program, which is the development of object technology and distributed computing products.

With middleware software to share resources between different technologies to achieve the interconnection between the application and operation. Classification according to IDC, the middleware can be divided into six categories.

Namely, data access middleware, remote procedure call middleware, messaging middleware, transaction middleware, middleware and other objects. The concepts and definitions, is already out of date,

Now generally believed that there are two definitions:

Broadly speaking, all is not provided directly to the customer direct business value of software, are middleware. Illustration, nginx and WebSphere App Server, MySQL is middleware, and a marketing system or CRM systems, micro-credit system, it is not middleware.

Narrow sense, middleware and business software systems in the infrastructure layer of this layer or some software libraries, frameworks, we called middleware, is not necessarily a stand-alone program. This put similar to the above-mentioned DB and Web Server software like to divide the infrastructure layer.

Narrow middleware such as caching middleware, database, middleware, messaging middleware, service oriented middleware, transaction middleware, scheduling middleware, integration middleware and so on. Now that the Internet is generally a few.

 

Advantages: technology in Taiwan the world's leading advisory body Standish Group summed up the top ten advantages of middleware in a research report: -

Shorten the development cycle · applications

Saving application development costs *

Reduce the initial cost of the system construction *

· Reduce the failure rate of application development

Protecting existing investments ·

· Simplify application integration

Reduce maintenance costs *

· Improve the quality of development applications

· Ensure the continuity of technological progress

Enhance the vitality of applications specifically,

Middleware shields the complexity of the underlying operating system, so that application developers face a simple and unified development environment, reduce the complexity of program design, to focus on their own business, no longer have to program in a different system software transplant and repetitive work on, thus greatly reducing the technical burden. Bring the application system, not just a simple development, shorten the development cycle, but also reduce the maintenance, operation and workload management system also reduces the overall cost of the computer input. Secondly, as a new level middleware infrastructure software, an important role is to different periods in the development of software applications on different operating systems integrate, like a seamless whole coordination with each other. The role of middleware, such that after the technology continues to develop, before the results of our work on application software still will be useful, you can save a lot of manpower and financial resources invested. Middleware one hand, a lot of people Summary of Best Practices in many specific scene, and the other is the software development inevitable trend. We constantly repeating the construction business systems, then these business systems in some general techniques that may be multiplexed, and ran the principles of reuse, precipitation will gradually become some shared, reliable technical support, which is middleware. Of course, by now the fashion is called, you can also call technology in Taiwan. For example, native is now the cloud trend, the business systems on a cloud environment is a typical scene.

So if public cloud IaaS infrastructure hardware and only 99.9% availability, and we put the trading system on the cloud or financial services, the availability requirement is 4-5 9, how to do? There is an old saying: the computer field have any problems can be solved by an intermediate layer.

A natural way is among our business systems and infrastructure layer, with a number of high-availability middleware to do an intermediate layer. This intermediate layer to achieve fragmentation, duplication, rapid failover and recovery mechanisms, so as to provide a solid base to the top of the business systems, regardless of the cloud services layer of a few bad hard drive or local network latency increased by 5 times, we business system can do no perception. Why middleware? Standing on the shoulders of giants we can see, a class of the middleware is to solve complex technical problems, such as messaging middleware Kafka, RocketMQ, solve a lot of processing requests and queuing buffer, and to achieve high performance without the lost messages, such common technical complexity common. TDDL, ShardingSphere, MyCat solutions such sub-library sub-table, separate read and write, thereby improving the whole system for reading and writing data larger. Why do we use middleware, rather than trying to use a table in the database to simulate MQ, direct hard-coded sub-library sub-table it? Because, you repeat a lot of people take the road traveled over the years, many people have been touched again to touch the stones. Completely unnecessary. Why recommend everyone to understand, learn and use sophisticated open source middleware?

1, each type of middleware is to solve a general class of problems, then the more we know the kind of middleware, the more aware of common problems in many directions solutions, has nothing to do directly with, or reference The idea analogy, are useful for us to solve the problem. If you know very little about the many on-site solutions directly outside our field of vision, so that we always disregard the changing circumstances, to find a way out of the range of many of the optimal solution.

2, large-scale use of middleware too, there have been countless stepped pit, common problems have been destroyed, if we own re-create the wheel head, still have to pay these fees, long period, poor stability, price is too low. Even if he made the wheel, you can also use the open-source process to open source, based on the shoulders of giants to stand up innovation.

3, the experience of recent years tells me that most of the high availability middleware has solved the problem, fragmentation, multiple copies, failover and failure recovery, and so on. If we replace some aspects of the system to middleware, it means that we have some significant stability risks transferred to the middleware, so that we can improve the stability of the entire system. Middleware trends: blowout, subdivision, commercial development spurt, MQ to take an example: With the development of distributed technology, MQ technology products blowout. Currently in addition to various types of commonly used MQ, such as the Apache ActiveMQ, Kafka, Pulsar, RocketMQ (both Apache, is Ali, the headlines also based RocketMQ), and RabbitMQ (US group, the car home heavy use), the major manufacturers have self-development of their own products, Tencent CMQ and TubeMQ, Jingdong JMQ, where to go QMQ, and pieces of DDMQ (based RocketMQ), many of which are open source. Take for example the micro-services: Micro Services Framework is a really flourishing, various platforms, each company, each language, there are a bunch of frameworks and tools emerge, in addition to dubbo, spring cloud, as well as Huawei's service comb, ants gold dress SOFAStack, oracle of Helidon, redhat's quarkus, Lagom, grails of Micronaut, python's nameko, go the micro, multilingual vert.X scala of Tencent tars, Baidu's brpc, microblogging motan. . . . . . Or the phrase an old saying: the computer field have any problems can be solved by an intermediate layer. 

On the one hand, many of the performance capabilities of the middleware or middleware, will continue to sink to a more fundamental level, for example, we can see a lot of database middleware, integrated into a distributed database.

On the other hand, with the development of distributed technology and Internet segments of business scenarios, more middleware emerged in their scene.

Like, only the beginning programmer this career, and later with the back-end development, front-end development, large data engineers, algorithm engineer, engineer block chain ,,,

More and more segments appear own unique role. Middleware is also a big trend is the emergence of different segments in the field, a series of new problems to solve, and then sink to the lower-level part of the infrastructure, then this process is iterative, long-term development.

Guess you like

Origin www.cnblogs.com/zeenzhou/p/12640241.html