什么是中间件?
发布网友
发布时间:2022-04-19 12:09
我来回答
共7个回答
热心网友
时间:2022-03-29 09:24
这其实是一个比较虚的概念。广义的中间件范围很广。起沟通作用的都可以认为是中间件。甚至ODBC这样的东西你也可以认为是中间件。
现在用的比较多的中间件应该是BEA公司的tuxedo和IBM公司的weblogic?(好象是这个东西),我接触过一点tuxedo。oracle、sun和ms好象也有类似产品,不过用的人很少。tuxedo是这个领域的领导者,不过IBM正在追赶并有可能超过,毕竟,IBM就是IBM。
tuxedo这东西我们用来做数据库和前台应用之间的中间件。
使用了中间件之后,以前直接连接的前台应用程序和数据库之前就多了个tuxedo,现在前台程序把请求发给tuxedo,tuxedo再把请求发给数据库,数据库处理结束之后把结果返回tuxedo,tuxedo再把结果送回给前台。这样一搞,表面看复杂了很多。不过带来一些好处,比如:
安全。tuxedo的服务是定制的,这就有点象是存贮过程,因为应用程序无法直接接到数据库而只能通过tuxedo,所以应用程序无法做tuxedo服务之外的事情。你把你的应用逻辑写在tuxedo中,你就可以保证你的数据是安全的。
性能。有些数据库性能不好,比如oracle一个连接就是好多M,连接数一多,机器内存就没了,有了tuxedo之后,tuxedo负责连接数据库,连接数比较少,tuxedo可以用排队的方式来处理这些数据库请求,这样提高了性能。中间件的高级应用好象还可以把数据库分布在不同的机器上,由tuxedo动态分配前、后台的请求和处理,把它们搞在不同的机器上,所以你用了中间件之后如果后台数据库处理来不及,可以加一台机器,前台请求太多(比如网站)可以加多前台机器。你可以灵活的调整性能。
方便移植。业务逻辑做到了中间件里之后,你更换后台数据库、改变前台的开发工具什么的移植工作较小,因为中间件的工作改动不大。
应用服务器做的人好象就更多了。而且应用服务器这东西和中间件类似(逻辑上)我觉得它应用也是中间件的一种,不过大家一般说中间件都是指的狭义的中间件,就是tuxedo这些。
中间件应用领域很广的。简直大一点的应用都可以用到中间件。国内也有一些开发商自己写中间件,不过好象是自己用,没形成市场。
热心网友
时间:2022-03-29 10:42
针对这个问题,应该说还没有一个标准的定义,或者说还没有完全取得学术界和产业界的共识。顾名思义,中间件就是处于中间的软件。但这种不是从功能,或者特性来定义的概念,而是用“位置”来定义的名字,就容易被不同的人从不同角度赋予其不同的含义。IDC曾经给中间件下的定义是“中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信”。我国学术界一般认可的定义是“中间件是指网络环境下处于操作系统、数据库等系统软件和应用软件之间的一种起连接作用的分布式软件,主要解决异构网络环境下分布式应用软件的互连与互操作问题,提供标准接口、协议,屏蔽实现细节,提高应用系统易移植性”(北京大学梅宏)。中科院软件所研究员仲萃豪形象地把中间件定义为“平台+通信”。这个定义限定了只有用于分布式系统中的此类软件才能被称为中间件,同时此定义还可以把中间件与支撑软件和实用软件区分开来。中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。形象地说就是“上下”之间的“中间”。此外,中间件主要为网络分布式计算环境提供通信服务、交换服务、语义互操作服务等系统之间的协同集成服务,解决系统之间的互连互通问题。形象地说就是所谓“左右”之间的“中间”。要深入理解什么是中间件,形式化的定义固然重要,我们还得从概念本身去深入理解其核心特征才是最重要的。要理解一个概念,从内涵和外延两个方面去描述是哲学上非常重要的一套方法体系。八百客是专业提供SaaS服务及中间件建设的公司,具有完整而丰富的企业解决方案。
热心网友
时间:2022-03-29 12:16
中间件(MiddleWare)从字面上解释就是“处于中间的软件”,尽管程序员之外的读者会感觉陌生,但其实早在1990年,中间件就作为网络应用的基础设施出现了。诞生于贝尔实验室的Tuxedo系统就是最早用于交易系统的中间件。中间件的出现解决了异构分布网络环境下软件系统的通信、互操作、协同、事务、安全等共性问题。因为其在系统中的重要性,中间件与操作系统、数据库被称为系统软件的三驾马车。
阿里的中间件主要有包含这么几个:
分布式关系型数据库DRDS_水平拆分 做数据库扩展性的
消息队列MQ 是做消息的中间件
企业级分布式应用服务EDAS 做分布式服务的
还有一些其他的中间件,比如配置服务 缓存 等等,也都会放在中间件里
热心网友
时间:2022-03-29 14:08
答案:中间件就是程序中可织入的,可重用的,与业务逻辑无关的各种组件。
中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。
在众多关于中间件的定义中,比较普遍被接受的是IDC表述的:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。
分类:数据访问中间件,远程调用中间件,消息中间件,交易中间件,对象中间件。
举例:
1,RMI(Remote Method Invocations, 远程调用)
2,Load Balancing(负载均衡,将访问负荷分散到各个服务器中)
3,Transparent Fail-over(透明的故障切换)
4,Clustering(集群,用多个小的服务器代替大型机)
5,Back-end-Integration(后端集成,用现有的、新开发的系统如何去集成遗留的系统)
6,Transaction事务(全局/局部)全局事务(分布式事务)局部事务(在同一数据库联接内的事务)
7,Dynamic Redeployment(动态重新部署,在不停止原系统的情况下,部署新的系统)
8,System Management(系统管理)
9,Threading(多线程处理)
10,Message-oriented Middleware面向消息的中间件(异步的调用编程)
11,Component Life Cycle(组件的生命周期管理)
12,Resource pooling(资源池)
13,Security(安全)
14,Caching(缓存)
热心网友
时间:2022-03-29 16:16
中间件是一种处于操作系统(底层)和应用之间的软件或者组件,起到让应用在操作系统上可以正常运行的作用,向apache,iis,sqlserver等。
热心网友
时间:2022-03-29 18:40
中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。形象地说就是上下之间的中间。
热心网友
时间:2022-03-29 21:22
日常开发常用接触到的中间件:ODBC(.net)和JDBC(java)--数据库访问中间件
中间件是什么?干嘛用的?
中间件是一种独立的系统软件或服务程序,是连接两个独立应用程序或独立系统的软件,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件...
中间件产品该如何选择
选择中间件产品时,需要考虑以下几个因素:1. 应用类型和需求:首先需要确定中间件产品的应用类型和具体需求。例如,如果企业的应用只是传递消息,而对高可靠、高并发、高效率无特殊要求,可以选择消息中间件;如果应用是典型的关键任务的联机事务处理系统,可以选择交易中间件;如果要建立分布式构件应用,可以选择基于对象的中间件;如果要基于Web建立应用,可以选择Web应用服务器。2. 开源和流行度:在选择中间件产品时,开源和流行度是重要的考虑因素。开源意味着可以自由获取代码并根据需要进行修改和适应,而流行度则反映了该产品在开发者社区…稳定性高、通用性好、性价比高。建议您使用朗深技术的电话中间件产品,单节点可支持1000+座席,支持可视化和脚本的IVR流程定制,7x24电信级稳定。作为东进技术的海外合作伙伴,目前产品已远销海外。朗深是国内仅有的专业从事中间件研发、从不涉...
什么是中间件 中间件起到了什么作用
1、中间件是一类连接软件组件和应用的计算机软件,它包括一组服务。以便于运行在一台或多台机器上的多个软件通过网络进行交互。该技术所提供的互操作性,推动了一致分布式体系架构的演进,该架构通常用于支持并简化那些复杂的分布式应用程序,它包括web服务器、事务监控器和消息队列软件。2、中间件(middleware...
中间件是有哪些
中间件是一种独立的系统软件或服务程序,它位于操作系统和应用程序之间,用于连接各种不同的软件和硬件系统。它可以提供一系列的功能,如消息传递、事务处理、系统集成等,以实现不同系统间的数据共享和业务协同。下面详细介绍几种常见的中间件类型:1.消息中间件:它是中间件中最具代表性的种类之一。主要...
中间件是什么?
1. 消息中间件:如Kafka、RabbitMQ等,主要用于处理分布式系统中的消息传递。它们提供了一个可靠的、高效的、可扩展的消息传递机制,允许不同系统或组件之间进行异步通信,实现解耦和可扩展性。2. 应用服务器中间件:如Tomcat、WebSphere等,主要用于部署和管理Web应用程序。它们提供了HTTP服务、JSP和Servlet...
什么是中间件?中间件有什么特点?
中间件是一种独立的软件系统或服务,位于操作系统和应用程序之间,用于连接和管理不同的软件组件。它能够协调不同应用程序之间以及应用程序和系统之间的交互和通信。它是实现跨网络通信的核心部分,扮演着关键的角色,确保了计算机系统和应用程序之间的无缝连接和顺畅运行。以下是关于中间件的特点及其解释:中间...
中间件是个什么东西
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 中间件特点: 满足大量应用的需要 ; 运行于多种硬件和OS平台 ; 支持分布式计算,提供跨网络、硬件和OS平台的透明性的应用或服务的交互...
中间件的主要作用和功能
中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。目前,它并没有很严格的定义,但是普遍接受IDC的定义:中间件是一种独立的系统软件服务程序,分布式应用软件借助这种软件在不同的技术...
什么是中间件?
2. 企业服务总线(ESB)中间件:ESB是专门设计用于集成不同企业系统和服务的一种中间件,它提供消息传递、路由、转换和安全等功能。ESB如Apache ActiveMQ、IBM WebSphere MQ、RabbitMQ等,帮助企业在分布式环境中实现数据交换和业务流程协调。3. 数据库访问中间件:这类中间件允许应用程序以统一的方式访问...
什么是中间件,解释一下中间件技术,和应用
中间件,英文名称为Middleware,是一种应用于分布式系统的基础软件。从纵向层次来看,中间件位于各类应用/服务与操作系统/数据库系统以及其他系统软件之间,主要解决分布式环境下数据传输、数据访问、应用调度、系统构建和系统集成、流程管理等问题,是分布式环境下支撑应用开发、运行和集成的平台,能够实现系统之间...
什么是中间件
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。执行中间件的一个关键...