中间件是在操作系统功能范围外为应用提供服务的多用途软件。任何位于内核和用户应用之间的软件都可以是中间件。中间件不提供传统应用的功能,而是将软件与其他软件衔接。由于中间件能够让数据从一个应用流动到另一个中,因此把它比作输水管最为贴切。


什么是中间件?_应用软件



中间件就是程序中可织入的,可重用的,与业务逻辑无关的各种组件。

中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。

顾名思义,中间件处于操作系统软件与用户的应用软件的中间。

中间件在操作系统、网络和数据库之上, 应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。

在众多关于中间件的定义中,比较普遍被接受的是 IDC 表述的:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。

分类:数据访问中间件,远程调用中间件,消息中间件,交易中间件,对象中间件。

举例:

1. RMI (Remote Method Invocations, 远程调用)

2. Load Balancing(负载均衡,将访问负荷分散到各个服务器中)

3. Transparent Fail-over(透明的故障切换)

4. Clustering(集群 , 用多个小的服务器代替大型机)

5. Back-end-Integration(后端集成,用现有的、新开发的系统如何去集成遗留的系统)

6. T ransaction 事务(全局 / 局部)全局事务(分布式事务)局部事务(在同一数据库联 接内的事务)

7. Dynamic Redeployment (动态重新部署 , 在不停止原系统的情况下,部署新的系统)

8. System Management(系统管理)

9. Threading(多线程处理)

10. Message-oriented Middleware 面向消息的中间件(异步的调用编程)

11. Component Life Cycle(组件的生命周期管理)

12. Resource pooling (资源池)

13. Security (安全)

14. Caching (缓存)