不会还有人不知道中间件是啥吧?

不会还有人不知道中间件是啥吧/h3>
  • 引言
  • 一. 中间件是什么/li>
  • 二. 中间件能干啥/li>
    • 2.1 中间件在应用开发中担任的角色
  • 三. 中间件特点
  • 四. 中间件的分类

F0D56454-48E1-4B45-9427-9F3184F9B51D.jpeg
不会还有人不知道中间件是啥吧?
不会还有人不知道中间件是啥吧?

看到这里应该就可以解决大家的大多数问题了,下面就是在百度百科上找的分类,我个人感觉写的大同小异!!!

目前,针对不同的应用涌现出各具特色的中间件产品。从不同的角度和层次对中间件有不同的分类。根据中间件在系统中所起的作用和采用的技术不同,可以把中间件大致划分为以下几种:

  1. 数据访问中间件(Data Access Middieware)

在分布式系统中,重要的数据都集中存放在数据服务器中,它们可以是关系型、复合文档型、具有各种存放格式的多媒体型,或者是经过加密或压缩存放的,数据访问中间件是在这种系统中建立数据应用资源互操作的模式,实现异构环境下的数据库联接或文件系统联接的中间件,从而为在网络上虚拟缓冲存取、格式转换、解压等带来方便。数据访问中间件在所有的中间件中是应用最广泛、技术最成熟的一种。一个最典型的例子就是ODBC,ODBC是一种基于数据库的中间件标准,它允许应用程序和本地或者异地的数据库进行通信,并提供了一系列的应用程序接口API,当然,在多数情况下这些API都是隐藏在开发工具中,不被程序员直接使用。不过在数据访问中间件处理模型中,数据库是信息存贮的核心单元,中间件完成通信的功能,这种方式虽然是灵活的,但是并不适合于一些要求高性能处理的场合,因为它需要大量的数据通信,而且当网络发生故障时,系统将不能正常工作。

  1. 远程过程调用中间件(RPC)

远程过程调用是另外一种形式的中间件,它在客户/服务器计算方面,比数据库中间件又迈进了一步。通过这种远程过程调用机制,程序员编写客户方的应用,需要时可以调用位于远端服务器上的过程。它的工作方式如下:当一个应用程序A需要与远程的另一个应用程序B交换信息或要求B提供协助时,A在本地产生一个请求,通过通讯链路通知B接收信息或提供相应的服务,B完成相关处理后将信息或结果返回给A。RPC的灵活特性使得它有比数据库中间件更广泛的应用,它可以应用在更复杂的客户/服务器计算环境中。远程过程调用的灵活性还体现在它的跨平台性方面,它不仅可以调用远端的子程序,而且这种调用是可以跨不同操作系统平台的,而程序员在编程时并不需要考虑这些细节。RPC也有一些缺点,主要是因为RPC一般用于应用程序之间的通信,而且采用的是同步通信方式,因此对于比较小型的简单应用还是比较适合的,因为这些应用通常不要求异步通信方式。但是对于一些大型的应用,这种方式就不是很适合了,因为此时程序员需要考虑网络或者系统故障,处理并发操作、缓冲、流量控制以及进程同步等一系列复杂问题。

  1. 面向消息中间件(MOM)

消息中间件能在不同平台之间通信,实现分布式系统中可靠的、高效的、实时的跨平台数据传输,它常被用来屏蔽掉各种平台及协议之间的特性,实现应用程序之间的协同;其优点在于能够在客户和服务器之间提供同步和异步的连接,并且在任何时刻都可以将消息进行传送或者存储转发,这也是它比远程过程调用更进一步的原因。另外消息中间件不会占用大量的网络带宽,可以跟踪事务,并且通过将事务存储到磁盘上实现网络故障时系统的恢复。当然和远程过程调用相比,消息中间件不支持程序控制的传递。消息中间件适用于需要在多个进程之间进行可靠的数据传送的分布式环境。它是中间件中唯一不可缺少的,也是销售额最大的中间件产品,目前在Windows2000操作系统中已包含了其部分功能。

  1. 面向对象的中间件

面向对象的中间件(Object Oriented Middieware)。当前开发大型应用软件通常采用基于组件技术,在分布系统中,还需要集成各节点上的不同系统平台上的组件或新老版本的组件;组件的含义通常指的是一组对象的集成,其种类有数百万种,但这些组件面临着缺乏标准而不能相互操作,各厂家的组件只能在各自的平台上运行。为此,连接这些组件环境的面向对象的中间件便应运而生。面向对象的中间件是对象技术和分布式计算发展的产物,它提供一种通讯机制,透明地在异构的分布计算环境中传递对象请求,而这些对象可以位于本地或者远程机器。在这些面向对象的中间件中,功能最强的是CORBA,可以跨任意平台,但是太庞大;JavaBeans较灵活简单,很适合于作浏览器,但运行效率差;DCOM模型主要适合Windows平台,已广泛使用。但是DCOM和CORBA这两种标准相互竞争,而且两者之间有很大的区别,这在一定程度上阻碍了面向对象中间件的标准化进程。当前国内新建系统实际上主要是UNIX(包括LINUX)和Windows,因此针对这两个平台建立标准的面向对象中间件是很有必要的。

  1. 事务处理中间件(TPM)

事务处理中间件是在分布、异构环境下提供保证交易完整性和数据完整性的一种环境平台;它是针对复杂环境下分布式应用的速度和可靠性要求而实现的。它给程序员提供了一个事务处理的API,程序员可以使用这个程序接口编写高速而且可靠的分布式应用程序——基于事务处理的应用程序。事务处理中间件向用户提供一系列的服务,如应用管理、管理控制、已经应用于程序间的消息传递等。常见的功能包括全局事务协调、事务的分布式两段提交(准备阶段和完成阶段)、资源管理器支持、故障恢复、高可靠性、网络负载平衡等等。

  1. 网络中间件

它包括网管、接入、网络测试、虚拟社区、虚拟缓冲等,也是当前研究的热点。
终端仿真/屏幕转换中间件
它的作用在于实现客户机图形用户接口与已有的字符接口方式的服务器应用程序之间的互操作。

以上就是关于中间件的全部内容,欢迎大家关注我!!!

文章知识点与官方知识档案匹配,可进一步学习相关知识云原生入门技能树首页概览8783 人正在系统学习中

来源:福尔摩东

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年9月11日
下一篇 2020年9月11日

相关推荐