中间件的认识与理解

目录

1.什么是中间件

2.为什么叫中间件

3.中间件组成

4.为什么要使用中间件

4.1应用开发

4.2管理与各种后端资源的连接

4.3根据客户请求实现逻辑

4.4处理并发处理、负载平衡、事务管理

4.5安全访问后端资源

5.中间件类型


1.什么是中间件

中间件是一种通过提供通信和数据管理方法来弥合应用程序和操作系统 ( OS ) 之间差距的软件。此功能对于无法以任何方式与其他软件工具或数据库交换数据的应用程序非常有用。

2.为什么叫中间件

中间件之所以如此命名,是因为它位于软件堆栈中操作系统和在其上运行的应用程序之间。具体来说,它位于前端的客户端请求和所请求的后端资源之间。

客户端(通常是驻留在前端的应用程序,即用户与软件交互的地方)可以通过基于网络的交互发出请求。数据库、消息队列、 NoSQL数据存储和文件服务器等资源是后端的一部分。中间件位于这些端之间,以促进它们之间的通信和数据共享。

3.中间件组成

  • 管理控制台。提供中间件活动和配置的概述。
  • 客户端界面。与涉及的应用程序、数据库或其他服务进行通信。
  • 内部接口。确保组件的功能具有凝聚力。
  • 平台界面。确保软件之间的兼容性。
  • 协议管理。定义应用程序进行数据交换必须遵循的过程。
  • 会话管理。在中间件和应用程序之间创建安全的通信通道。
  • 数据库管理器。与不同的数据库集成。
  • 运行时监视器。持续监控中间件数据移动并为开发人员生成报告。

4.为什么要使用中间件

早期,中间件主要用作应用程序前端和后端资源之间的中介。如今,中间件具有更多功能,包括以下功能。

应用开发

中间件使组织和开发人员能够更有效地构建应用程序。例如用于应用集成。使用多云和容器化环境的组织还使用中间件来经济高效地开发和扩展应用程序。此外,中间件还用于数据处理和应用程序编程接口 ( API ) 管理以及许多身份验证和消息传递服务。

管理与各种后端资源的连接

中间件组件可能会创建连接池以提供对后端数据库的快速有效的访问。它还可以创建与消息队列和主题的连接,并管理与基于云的资源(例如Amazon Simple Storage Service)的连接。

根据客户请求实现逻辑

中间件可以接受用户请求,实现逻辑并定制结果。例如,它可能会识别出发出请求的客户端浏览器的语言标头设置为英语,因此它对后端进行的查询应该只返回基于英语的结果。另一个用例:服务器可以根据客户端的IP 地址识别客户端的地理位置,并将数据返回给客户端,并优先考虑位于附近的结果。

处理并发处理、负载平衡、事务管理

中间件通常可以垂直和水平扩展,以将传入的客户端请求分发到多个云服务器、虚拟机或可用区域。这称为负载平衡。它还可以处理并发和事务管理问题,例如当多个客户端尝试同时访问或更新后端资源时出现的问题。

安全访问后端资源

中间件服务器通常需要使用安全套接字层等技术的安全连接以及使用用户名和密码组合或数字证书的身份验证。一旦客户端提供了此安全信息,中间件就会使用它来检查客户端是否有权访问数据。只有在确认权利后,数据才会使用安全加密的连接从中间件服务器发送到客户端。

5.中间件类型

中间件有很多种类型,每种类型都有特定的功能和用途。常见的类型包括以下几种:

  • 通信中间件(Communication Middleware):用于不同应用程序或系统之间的通信和数据传输。这种中间件可以处理网络通信、消息传递和远程过程调用(RPC)等任务,以促进系统之间的数据交换和协作。
  • 事务中间件(Transaction Middleware):用于管理分布式系统中的事务处理。事务中间件负责确保事务的原子性、一致性、隔离性和持久性(ACID特性),以确保系统在执行跨多个组件或系统的事务时保持数据的完整性。
  • 消息中间件(Message-Oriented Middleware):用于支持基于消息的系统集成。消息中间件允许应用程序通过发送和接收消息来进行通信,从而实现解耦和异步通信,常见的消息中间件包括RabbitMQ、Apache Kafka等。
  • 对象中间件(Object Middleware):用于处理分布式对象之间的通信和交互。对象中间件提供了一种机制,允许分布式系统中的对象进行远程访问和方法调用,而不需要显式的网络编程。
  • 安全中间件(Security Middleware):用于管理系统的安全性和访问控制。安全中间件提供了身份认证、授权、加密、防火墙等功能,以保护系统免受未经授权的访问和恶意攻击。
  • 事务处理中间件(TP Monitor Middleware):专门用于处理大规模事务处理系统的中间件。它们提供了事务管理、资源分配和性能优化等功能,以支持高并发和高可用性的事务处理。
  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值