当前位置: 首页 > news >正文

什么是中间件

什么是中间件?

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

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

帝国与企业

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

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

中间件有哪些种类?

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

应用编程接口(API)

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

应用服务器

应用开发的平台,应用服务器是提供创建应用所需功能的框架,而且也是运行这些应用的服务器。

应用集成

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

数据集成

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

事务处理(TP)

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

远程过程调用(RPC)

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

面向消息的中间件(MOM)

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

对象请求代理(ORB)

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

为何要关注中间件?

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

http://www.jsqmd.com/news/1281959/

相关文章:

  • 原来重庆口碑好的会议系统厂家这么多,究竟哪个好呢?
  • MySQL——基础知识
  • GEO优化服务商推荐:哪个系统能真正量化效果? - 行业深度分析
  • AI短剧创作系统:源码交付与全流程自动化实践
  • EncodingChecker:3步解决文件乱码问题的终极指南
  • Opencv进阶篇---轮廓检测
  • Axure RP 中文汉化终极指南:三分钟解锁专业中文界面
  • 物联网设备超低功耗设计:NBM7100A与PIC18F47Q10方案解析
  • numpy 2019.9,1
  • 数据中心CDU配套阀门品牌排名:2026横评对比 - 行业深度分析
  • 基于LlamaIndex和OpenAI的AI智能体自我评估系统开发
  • C++引用:从基础别名到现代移动语义的深度解析与实战指南
  • 杭州企业财税业务服务商推荐|2026 正规财税公司十个甄选浙江乘风财务咨询有限公司:疑难税务代办/资质代办/补贴代办财税 - 栗子测评
  • 2026精选金牛区保洁公司综合实力排行名单一览 - 起跑123
  • MongoDB 4.2——持久性
  • 健康咨询数字人落地复盘:魔珐星云让“小星”先像服务入口,再补准认知层
  • 【剑指Offer】斐波那契数列之青蛙跳台阶
  • 5分钟掌握OpenUtau:开源虚拟歌手编辑器的完整使用指南
  • 前端转网安真的快吗,JavaScript 技能在渗透测试中到底能省多少力
  • 智能自动化助手:Twitch Drops Miner如何解放你的游戏时间
  • NBM7100A芯片在纽扣电池物联网设备中的能量优化方案
  • GetQzonehistory:3步完成QQ空间数据备份的终极解决方案
  • 从“听得清”到“智会通”:重庆会议系统场景深耕与技术跃迁
  • WordPress独立站搭建成本全解析:从域名到运维的完整预算方案
  • 不手写代码的第 30 天,我才明白前端这个岗位还剩什么
  • [数据结构] 树和二叉树-哈夫曼树和哈夫曼编码
  • Linux核心命令深度解析:从原理到实战的系统管理指南
  • Calculator客户端和服务器示例
  • Flutter 工程构架设计(MVVM + Repository)
  • mysql学习之旅(十三)——Mysql的存储引擎