SOA架构的中间件产品意味什么

 
   | |

导读:中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。

关键词:SOA架构 中间件产品 操作系统 网络 数据库 应用软件

 
正在加载数据...

  选择什么样的中间件?

  什么是中间件?中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用软件的中间。

  中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。在众多关于中间件的定义中,比较普遍被接受的是IDC表述的:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。

  什么是SOA?面向服务的体系结构(service-oriented architecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。

  要说一个是产品,一个是架构,两者结合在一起,即所谓符合或者支持SOA架构的中间件产品,或者干脆称自己是SOA架构的中间件产品,这意味着什么?对于用户而言,在采购中间件产品的时候,是否一定要购买这样产品呢?

  先来看所谓SOA架构的中间件产品的含义,为此,我求教了相关中间件厂商,含义无外乎两个:一个是说采用这种中间件产品可以很好的构建SOA的应用;再有就是采用这种中间件产品开发出来的应用,将很容易被整合进SOA架构。两者的含义都差不多,就是其应用很容易实现SOA。业内人士指出,所谓SOA架构中间件并不十分的准确,因为这里中间件的提法太笼统了。

  前面说过,中间件可以分为7大类,其中有些产品,如应用服务器、门户中间件、一些新的工作流系统等,与互联网关系密切,本身就支持Web服务的封装,基于它们开发的应用的功能很容易就能封装成Web服务,支持SOA;但是对于消息中间件、交易中间件等,来谈论SOA,其意义就不大了。

  总体看来,所谓SOA架构的中间件,无非就是要表明,厂商提供的中间件产品对于SOA有很好的考虑,而SOA还是针对应用而言。 SOA概念的提出是为了解决动态的B2B应用整合的问题。这里不妨看一个理论中关于物流行业的例子。物流涉及仓储、运输、车辆等几个环节,如果这些环节相应的信息系统所提供的功能服务都能够以Web服务的方式提交出来,那么相互的调用就会非常容易,很容易实现动态的B2B整合。

  哪怕你没有自己的仓库、车辆,同样可以利用这些服务,构建全新的物流商业模式,提供灵活的商业服务,成为一个第三方、第四方物流企业。对于企业而言也是这样,我们看一些成功的企业,如Cisco,对于上下游的合作伙伴,具有很高的信息化的要求。以分销代理为例,Cisco已经不接受传统的下单方式,其总代理必须通过电子商务的方式定购产品。Cisco所采用的系统是SAP的,这就要求上下游的合作伙伴也必须采用SAP的系统,否则系统就无法对接,这就是现实的情况。

  如果各家ERP厂商能够按照SOA的观念,遵循标准化的规范,把服务以标准的方式提交、展现出来,那么,这样的限制就不复存在,SOA的价值在于跨越了不同应用系统、不同技术的整合,这种整合改变现有的商业模型。

  SOA描绘了一个无比美妙的未来,也是拥有一定的现实基础,SOA与现今流行的Web服务紧密联系在一起。Web服务是一项技术,其规范包括WSDL、SOAP、UDDI。Web服务由WSDL描述,通过UDDI发现,并通过SOAP去访问。Web服务提供了技术,而SOA则提供了应用这种技术的框架,是一个非常好的思路,因此得到了软件业界普遍的认可。

  中间件对于Web应用具有简化和帮助其相互连接、相互访问的作用。从理论上讲,基于Web服务的中间件将会给应用软件的开发、部署、应用方式带来革命性变化,因为Web服务的出现,使各应用组件之间能够以松偶合和标准的方式连接,突破了传统的基于某厂商特定技术、某一种特定技术的方式。目前,几乎所有新的中间件类型、新的中间件产品都支持Web服务,可以基于它们实现SOA架构的应用。正因为如此,人们将中间件视为实现SOA架构的理想平台。凭借这种天然的联系,中间件搭车SOA也是一个增加曝光率的明智择。从技术视野上来看,如果中间件产品没有考虑SOA是短视的,在技术跟随上显得行动缓慢。

  SOA未来发展前景如何?

  按照Gartner等权威机构的预测到2008年,SOA将成为占有绝对优势的软件工程实践方法,它将很可能结束传统的整体软件体系架构长达40年的统治地位,届时将有70%的企业在进行IT建设时会转向SOA。作为一种面向未来的构想,SOA到成为现实的主流架构显然还有很长路要走。对于现实的意义而言,SOA有什么价值吗?

  对于厂商而言,应该密切注意技术的发展潮流,加紧技术的跟踪与研发,待时机成熟,随时推出产品和方案。对于用户而言,如果你具有很强的技术背景和开发实力,也可以尝试着进行一些概念的验证和实践,以期进一步熟悉和了解SOA的架构。相对而言,在企业的内部验证SOA容易一些,你可以把一些应用封装为Web服务,自己作为这些服务的提供者和使用者,在企业内部使用这些服务创造新的价值,从这个意义来说,这个时候的用户,已经成为技术的实践者。。

  如果企业打算向外部推广一些服务,和它的供货商、分销商、代理商、客户等一起来构建SOA架构的应用,就还有很长的路要走。这里有一个实际的例子。我们知道商业银行现在向客户提供很多代缴固话费、手机费、水费、电费、煤气费等服务,一个省级分行要和几十个需要收费的单位互联,实现应用的相互访问。从纯技术的角度看,无疑是基于Web服务的SOA架构应用的最佳用武之地。但现实是,没有人这么做。因为需要改造自己的业务系统,牵涉很多人员和投入。此外,也要安全的问题,效率的问题等,目前还没于成熟的解决办法。

  早有国外专家指出,SOA作为一个具有发展前景的应用系统架构,尚存在许多有待改进的地方,例如在可靠性、安全性、编制(Orchestration)、遗留系统(Legacy support)支持和语义(Semantics)方面均还存在严重不足。以可靠性为例,在不可否认性(non-repudiation)、消息一定会被传送且仅传送一次(once-and-only-once delivery)以及事务撤回(rollback)等问题上, SOA还没有做好准备。现有的基于交易中间件、消息中间件的解决方案,较好地满足了应用系统在性能、服务质量和安全性等几个方面的需求。但在SOA环境中,其应用组件之间是一种松耦合的关系,要让一个应用软件的组件,很容易去跟属于不同应用的软件组件进行对话,如何确保这些迥然不同,但又相互连接的系统的效率、可靠性、可控性和安全性,就复杂得多了,是SOA还没有最终解决好的问题。这些都影响了SOA的实际实施和推广。

  减少误区 确保SOA成功实施

  虽然SOA无法让企业在一夜之间旧貌换新颜,但通过审慎的实施,它还是可以为企业提供一种强有力的能量。然而,这种转换非一朝一夕可得,它是一个长期的流程。企业会在转换过程中逐渐发现到SOA的价值所在。

  某公司的副总裁表示,“SOA不仅仅是一门技术,它更多地是一种文化。SOA所要求的是一种新的秩序和习惯。”这种秩序能为企业带来显著的优势,其中包括:

  通过提高再利用来降低成本。

  减少冗余,加强应用的使用周期。

  能为商业规则和流程的实施提供更好的持续性、安全性和合规性。

  通过改善商业流程和用户界面来提高劳资生产力、效率和满意度。

  然而,企业在向SOA过渡的过程中也会面临着种种的困难与挑战,其中包括:

  要求进行组织变更,尤其在组织结构,财务实践和激励机制方面。

  要求对IT人员和相关商业伙伴进行全面的培训指导,以确保持续的架构和开发知识。

  要求新的基础架构,并及时更新。

  人总是有一种惰性和惯性,他们会安于现状而不愿做出改变,从而错失了SOA可能带来的回报。

  毋庸讳言,与国外发达国家的企业相比,国内在创新技术的研发和投入上仍有教大的差距,但这并不等于说,国内企业在技术上就一无所长。实际上,国内企业在技术的实践上还是有很多的经验和心得,在这一点上,国内外并没有什么差距。理论的研究再好,也是要与实际的商业进行结合才会焕发出生命力。对于SOA也是如此,没有人敢保证SOA将来肯定成功。今天所能说是,面向未来发展,SOA为应用的动态整合提供了一个非常好的思路,一个解决问题的方法。然而目前SOA相关技术和应用还处于探索和发展之中,对此一定要有一个清醒的认识。

  在IT业内有一个口号:以用户为中心,也就是以用户的需求为中心。SOA作为一种技术上的视野,应该让用户有更多的了解,也可以让用户也参与进来,我们看到IBM在很多情况下就是这样做的,这也是一种负责任的态度。在软件方面,IBM的策略是不做应用软件,只做基础软件,通过帮助合作伙伴,为最终用户提供服务。

  但是我们也看到另外一种情况,SOA作为未来的发展方向,其本身非常复杂,而国内用户受应用水平的限制,在技术视野上本不广阔,让他们清楚地分辩未来与现实本就不是一件容易事情,很容易受到舆论的误导。有些厂商,把SOA作为一种技术标签加以推广,其目的只有一个,抬升自己企业的品牌形象,通过市场手段故意混淆现实与未来的需求。这就背离了技术发展的初衷,是应该遭到唾弃和批判。

  由于SOA在国内和国外都属于一项新兴技术,因此SOA的发展还可能给国产中间件产品提供新的机会。对于中间件而言,还是要回到用户的需求上来!与兼顾未来相比,解决用户现实的问题同等重要、甚至更为重要。即使是兼顾未来,大多数国内的中间件产品同样是非常好的选择!中间件市场上,一个技术上遥遥领先的巨无霸,其实并不存在!


中间件
 中间件市场中外对峙趋强
 使用模式创建一个面向服务的组件中间件(一)
 使用模式创建一个面向服务的组件中间件(二)
 应用中间件产品实现的方案
 打碎中间件
 选择合适的SOA中间件
 SOA架构的中间件产品意味什么
 SOA引发中间件市场新变局
 甲骨文公司在Amazon云计算融合中间件
 力推基础架构参考模型 金蝶中间件再掀波澜
 企业如何用好中间件(二)
 企业如何用好中间件(一)
 关系密切但不依赖 揭密SOA与中间件的关系
 SOA加速部署中国中间件市场逆风飞扬
 在中间件上是否需完全依赖SOA
 中间件“厚”化成近年厂商重要的市场增长点
 SOA将以BI为入口进入传统市场
 中间件步入第三代 SOA凸显优势
 2009年中间件市场发展将停滞
 中间件基础软件系统面临的技术挑战
 实用化已成为中间件技术发展重要趋势
 使用IBM中间件实现SaaS多承租解决方案浅析
 开源SOA中间件平台治理提高
 国产中间件布局全球35国电信市场
 推动SOA生根落地 金蝶中间件发布Apusic V6版本
 国内外中间件抗衡 应用更胜一筹
 中间件的MES与ERP系统信息集成技术
 金蝶中间件获“2009中国IT用户满意度”产品服务大奖
 金蝶中间件亮相第五届南京软博会
 如何从技术上选择中间件
 中间件2.0,基础软件再推新概念
 以中间件为技术平台的SOA易被企业所接受
 金蝶中间件携中间件2.0亮相国内技术盛会
 中间件在技术上是否完全依赖SOA?

 
来源:网络    
 
 
 
 
 

SOA基础

 
SOA专家组与10月23日发布SOA宣言,该宣言阐述了106个字的原则,他们认为最重要的是受欢迎的一体化战略。虽然有些人可能认为SOA像企业架构……
 
网络臭虫(Web bug)也称为网络信标(Web beacon)是一个放在网页或电子邮件上的文件对象,用于监测用户的行为。
 
顶级域名(TLD,top-level domain)是因特网域名的最后一部分。顶级域名是一个域名的最后一个点后面的字母组成的部分。
 
本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度,这样一来每个服务都可以不受羁绊……
 
做了两年CUNA Mutual 集团顾客营运资深副总裁的Rick Roy,今年转投IT业,担任集团CIO一职。这位致力于实现IT价值的CIO眼下正面临如何在经济危机中领导IT部门的重重挑战。

热门技术手册排行

 

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

 

本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。

 

业务流程管理(business process management,bpm)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(bpi)、业务流程重组(bpr)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、eai、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

 

TOAGF是一个架构框架,简而言之,TOGAF是一种协助发展,验收,运行,使用,和维护架构的工具。它是基于一个迭代(Iterative)的过程模型,支持最佳实践和一套可重用的现有架构资产。

 

云计算的概念越来越流行,Amazon、Google和IBM是第一批将云计算引入公众视线的公司。云计算就是新的Web2.0,一种既有技术上的市场绽放。

 

Mashup是一个非常cool的新的应用程序种类。如果你想真正的了解它们,我们需要回过头来看看你现在的计算机,其实它就是一个非常好的帮助你理解mashup的模型。现在开源的操作系统无疑是非常好的apis的集合或应用程序编程接口,帮助开发者去构建其应用程序。计算机本身也是一个很好的为用户提供接口的例子,键盘和鼠标可以被理解为你通过计算机的接口而使用的不同的应用程序。本技术手册为读者提供了一些相关信息,如果需要深入了解mashup,读者可以借助其他参考资源。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录