中间件

什么是中间件?

中间件是为应用提供操作系统功能以外服务的多功能软件。任何位于内核和用户应用之间的软件都可以是中间件。

分析师兼系统理论家 Nick Gall 表示,"中间件是软件用的软件。" 中间件不具有传统应用的功能,只负责将软件与其他软件衔接。中间件就相当于您 IT 基础架构的输水管,让数据能从一个应用流动到另一个中。例如,Apache Kafka 是一款开源中间件,能够为您的应用提供实时数据流处理功能。

帝国与企业

古罗马拥有史上最闻名的下水道系统。沟渠与下水道织就的复杂管网沿用至今,因此老普林尼认为它们是罗马"最值得赞颂的成就"。罗马的管道用于输水,企业中间件则将数据从一处传送到另一处。我们并非妄言中间件是人类最伟大的成就,但许多其他(或许更令人瞩目的)软件的运作都离不开中间件。

用输水管比喻中间件或许显得有点不起眼,但这两者都是运作大型复杂系统(比如罗马)的关键。您的企业类似一个快速发展的城市:城市的所有组成部分都需要水,就如企业的方方面面都需要数据一样。若没有输水管,城市就会毫无效率、混乱不堪。若没有中间件,您的企业也会面临相同的局面。

 

中间件有哪些种类?

中间件可以包含各种各样的软件,例如:

 

应用编程接口(API)

API 是用于构建应用软件的一系列工具、定义和协议,通过它,就算您不知道如何操作,也能将您的产品或服务与其他的互通。

应用服务器

应用开发的平台(如红帽® JBoss® 企业应用平台)。应用服务器是提供创建应用所需功能的框架,而且也是运行这些应用的服务器。

应用集成

应用集成是通过一个集成框架组合多个应用中的数据。这种框架可以限制企业内点对点连接的数量,从而减少导致复杂依赖关系和潜在故障点的可能。

数据集成

数据集成是将多个异构来源的数据组合到一个统一的视图中,供用户进行访问和操控。

事务处理(TP)

TP 通过控制事务应用、实施业务逻辑和规则或推送数据库更新,来维护系统(通常是数据库或文件系统)的完整性。

远程过程调用(RPC)

一种客户端与服务器的交互,让应用或功能能够分发到多个平台。

面向消息的中间件(MOM)

对 RPC 的改进,增添了队列机制,使得客户端与服务器的交互能够在目标节点缓慢或忙碌时以异步方式进行。

对象请求代理(ORB)

另一种客户端与服务器的交互,让远程服务能够像在本地一样访问。服务器进程注册到 ORB,客户端则联系 ORB 来定位这些服务。

为何要关注中间件?

假设数据就像您公司水管中的水,如果您要用水,必须提着水桶到水泵去装满,再拖回到原地,想想都可怕。如果没有中间件,那您每次工作时也要这么做。让数据通过管道流动到企业的各个位置,会更加便利、更加高效。

按需获得数据能为您带来什么?

当您集成不同应用的数据时,您可以集中精力为企业带来创新,而不是将时间耗费在手动流程上。例如,如果有现代化的应用平台,开发人员就能专注开发应用功能,而不是分心应对应用与环境其余部分的集成。

您需要的中间件工具

红帽 JBoss 企业应用平台

经过全面认证的 Java EE 7 容器,囊括了构建、运行、管理和整合内部和外部应用所需的一切部件。

红帽 JBoss 数据网格

一套智能型、分布式数据缓存解决方案,让您可以快速可靠地访问常用数据,从而弹性扩展应用。

红帽 Fuse

一套企业级集成平台,连接不同的环境,包括企业本地环境、云端环境以及两者之间的任意位置。

红帽 JBoss 数据虚拟化

一款可以将不同来源的数据统一集成,并转化为可重复使用服务的集成平台。

共同发掘中间件的无穷潜力