WebService 即网络服务是下一代互联网的发展方向就是某些公司,用他们的技术提供一些功能的实现,然后对外提供接口,让外界用户调用 比如:某公司通过其技术,可以获得天气预报的信息,这样它就可以向外界提供一个方法,你调用了这个方法,就可以获取天气预报的信息string字段(举个例子而已,不一定是string这么简单的类型),这就是一种服务就是WebService
WSDL:是对如何调用这个接口,应该传怎样的参数,获取的数据怎样分析等等的XML说明文档
SOAP:是在这个提供服务与接收服务之间存在的信息交换的通信协议(其实学习WebService这些东西了解一下就行了,没必要深究)
JMS:JAVE的消息提供平台 就是一些规范真没必要懂
中间件:是一种独立的软件系统或服务系统,用于提供服务 你可以理解成API
如果有疑问的话,继续联系我 红包拿来 嘿嘿
中间件是一种独立的系统软件或服务程序,是连接两个独立应用程序或独立系统的软件,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。
中间件在 *** 作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。
随着计算机技术的快速发展,更多的应用软件被要求在许多不同的网络协议、不同的硬件生产厂商以及不一样的网络平台和环境上运营。这导致了软件开发者需要需要开发多种应用程序来达到运营的目的。所以,中间件技术的产生,在极大程度上减轻了开发者的负担,使得网络的运行更有效率。
扩展资料
中间件技术
1、远程过程调用
一个应用程序使用RPC来“远程”执行一个位于不同地址空间里的过程,并且从效果上看和执行本地调用相同。事实上,一个RPC应用分为两个部分:server和client。server提供一个或多个远程过程;client向server发出远程调用。
在RPC模型中,client和server只要具备了相应的RPC接口,并且具有RPC运行支持,就可以完成相应的互 *** 作,而不必限制于特定的server。
2、面向消息的中间件
MOM指的是利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。消息放入适当的队列时,目标程序甚至根本不需要正在运行;即使目标程序在运行,也不意味着要立即处理该消息。
对应用程序的结构没有约束:在复杂的应用场合中,通讯程序之间不仅可以是一对一的关系,还可以进行一对多和多对一方式,甚至是上述多种方式的组合。多种通讯方式的构造并没有增加应用程序的复杂性。
3、对象请求代理
可向上提供不同形式的通讯服务,包括同步、排队、订阅发布、广播等等,在这些基本的通讯平台之上,可构筑各种框架,为应用程序提供不同领域内的服务,如事务处理监控器、分布数据访问、对象事务管理器OTM等。
4、事务处理监控
事务处理监控最早出现在大型机上,为其提供支持大规模事务处理的可靠运行环境。随着分布计算技术的发展,分布应用系统对大规模的事务处理提出了需求,比如商业活动中大量的关键事务处理。
参考资料来源:百度百科—中间件
参考资料来源:百度百科—中间件技术
什么是中间件在一个具体的应用项目之中,到底能不能够不用中间件这也是中间件厂商经常被问到问题之一。之所以有此一问,说明了用户只是知道了中间件,听说其很重要,但并真正不知道什么是中间件我们最早知道的中间件是一个称为Tuxedo的东西,实质上它是一个交易中间件。1998年IDC公司对于中间件有一个定义,并根据用途将其划分为6个类别。如今所保留下来的只有消息中间件和交易中间件,其他的已经被逐步融合到其他产品中了,被包裹进去了,在市场上已经没有单独的产品形态出现了。例如,当时有一个叫屏幕数据转换的中间件,其主要是针对IBM大机终端而设计产品,用于将IBM大机终端的字符界面转化为用户所喜欢的图形界面,类似的东西当时都称为中间件。但随着IBM大机环境越来越少,但是盛行一时的此类中间件如今已经很少再被单独提及。
2000年前后,互联网盛行起来,随之产生了一个新的东西,就是应用服务器。实际上,交易中间件也属于是应用服务器,为了区分,人们传统的交易中间件称为分布交易中间件,因它主要应用在分布式环境下,而将新的应用服务器,称为J2EE中间件,到目前为止,这都是谐∩戏浅H让诺牟�贰
EAI概念出来之后,市场上又推出了一些新的软件产品,,例如工作流、Portal等,但从分类上不知道怎么归类,向上不能够划归应用,往下又不能归入 *** 作系统,于是就把它归入了中间件,如此中间件的概念更加扩大了。目前,市场上对于中间件,各家的说法不一,客观上也导致了理解上的复杂性。
如今,市场上又推出了很多新的概念,例如三层结构、构件、Web服务,其中风头最劲的当属SOA(面向服务的架构)。实际上,他们都不是一个产品,而是一种技术的实现方法,是开发一个软件的一种方法论。我们知道,最早软件开发方法就是编程、写代码的,其缺点在于无法复用,为此提出了构件化的软件开发方法,通过把编程中一些常用功能进行封装,并规范统一接口,供其它程序调用,例如我们开发一个新软件,可能要用到构件1、构件2、构件3,那么,我们只要对其进行本地组装,就可以得到我们想要的应用软件。在互联网得到普及重视之后,软件开发方法在构件化基础上又有新发展,核心思想是软件并不需要囊括构件,所需要的仅仅是构件的运行结果,例如编写一个通信传输软件,就可以到网上寻找构件,并提出服务请求,得到结果后返回,而不需要下载构件并打包,这就是现在所说的SOA。想要现实SOA,就要规范构件接口,同时还要规范构件所提交的服务结果,如此,新的软件开发的思想才能够行的通。但SOA并不是一个产品,而是一种思想方法,而实现这种方法的基础,如今看来只有中间件。
那么,到底什么才是中间件,什么不是中间件从东方通科技的观点看,中间件应该具备两个关键特征:首先要为上层的应用层服务,这是一个基本条件;此外,又必须连接到 *** 作系统的层面,并却保持运行工作状态,具备了这样两个特征才能称为中间件。现在很多人把开发工具也称为中间件是不合适的,因为开发工具开发出来的软件,并不依赖开发工具与底层 *** 作系统连接。
==============================================================
BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、 网络应用和数据库应
用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的
开发、集成、部署和管理之中。
BEA WebLogic Server拥有处理关键Web应用系统问题所需的性能 、可扩展性和高可用性。
与BEA WebLogic Commerce ServerTM配合使用, BEA WebLogic Server可为部署适应性个性化
电子商务应用系统提供完善的解决方案。
BEA WebLogic Server具有开发和部署关键任务电子商务Web应用系统 所需的多种特色和优
势,包括:
1)领先的标准
对业内多种标准的全面支持,包括EJB、JSB、JMS、JDBC、XML和WML,使Web应用系统的实
施更为简单,并且保护了投资,同时也使基于标准的解决方案的开发更加简便。
2)无限的可扩展性
BEA WebLogic Server以其高扩展的架构体系闻名于业内,包括客户机连接的共享、资源
pooling以及动态网页和EJB组件群集。
3)快速开发
凭借对EJB蚃SP的支持,以及BEA WebLogic Server 的Servlet组件架 构体系,可加速投
放市场速度。这些开放性标准与WebGain Studio配 合时,可简化开发,并可发挥已有的技能,
迅速部署应用系统。
4)部署更趋灵活
BEA WebLogic Server的特点是与领先数据库、 *** 作系统和Web服务器 紧密集成。
5)关键任务可靠性
其容错、系统管理和安全性能已经在全球数以千记的关键任务环境中得以验证。
6)体系结构
BEA WebLogic Server是专门为企业电子商务应用系统开发的。企业电 子商务应用系统需
要快速开发,并要求服务器端组件具有良好的灵活性和安全性,同时还要支持关键任务所必需
的扩展、性能、和高可用性。BEA WebLogic Server简化了可移植及可扩展的应用系统的开发,
并为其它应用 系统和系统提供了丰富的互 *** 作性。
凭借其出色的群集技术,BEA WebLogic Server拥有最高水平的可扩展 性和可用性。BEA
WebLogic Server既实现了网页群集,也实现了EJB组件 群集,而且不需要任何专门的硬件或
*** 作系统支持。网页群集可以实现透明的复制、负载平衡以及表示内容容错,如Web购物车;
组件群集则处理复杂的复制、负载平衡和EJB组件容错,以及状态对象(如EJB实体)的恢复。
无论是网页群集,还是组件群集,对于电子商务解决方案所要求的可扩展性和可用性都是至关
重要的。共享的客户机/服务器和数据库连接以及数据缓存和EJB都增强了性能表现。这是其它
Web应用系统所不具备的。
===================================================
WebSphere 是随需应变的电子商务时代的最主要的软件平台。它使您的公司可以开发、部署和整合新一代的电子商务应用,如B2B 电子商务,并支持从简单的网页内容发布到企业级事务处理的商业应用。WebSphere 改变了业务管理者,合作伙伴和雇员之间的关系,例如您可以用它做如下工作:
创建高效的电子商务站点增强网上交易的质量和数量。
把应用扩展到联合的移动设备上使销售人员可以为客户提供更快捷的服务。
整合已有的应用并提供自动简捷的业务流程。
面对一个实习生,我的研究方向是大型的数据处理,分布式计算,中间件的hadoop,似乎是说我很感兴趣的话,中间件,直接问我,我的理解的中间件,我很少思考这样一个问题:中间件有自己的理解是硬件, *** 作系统和应用平台,可以屏蔽不同性质的 *** 作系统。
一个完整的系统平台由一套,中间件通常集成,包括开发平台和运行平台。中间件这组,通常会是至少一个通信中间件。中间件是分布式系统中使用的一个概念。
中间件屏蔽了底层 *** 作系统的复杂性,应用开发简单的统一。降低编程的复杂性(Hadoop是一个很好的例子),专注于自己的业务,没有程序在不同的系统上的软件移植和重复劳动,大大降低了技术负担。中间件把应用系统,而不是只是简单的开发,缩短开发周期,还减少了工作量的系统维护, *** 作和管理(这并没有觉得在hadoop直接写MPI程序,也可以运行不需要任何额外的维护,容错机制,Hadoop的声音,满足了这一点)。此外,还降低了电脑的整体成本投入。
中间件,以便为解决分布式异构分布式计算系统的问题比较困扰,不得不面对的一个问题。中间件提供了一个标准的程序接口和协议的应用程序调用,或更确切地说,是中间件服务过程调用的应用程序接口来完成的任务。
其中:特性的中间件
可以概括为如下:
1。满足大量的应用程序的需求
各种硬件和OS平台上运行
跨网络,应用或服务的硬件和OS平台的透明性,支持分布式计算
4支持标准协议的互 *** 作性
5。支持标准接口的便携性
,中间件成为许多标准化工作的重要组成部分。对于应用软件开发,中间件是 *** 作系统和网络服务更为重要,中间件提供了一个相对稳定的高层应用程序接口定义,不管底层的计算机硬件和系统软件更换,只要将中间件升级更新并保持中间件的外部接口定义了相同的应用软件,几乎不需要任何,从而保护重要的企业应用软件开发和维护的投资。
:中间件的分类
在分布式环境中,中间件必须提供通信服务,我们调用这个服务平台,根据不同的目的和实现机制,可分为下列几大类:
远程过程调用(RemoteProcereCall,远程过程调用)
面向消息的中间件(面向消息的中间件)
对象请求代理(对象请求代理)
它们的功能:
第一:起来,提供不同形式的通讯服务,包括同步,排队订阅出版,广播,这些基本的通讯平台,可以建立各种框架,为应用程序提供服务,在不同领域的事务处理监视分布式事务处理访问对象交易经理OTM。
二:中间件本身定义的相应字段的应用程序的体系结构,标准的服务组件,用户只需告诉框架感兴趣的事件,然后提供处理这些事件的代码。当一个事件发生时,框架将调用用户代码。用户不必调用框架,用户程序不关心的框架结构,实施过程中,系统API调用,框架是负责基于中间件的应用程序开发完成后具有良好的可扩展性,可管理性,高可用性和可移植性。
21分类介绍:
211远程过程调用
RemoteProcereCall,远程过程调用是一种广泛使用的分布式应用程序的方法。应用程序使用RPC来“远程”执行一个不同的地址空间的过程中,从效果来看,执行相同的本地电话。
212面向消息的中间件
的MOM是可靠,高效的消息传递机制,独立于平台的数据交换和集成的分布式系统数据通信的基础上。通过提供消息传递和消息排队模型,它可以扩展的分布式环境中,进程间通信,并支持多种通讯协议,语言,应用程序,硬件和软件平台。流行的MOM中间件产品有IB?M的MQSeries,:BEAMessageQ。
消息传递和排队技术有三个主要特点:
通信程序可以运行在不同的时间,程序是在网络上直接相互通话,而是间接地将消息放入消息队列,因为程序之间有没有直接的联系。因此,他们不被同时运行。到合适的队列中的消息,目标程序或根本不需要正在运行的运行,即使目标程序并不意味着他们应该立即处理该消息。
:复杂的应用程序的应用的结构上,图2是不具有约束力,通信处理不仅可以是一个之间的一一对应关系,并且也可以是一对一一对多和many-to-one上,或什至是的各种方法的组合。多种通信手段的构造函数不增加的应用程序的复杂性。
3。计划和网络复杂性的性隔离:程序会把消息放入消息队列,或删除的消息从消息队列中的沟通与此相关的所有活动,比如维护消息队列,维护之间的关系程序和重新启动网络和移动网络中的消息队列处理的任务的MOM不直接与其他程序调用,不涉及复杂的网络通信。
213对象请求代理
随着时代的发展对象技术与分布式计算技术,既能互相形成一个分布式对象计算,并发展成为当今软件技术的主流方向。1990年底,对象管理集团OMG对象管理结构OMA(对象管理体系结构),对象请求代理(对象请求代理)是这个模型的核心组成部分。它的作用是提供一个通信框架,透明的请求异构分布式计算环境中传递对象。CORBA规范包括了ORB的所有标准接口。CORBA11于1991年推出,定义了接口描述语言OMGIDL和支持的客户机/服务器对象特定的ORB互 *** 作性API。CORBA20规范描述了不同厂商的ORB之间的互 *** 作性。
对象请求代理(ORB)是对象总线,它在CORBA规范的核心,定义异构环境下对象透明的基本机制发送请求和接收响应,是一个客户机/服务器对象之间的关系建立中间件。ORB允许向其他对象的对象的请求可以是透明的或接受的其他对象的响应,这些对象可以位于本地到远程机器上,也可以位于。可以实现ORB拦截请求调用,并负责寻找所请求的对象,传送参数,调用相应的方法,并返回结果。客户端对象在同一台服务器对象的沟通和激活机制或存储服务器对象,不知道,也不用知道服务器对象,它是什么语言,什么作业系统或其他系统组件不属于对象的接口。
这是值得注意的,客户端和服务器的角色,仅仅是用来协调对象之间的交互,根据不同的场合,在对象上的ORB可以是客户端,也可以是一个服务器,或者甚至两者。当对象发出请求时,它是在客户端的角色,当它接收到一个请求时,它是在一个服务器角色。大多数的对象都发挥客户端扮演的角色在服务器的角色。此外,没有一个是负责传输和服务器管理,客户端和服务器之间的直接连接对象请求ORB,因此,与RPC支持简单的客户机/服务器体系结构相比,ORB可以支持更加复杂的结构。
214事务处理监视器
事务处理监控程序(交易处理监视器)最早出现在大型机上,大规模事务处理环境中的可靠运行提供支持。随着分布式计算技术的发展,分布式应用系统需要大规模的事务处理,如大量的关键事务处理的商业活动。交易监控社会之间的客户端和服务器,事务管理和协调,负载平衡和故障恢复,以提高系统的整体性能。它可以被看作是事务处理应用程序的“ *** 作系统”。一般来说,事务处理监视器具有以下特点:
流程管理,包括启动服务器进程,分配任务,监督其执行情况和负载平衡。
事务管理,即确保在其监测的原子性,一致性,独立性和持久性的交易。
在客户端和服务器之间的通讯管理提供了多种通讯机制,包括请求响应会话,排队,订阅发布和广播。
交易监控提供了大量的客户端,如飞机订票系统的服务。如果被分配给所需要的资源,然后为每个客户端的服务器,该服务器将被淹没(如在图2中所示)。但实际上,在相同的时间,并非所有的客户端需要请求服务,一旦客户端请求的服务,希望得到一个快速的反应。事务处理监视器 *** 作系统之上提供一组服务,管理和分配相应的服务进程,使服务器可以有效地为大型客户提供服务,在有限的系统资源,客户端的请求。
:中间件的不足之处
最流行的中间件服务使用专有的API和专有的协议,使来自不同制造商的应用程序建立在一个单一的制造商的产品实现互 *** 作性是困难的。一些中间件服务平台实现,从而限制了异构系统之间移植的应用。应用程序开发者建立自己的应用程序,这些中间件服务也需要承担相当大的风险,他们往往需要重写他们的系统,随着技术的发展。中间件服务的分布式计算的抽象程度提高,应用程序开发人员需要面对很多困难的设计选择,例如,开发人员还需要在客户端和服务器端的功能分配决定的分布式应用程序。通常是指客户端的显示设备上的服务,方便的使用数据服务的服务器上关闭到数据库中,但它并非总是如此,更何况其他应用程序是如何分配的,它是不容易的确定。
中间层 (Middle Tier)也称作“应用程序服务器层或应用服务层”,是用户接口或 Web 客户端与数据库之间的逻辑层。典型情况下 Web 服务器位于该层,业务对象在此实例化。中间层是生成并 *** 作接收信息的业务规则和函数的集合。它们通过业务规则(可以频繁更改)完成该任务,并由此被封装到在物理上与应用程序程序逻辑本身相独立的组件中。请参见客户端层、数据源层。三层网络结构指的是将数据处理过程分为三部分:第一层是客户端(用户界面层),提供用户与系统的友好访问;第二层是应用服务层(也叫中间层),专司业务逻辑的实现;第三层是数据源层(数据服务层,数据库系统),负责数据信息的存储、访问及其优化。由于业务逻辑被提取到应用服务层,大大降低了客户端负担,因此也成为瘦客户(Thin Client)结构,三层结构在传统的二层结构的基础上增加了应用服务层,将应用逻辑单独进行处理,从而使得用户界面与应用逻辑位于不同的平台上,两者之间的通信协议由系统自行定义。通过这样的结构设计,使得应用逻辑被所有用户共享,这是两层结构应用软件与三层应用软件之间最大的区别。三层结构将表示部分和业务逻辑部分按照客户层和应用服务层相分离,客户端和应用服务层、应用服务层和数据库服务层之间的通讯、异构平台之间的数据交换等都可以通过中间件或者相关程序来实现。当数据库或者应用服务层的业务逻辑改变时,客户端并不需要改变,反之亦然,大大提高了系统模块的复用性,缩短开发周期,降低维护费用。客户机/服务器系统 Client/server system 简称C/S系统。是一类按新的应用模式运行的分布式计算机系统。在这个应用模式中,用户只关心完整地解决自己的应用问题,而不关心这些应用问题由系统中哪台或哪几台计算机来完成。在C/S系统中,能为应用提供服务(如文件服务,打印服务,拷贝服务,图象服务,通信管理服务等)的计算机或处理器,当其被请求服务时就成为服务器。一台计算机可能提供多种服务,一个服务也可能要由多台计算机组合完成。与服务器相对,提出服务请求的计算机或处理器在当时就是客户机。从客户应用角度看,这个应用的一部分工作在客户机上完成,其他部分的工作则在(一个或多个)服务器上完成。
C/S系统最重要的特征是:它不是一个主从环境,而是一个平等的环境,即C/S系统中各计算机在不同的场合既可能是客户机,也可能是服务器,进入90年代,C/S系统迅速流行,在于它有很多优点:用户使用简单,直观;编程,调试和维护费用低;系统内部负荷可以做到比较均衡,资源利用率较高;允许在一个客户机上运行不同计算机平台上的多中应用;系统易于扩展,可用性较好,对用户需求变的适应性好。
从技术角度看,C/S系统本质上是将70年代就提出的虚拟机器的概念使用于分布式计算机系统,其本质是实现功能的合理分布和处理的“无缝连接”。C/S系统的实用依赖于若干90年代才成熟的技术:首先由于以一系列标准为基础的开放式系统原则被普遍接受,为各种客户机,服务器之间提供中间件(Middleware)成为可能;第二,CASE工具,视窗技术,面向对象技术,分布式数据库技术等的成熟,为C/S系统环境下的编程,调试,运行提供了良好的条件;性能价格比迅速提高的计算机为开销甚大的分布式 *** 作系统提供了可接受的运行条件,使得分布式逻辑处理,分布式服务器等应用模式得以实现。
C/S系统已广泛用于中小型工商企业,机关等部门,由于通讯技术的进展,C/S系统在地域上可有较大的跨度。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)