SOA解决方案的选择.docx

上传人:scccc 文档编号:13633664 上传时间:2022-01-20 格式:DOCX 页数:12 大小:51.65KB
返回 下载 相关 举报
SOA解决方案的选择.docx_第1页
第1页 / 共12页
SOA解决方案的选择.docx_第2页
第2页 / 共12页
SOA解决方案的选择.docx_第3页
第3页 / 共12页
SOA解决方案的选择.docx_第4页
第4页 / 共12页
SOA解决方案的选择.docx_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《SOA解决方案的选择.docx》由会员分享,可在线阅读,更多相关《SOA解决方案的选择.docx(12页珍藏版)》请在三一文库上搜索。

1、基于J2EE体系架构搭建符合 SOA架构的运营管理平台1 SOA架构1.1 IT架构的演变下图展示了 IT架构的演变趋势可以看出,面向服务的体系结构(service-oriented architeA)是目前最先进的IT体系架构,是所有厂商搭建软件产品的必然选择传统架构基于消息传递的模式企业应用整合先进构架而向服务体系架构,党用之间点时点的连接实现油垄一基本的恺息交 互和歌胆他哺浦可HUB牛式一看产用一1可 的整台相容易管理大的旌接和系 酰.甬司企业济务愿笠密贝黯务为整 合庭中和流程*现,恬助标唐的燧口灵活堆: 现斗正的隔书后受FlexibilityAs Patterns Have Fvoie

2、d So Has IBM1.2 SOA概念首先SOA是一个概念或者说是一个模型,下图是它体系结构最简单的描述。它的思路是把一些功 能集成一个独立的服务,以服务的形式为客户或其他服务调用。它应该是计算机软件技术特别是基于 Web+算技术发展到一个阶段的一个新的思想,一个构建整个系统的一个新的思想或者也可以说是新 的一个方式,但它仅仅是一个概念或模型,它只是在宏观上描述了一个基本路线,其中以服务为最小 模块的概念是最重要的、最具前瞻性的,也可能体现了未来软件发展的方向。目前,SOA的通用定义为:SOA是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来

3、。接口是采用中立的方式进行定义的,它应该独立于 实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一 和通用的方式进行交互。SOA涉及三种角色:1)服务提供者(ServicProvide)2)服务请求者(ServicR equestgr?)服务目录(ServiceRegistry)SOA涉及三个操作:。发布(Publish) 2)查找(Find); 3)绑定(Bind1.3 SOA特征可重用一个服务创建后能用于多个应用和业务流程。松耦合服务请求者到服务提供者的绑定与服务之间应该是松耦合的。因此,服务请求者不需要知道服务提供者实现的技术细节,例如程序语言、底层

4、平台等等。明确定义的接口服务交互必须是明确定义的。Wet务描述语言(Web Services DescriptionLanguageWSDL)是用于描述服务请求者所要求白绑定到服务提供者的细节。WSDL不包括服务实现的任何技术细节。服务请求者不知道也不关心服务究竟是由哪种程序设计语言编写的。无状态的服务设计服务应该是独立的、自包含的请求,在实现时它不需要获取从一个请求 到另一个请求的信息或状态。服务不应该依赖于其他服务的上下文和状态。当产生依赖时, 它们可以定义成通用业务流程、函数和数据模型。基于开放标准 当前SOA的实现形式是 We服务,基于白是公开的 W3c及其他公认标准。采 用第一代We

5、服务定义的SOAP、WSDL和UDDI以及第二代 We服务定义的 WS-*来实现SOA。2 Wei务介绍We服务则是在SOA的概念的基础上提出的一个标准,它更加具体的描述或者说是标准化了SOA的各个实现细节,如它规定 SOA所有模块之间以XML这个基本语言沟通,服务出厂时必须以 WSDL 标签描述,必须在UDDI中心注册才能进行销售,服务必须以 SOAP官方协议进行交易,这些标准是 不依赖任何一家公司而生存的,而是 We发展到一个阶段的产物,其实说到底就是 XML促使了 WelK 务的出台。当然Wei务仍然是在SOA概念下的一个标准,它并不是一个实现,它只是规定了哪一个环节必 须符合哪一标准,

6、然而运用什么技术实现这一标准,它并没有说明,当然这也不是W3c应该做的。3 J2EE 和.nett 匕较3.1 J2EE 和.ne前介J2EE和.ne嘟是用来实现 We服务的工具,他们为实现 We服务提供了一个很好平台。当今We服务领域里争的你死我活的当然是众所周知的 Sunffi Microsoft?大IT巨头,各自的J2EE 和.ne技术各自都占领了很大的市场。在表现形式上,J2EE是一组规范,而.NET更象是一组产品。但它们的目的都是为了企业应用提 供分布式的,高可靠性的解决方案。它们在架构上有着很多的相似之处,下表是一个简单对照:J2EE.NET:LR) ace)n通信协议Remote

7、 Method Invocation over IntelInterOrb Protocol (RMIZIIOP)XMLnet编程语百JavaC#, VB.NET COBOL运行时环境Java Virtual Machine (JVM)Common Language Runtime (胖客户端Java SwingWindows Forms目录服务Java Naming and Directory InterfaceActive Directory Services Interf (Adsi)数据访问Java Database Connection (JDJavaConnectorsADO.NE

8、T异步消息处理Java Message Service (JMS)Microsoft Message Queue表小层技木Servlets Java Server Page(JSP)ASP.NET中间层组件模 型EJB, JavaBeanCOM+, COM安全访问JAASCOM+ SecurityCall Context事物处理Java Transaction Server (JTS)Microsoft Distributed Transactio Coordinator (MS-DTC)开发工具WebGain Visual Caf eVisual StudioBorland JBuilder

9、IBM VisualAg鳏(第二方提供,规范本身没有定义)3.2 J2EE和.NET比较评价在微软还没有足以和Jav坪台相对抗的产品的时候,微软所乐于做是大声的宣传:“whteDnqedebug everywh&re而它的对手则更乐于这样评价它:“微软开始也喜欢Java他们喜欢它的方式是让它死去, 他们当然也憎恨它,他们甚至憎恨每一个以J开头的单词。”但是现在,形式不同了,微软有了足以自豪的.NET他们可以已他们自己所喜好的方式来对 J2EE和.NET来做各种比较。最热闹的应该算是微 软出示的第三方对.NET Pet Sho环口 J2EE的Pet Store!勺综合比较了。有兴趣的读者可以到M

10、SDN,www.onjava.QortiBM开发者原地等网站看到相关评论。J2EE.NET易用性*扩展能力*多平台支持*多语百支持*可靠性*性能*可管理性*重用性*负裁平衡*开放标准*综上,J2EE和.NET在技术上没有什么优劣之分,但是从扩展能力和多平台支持角度,.NET体系架构更强调为在 Windo台上运行的应用软件提供连接, 对于其他平台的应用软件包容性差, 重用性 差。另外从XML标准方面,微软看好 Office Open XML(OOXML)也就是微软自己的标准,有一定的局 限性。总之,.NET的体系架构更适合软件平台为单一的 Windows台的中小企业使用,对于拥有多个 平台或有可

11、能扩展为多平台的企业而言,J2EE的体系架构更加灵活,扩展性更强。4 SOA架构选型4.1 直接采用第三方成熟产品4.1.1 IBM WebSphere 列产品IBM为您的业务提供了具有最广泛连接的 SOA,它将所有类型的数据、应用程序、协议和平台连接到一起,从传感器、手持设备和应用程序到大型机。旧M将ESB作为中间件战略的核心,并提供了两种软件ESB和一种硬件ESB设备:WebSphEaterpriSServicBus(WESB):基于面向集成的 SOA 平台的 WebSpheApplicationerve而构建,针对中小企业的入门级 ESB产品,能够帮助简化IT架构,降低运作成本,提升业务

12、灵 活性和市场响应速度,最终提升企业的竞争优势。WebSphere Message BrOMMB):为异构IT环境中的统一连接和转换而构建。WMB通过提供对多种平台、语言、协议和传输方式的支持,帮助客户迅速部署企业服务总线,整合遗留应 用,构建SOA架构的信息传输龙骨。采用业界领先的 WebSphere MQ息传递基础设施。WebSphere DataPoWfe简化部署和加强安全性而特制的硬件ESB。特别推出的 旧M专属硬件ESB产品,通过内嵌强大的XML/WebServiCe速引擎及安全保障机制,帮助客户快速、高效、便捷、安全地构建面向大交易量任务关键(Mission Critical型企业

13、服务总线。IBM宣布其旗下五大软件产品线全部支持 SOA,包括信息管理,WebspherTivoli, Rational LotusIBM SOA解决方案涵盖全线产品。EM通过大量整合、拓展和收贝相关产品,致力在其 SOA解决方 案中完整融合自网络层至应用层的集成运行环境和管理技术。优势:开放性,WebSpheM并100项支持业界的开放性标准包括 Java/J2EE, XML, LDAP, CORBAWML, Web Servid鲜WebSphere良好的跨平台性安全性,提供一个先进的富含安全性的基础架构高可用性和扩展性集成的、基于开放标准的开发环境WebSphe并100项支持业界的开放性标准

14、包括 Java/J2EE, XML, LDAP, CORBA WML, WebServices等WebSphe通过 Sun的 J2EE1.2 J2EE1.”及 1.4认证WebSpheieW支持其它开放性标准如安全性标准等WebSphefe品家族的所有组件中,除了这些业界的开放标准技术以外,不包含任何旧M独有的非标准性技术,保证用户在选用 WebSphere时能够保持百分之百的开放性。缺点:价格昂贵,普通的一个软件价格都在几十万左右。易用性差,软件的易用性一直是旧M的短板,很多有多年经验的程序员都会感觉使用旧M的产品比较挑战自己的耐心。灵活性相对较差,如果需要用 旧M Process SerV

15、fe布一个简单的业务流程应用,而不涉及 SOA 呢,对不起,SOA特性是Build-In的,不管你用不用,甩也甩不掉。4.1.2 SAP NetWeavei列产品SAP从2003年就开始逐步把产品迁移到SOA平台上。200A200种开始打造SOA的平台,就是现在SAP NetWeavg统,应用平台和面向业务流程的企 业服务架构(Enterprise Service Archite4庶欹产品就相当于市场上面的一个中间件产品,这是一个技术 平台。从200人到200升,SAP把所有原来ERP的那些功能模块重新定义成服务形式,而基于这些服务形式”又创建出关于业务逻辑的知识,我们有一企业服务知识库”,我

16、们把所有的服务归纳在一起,放到这里。从200升开始我们有了这个知识库以后,又在知识库基础上重新架构我们的应用软件,比如说有一个定单处理流程,原来是编程人员完全做好了,但他没有体现出服务”的概念,而现在我们已经把这个定单流程变成了几个基本的服务模块,比如说创建定单、审核定单、审批定单,我们在重新架构 应用的时候把这些服务重新串联起来。到了 200资,SAP发布了 SAP ERP 6.0,这个产品是第一个基于 SOA架构做的企业应用产品。在这种系统上,企业可以在必要时订阅特定或原已存在的服务,如银行推出线上刷信用卡,则订 阅身分认证及支付两种服务,并把数据更新到客户关系管理系统。则银行就不用重新开

17、发,可以节省 成本及加速服务上线时间。SAP业务发展协理陈平佳强调,SOA不只是技术的玩意,而必须和商业行为结合。应用层上的服 务组件及商业流程才是重点,他说。在SAP的ESOA(Enterprise SOA)景下,企业以 NetWeav恚础的ERP软件配合SAP提供的软件组件,可以满足企业80%勺需求。相较之下,没有导入应用,而只有中介软件的企业,则必须自行开 发所有的组件。优势:产品的整个思路围绕ERP展开,适用于制造型企业。缺点:按业务封装服务,包含财务、销售、采购、库存、收付款管理、客户关系管理、生产装配、 成本控制、人力资源管理等企业管理,对于业务不太相符的企业适用性差。产品性强,灵

18、活性较差。4.1.3 Oracle SO原列产品Oracl是一家很喜欢通过收购来迅速增加增强自身实力和快速获得有广阔市场前景的前瞻性技术。从前面的收购历史就能大概看出这点,上面里出来的几个收购案只是比较重要的几个,oracl收购的公司不下几十个。收购的产品太多了,Oracle1到构建一个平台把这些产品集成起来,这个平台就是FusioArchitectiure 它是一个基于消息的面向服务的中间件。Oracle望用Fusio耒整合收购来的各种各样的产品。在随着SOA概念越炒越热,越来越流行,各大厂商纷纷的把SOA纳入自己的主要战略,相继推出了自己的SOA解决方案和产品线。Oracl在SOA方面是后

19、来者,落后于 旧M、SAP、微软和BEA。但是oracl在SOA理念上并不落后, Fusion ArchitectUtei SOA的一个实践,只是没有明确提出SOA的概念,技术本质上,Fusion Architecture就是SOA的一种实现。很快的,Orace 200研宣布了 Oracle SOA Sui的产品,作为 Oralc在SOA的解决方案。SOA Suite 架构在 Oracle Fusion ArchitectureJdevelopS和Oracl那品紧密联系的一个免费的开发工具,如果是要使用Oracl的平台进行开发,没有什么开发工具能够比 Jdevelop8加方便和高效了, Jde

20、velope包含了大部分常见 Oracle 产品开发所需要类库,也有一个图形的,能够自动提示和完成语句的助手以及一个非常重要 的能够跟踪到产品内部的调试环境等。 无论是进行普通J2EE开发,还是BPEL/ESB开发任务,都能够使用Jdevelop星好完成。BPEL Process Manage包含了常见的web务流程化开发的所有通用组件,还包含了人机交互工作流的开发机制以及提供了大量的进行各种系统连接到Web务环境的适配器(如数据库,FTP服务器,商业打包应用Oracl11,i SAP等)。而ESB则是作为把各种应用包括传统应用暴 露成we服务接入SOA环境以及虚拟化接入系统的一个平台,当一个

21、系统接入ESB后,则可以在不改变BPEL流程的情况下把一个系统换成另一个系统。WeService ManagWSM)是一个专门针对 We服务安全设计的产品,提供了一个企业 We服务 的安全和认证的统一的接口和平台,所有的 We服务可以先注册到Ig平台,然后由 WSM把该 服务发布出去(可以换成另一个服务名),这样当无论什么用户需要访问该We服务的时候,都需要经过 WSM这种统一的认证和授权才能够访问到该服务,这就解决了各个厂商不同中间件平台上各自独立的 We服务的安全的管理模式。BAM则是一个实时监控业务的平台,该产品有一个非常华丽的外观(据说看过该产品界面的 用户都会被吸引住),提供实时的商

22、业智能的功能和根据实时的业务情况(可以定义阈值) 进行反应(调用一个We服务)的功能。优势:全面一一与可满足所有中间件需求的单一战略性合作伙伴协作。集成与Oracl融合中间件、Oracl数据库和Oraclet理软件经过认证的集成提升了信心并降低了成本。支持热插拔一一借助优于行业标准的互操作性增强企业现有的基础架构和管理软件。一流一一跨全部产品系列从一流的产品中进行选择。缺点:Oracle勺很多产品都是收购其他软件公司的,功能重合的地方较多,软件产品有很多整合的痕迹。4.2 方案比较与选择通过对旧M Websph既劭J产品、SAP NetWeavr列产品、Oracle SOA列产品的对比研究,我

23、们可 以得到使用国外大公司的产品架构企业的运营管理平台会面临以下挑战:(1)产品购买价格昂贵;(2)产品开发成本高;(3)产品后期维护成本高;(4)易用性相对较差。综上,在预算有限,且想在满足公司信息化产品适用性得到更好服务的情况下,选择国内专业公 司基于J2EE技术体系,搭建符合SOA架构的运营管理平台是更可行的选择,原因如下:(力选择性强,可以根据企业业务的要求,选择不同厂商的不同产品满足企业的个性化需求。(2)价格适合,可以根据预算的要求,某些软件产品可以选择性价比更合适的国内软件。(3)定制开发,可根据企业的业务流程,在软件产品的基础上定制开发更加适用、易用的管理平 台。(4)运维成本较低,相对于国外大公司,国内的专业公司的运维成本较为低廉。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1