基于SOA架构的新型企业网络设计与实现论文_第1页
基于SOA架构的新型企业网络设计与实现论文_第2页
基于SOA架构的新型企业网络设计与实现论文_第3页
基于SOA架构的新型企业网络设计与实现论文_第4页
基于SOA架构的新型企业网络设计与实现论文_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要随着信息技术的发展和竞争的日益激烈,企业信息化显得日益重要,信息化是钢铁工业合理利用资源,实现可持续发展的重要途径:面向服务的架构SOA是一种新型的软件开发模式。SOA以服务为核心,对企业系统进行统一规划和建设,能够很好的适应企业流程的变化。基于SOA的面向数据挖掘功能的新型商业智能系统的主要部件包括企业服务总线、数据仓库、OLAP服务器、数据访问服务、数据挖掘服务、数据挖掘访问语言服务、元数据管理服务和可视化服务及前端应用。同时,文中借鉴并采用了目前业界主流的数据挖掘标准,力求所提出的新型商业智能系统与业界的相关工业产品[;1I8][911101拥有统一的技术规范,从而确保了新型商业智能系统的架构设计中数据挖掘技术与工具的可靠性和先进性。通过这一规范所建立的管理信息系统,以“面向服务”为核心概念实现企业业务流程的自然运行,降低数据共享成本,提高企业经济效益。SOA通过把独立功能模块封装成“服务”的形式,可基于不同开发平台的,独立于具体开发语言的实现对客户端或者用户透明的应用程序访问方式。,SOA的目标是将企业应用程序中的功能组织转换成标准化的服务,这种服务是一种松耦合的、可重用的、互操作的和可组合的独立组件,用户通过使用服务来满足自身的需求。基于SOA架构的企业应用可以打破不同平台和协议之间的障碍,从而为销售型企业提供了高效的、敏捷的和能灵活应对不断变化的业务活动的企业应用,达到实现应用的有效集成的目的。本论文具体研究的主要内容分为以下四个部分:首先,介绍了本论文研究的背景和意义,SOA国内外研究现状和本课题研究的主要目标以及可能存在的创新点,说明了SOA研究的必要性。其次,本文研究了SOA理论及其相关技术。阐述了面向服务的架构中服务的概念和SOA的定义,分析了服务的分类和SOA的优势,对SOA涉及的Web服务体系结构、Web服务协议和企业服务总线等技术进行了详细的说明,为后面的企业应用分析、设计和实现奠定了理论基础。接着研究了面向服务的分析流程,对销售型企业经营方式以及本论文案例的IT现状进行了研究;重点研究了本案例今后发展的方向,叙述了该案例企业应用方案的基本思想,并提出了基于SOA的解决方案和基于企业服务总线的总体逻辑结构。最后,结合具体案例,重点对案例的业务流程、服务粒度、数据访问层、数据层和系统安全性进行了设计。关键词:;企业服务总线:销售型企业;企业应用

Withthedevelopmentofinformationtechnologyandtheincreasinglyfiercecompetition,enterpriseinformatizationisbecomingmoreandmoreimportant.Itisanimportantwayforsteelindustrytomakerationaluseofresourcesandrealizesustainabledevelopment:Service-orientedarchitectureSOAisanewsoftwaredevelopmentmode.SOAtakesserviceasitscoreandcarriesoutunifiedplanningandconstructionofenterprisesystem.Itcanadapttothechangeofenterpriseprocessverywell.ThemaincomponentsofthenewbusinessintelligencesystembasedonSOAfordataminingfunctionincludeenterpriseservicebus,datawarehouse,OLAPserver,dataaccessservice,dataminingservice,dataminingaccesslanguageservice,metadatamanagementservice,visualizationserviceandfront-endapplication.Atthesametime,thepaperdrawslessonsfromandadoptsthecurrentmainstreamdataminingstandardsintheindustry,andstrivestoputforwardanewtypeofbusinessintelligencesystemandrelatedindustrialproductsintheindustry[;1I8][911101]withunifiedtechnicalspecifications,thusensuringthereliabilityandadvancementofdataminingtechnologyandtoolsinthearchitecturedesignofthenewtypeofbusinessintelligencesystem.Throughthemanagementinformationsystemestablishedbythisstandard,thenaturaloperationofenterprisebusinessprocessisrealizedwiththecoreconceptof"service-oriented",thecostofdatasharingisreduced,andtheeconomicbenefitsofenterprisesareimproved.Byencapsulatingindependentfunctionmodulesas"services",SOAcanachievetransparentapplicationaccesstoclientsorusersbasedondifferentdevelopmentplatformsandindependentofspecificdevelopmentlanguages.ThegoalofSOAistotransformthefunctionalorganizationofenterpriseapplicationsintostandardizedservices,whicharelooselycoupled,reusable,andinteroperableCooperativeandcomposableindependentcomponents,usersuseservicestomeettheirownneeds.EnterpriseapplicationsbasedonSOAarchitecturecanbreakthebarriersbetweendifferentplatformsandprotocols,thusprovidinganefficient,agileandflexibleenterpriseapplicationtodealwithchangingbusinessactivitiesforthesales-orientedenterprises,soastoachievethegoalofeffectiveintegrationofapplications.Themaincontentsofthispaperaredividedintothefollowingfourparts:Firstly,thispaperintroducesthebackgroundandsignificanceofthisresearch,theresearchstatusofSOAathomeandabroad,themainobjectivesofthisresearchandpossibleinnovations,andillustratesthenecessityofSOAresearch.Secondly,thispaperstudiesthetheoryofSOAanditsrelatedtechnologies.ThispaperexpoundstheconceptofserviceandthedefinitionofSOAinservice-orientedarchitecture,analysestheclassificationofservicesandtheadvantagesofSOA,anddescribesindetailthetechnologiesofWebservicearchitecture,WebserviceprotocolandenterpriseservicebusinvolvedinSOA,whichlaysatheoreticalfoundationfortheanalysis,designandimplementationofenterpriseapplicationinthefuture.Thenitstudiestheservice-orientedanalysisprocess,themanagementmodeofsales-orientedenterprisesandtheITstatusquoofthecaseinthispaper.Itfocusesonthefuturedevelopmentdirectionofthiscase,describesthebasicideaofthecaseenterpriseapplicationprogram,andputsforwardthesolutionbasedonSOAandtheoveralllogicstructurebasedonenterpriseservicebus.Finally,combinedwithspecificcases,thebusinessprocess,servicegranularity,dataaccesslayer,datalayerandsystemsecurityofthecasearedesigned.

第一章研究背景和意义1.1应用前景随着技术的发展,EAI的核心理念在近年来又有新的突破。随着WebService的兴起,EAI面向服务的特征越来越明显,面向服务是信息系统的一项重要的特征。而这种面向服务,不仅指的是面向企业的内外用户的服务,而且在面对企业内外的其他信息系统时,它应该体现出一种服务提供者的姿态。新型SOA软件架构系统,是建立在“面向服务”的理念上的整合体系,比现在大部分企业的“面向接口”的整合体系又向前迈进了一大步。SOA的目标在于让rr变得更有弹性,以便更快地响应业务单位的需求,实现实时企业(RealTimeEnterprise)。由于SOA是在计算环境下设计、开发、应用、管理分散的逻辑(服务)单元的~种规范。这就决定了SOA的广泛性。SOA要求开发者从服务集成的角度来设计应用软件,即使这么做的利益不会马上显现。SOA要求开发者超越应用软件来思考,并考虑复用现有的服务,或者检查如何让服务被重复利用。SOA鼓励使用可替代的技术和方法(例如:消息机制),通过把服务联系在一起而非编写新代码来构架应用。经过适当构架后,这种消息机制的应用允许公司仅通过调整原有服务模式而非被迫进行大规模新的应用代码的开发,使得在商业环境许可的时间内对变化的市场做出快速的响应。在现在的网络信息时代,随着电子商务和网络销售的发展,销售型企业的不断发展,不仅丰富了消费者的购物选择,而且为社会创造了许多就业机会,从而给国家增加了经济收入,最终有利于改善人们的生活水平。2010年中国网络购物市场延续用户规模、交易规模的双增长态势,依然延续了近两年来的高速增长,随着计算机技术的高度发展,为企业管理信息提供了高度自动化和现代化的工具。网络通讯技术的应用和联网规模的不断扩大,为企业的更高速、更高效、更广泛的信息交流提供了技术的保证。在上世纪九十年代前后,企业通过对管理信息的整合、规范和集成,企业管理信息系统逐渐开始向企业内各业务部门之间的横向发展,实现了信息资源共享(如图1.1b所示)。此时,人们普遍使用面向对象和面向组件技术进行开发具有面向对象体系结构(OOA:Object.OrientedArchitecture)的企业管理信息系统,并具备了综合性、系统性、及时性与准确性等特征。这一时期具有代表性的企业管理信息系统软件如企业资源计划(ERP:EnterpriseResourcePlanning)。根据艾瑞咨询集团最近统计的数据显示,2010年中国网络购物市场交易规模接近5000亿元,达4980.0亿元;同时,网络购物用户规模达到1.48亿,其在网民当中的渗透率进一步增加,可达30.8%t11。互联网为中小型销售企业发展提供了一个更好的快速的发展平台,通过网站建设实现网络营销和电子商务,这是时代发展的必然趋势【2】。销售型企业已经认识到了网络销售的重要性,许多企业都纷纷建立起自己的销售平台。随着同类型的销售网站的出现,这就对企业提出了考验,如何在众多的同质的网站中突出自己的特点,如何让消费者在自己的销售平台上能够得到更多的服务,是企业在建立销售平台之后需要考虑的问题。SOA不仅仅是一种开发的方法论,它还包含管理。例如,应用SOA后,管理者可以方便地管理这些搭建在服务平台上的企业应用,而不是管理单一的应用模块。其原理是通过分析服务之闻的相互调用,SOA使得公司管理人员方便地拿到什么时候、什么原因、哪些商业逻辑被执行的数据信息,这样就帮助了企业管理人员或应用架构师迭代地优化他们的企业业务流程、应用系统。SOA的一个中心思想就是使得企业应用摆脱面向技术的解决方案的束缚,轻松应对企业商业服务变化、发展的需要。企业rr架构环境中单个应用程序是无法包容业务用户的各种需求的,即使是一个大型的ERP解决方案,仍然不能满足这个需求在不断膨胀、变化的缺口,对市场快速做出反应,商业用户只能通过不断开发新应用、扩展现有应用程序来艰难的支撑其现有的业务需求。通过将注意力放在服务上,应用程序能够集中起来提供更加丰富、目的性更强的商业流程。其结果就是,基于SOA的企业应用系统通常会更加真实地反映出与业务模型的结合。服务是从业务流程的角度来看待技术的——-这是从上向下看的。这种角度同一般的从可用技术所驱动的商业视角是相反的。服务的优势很清楚:它们会同业务流程结合在一起,因此能够更加精确地表示业务模型、更好地支持业务流程。相反人们可以看到以应用程序为中心的企业应用模型迫使业务用户将其能力局限为应用程序的能力。虽然到目前为止,业界对于面向服务的架构(Service.OrientedArchitecture,SOA)的概念还存在着各种不同的理解,但是总体上对于构建SOA的目的认识上基本是一致的,即SOA能够实现企业IT资产的最大化重用和有效整合,以便快速的响应企业业务的变化,从而使得企业IT更加的有弹性,实现企业真正的“面向服务"。对于销售型企业,应用面向服务的架构,能够解决在数据管理、流程控制和系统安全性方面的问题,使得企业在有限的IT投入中满足企业业务不断变化和创新的要求。SOA的出发点是从业务角度重用应用系统的开发元素,最大程度地降低IT系统开发与维护的成本。SOA作为实现分布式系统和对公司内部、公司之间的IT应用进行整合的架构出现,能够使得企业IT能够快速适应业务变化[31。只有能够快速适应了企业业务变化,满足用户的需求,企业才能成功,因此,从这个角度来说,SOA的关键在于能否满足用户的需求。因此,本课题的研究在销售型企业业务的集成和企业信息化水平的提高方面会有很大的指导意义。当前,很多企业的lT设施都面临着两个共性的问题:异质性和变化性。异质性表现在大多数公司拥有许多在不同时代及用不同技术构建的系统、应用程序和架构。集成不同厂商的产品和横跨多个不同平台几乎不大可能。但是采用单一厂商的IT方案也是不可能的,因为这样会导致应用程序套件与提供支撑的基础设施不够灵活。变化J胜体现在技术不断进步,加速了客户需求变化的步伐。客户需求变化得更快,结果进一步加速了产品与服务间的竞争。商业必须快速适应以求生存,IT基础设施必须支持商业能力使其适应变化。为了解决以上问题,人们提出了新的软件体系结构—SOA。50A是标识分布式系统和软件集成领域技术进步的一个里程碑[l2]。服务作为一种自治、开放以及与平台无关的网络化构件,可以使分布式应用具有更好的复用性、灵活性和可增长性。基于服务组织计算资源所具有的松祸合性特征会给企业带来许多好处:遵循50A的企业lT架构不仅可以有效保护企业投资,促进遗留系统的复用,而且可以支持企业随需应变的敏捷性和先进的软件外包管理模式。企业在把其关键功能服务化后,可以使企业间的电子化的商务以更高效、灵活的方式展开。通过SOA的方法,由一系列商业服务组成的商业过程变得更加容易创建、变更与管理。SOA所提供的灵活性和响应性成为了商业存活和发展的关键特征。1.2国内外研究现状这些年来,SOA已经成为了国内信息技术领域的重大热点之一。2007年7月24日,主题为“驾驭SOA驱动整合应用”的SOA应用年会暨SOA应用方案颁奖典礼召开,国内外顶尖中间件厂商,SOA主流行业的用户代表,资深技术专家对于面向服务的架构的部署方法、开发环境、技术架构、企业应用、流程设计、建模方法等进行了深入探讨[41。而在2008年11月5日,中国电子技术标准化研究所,联合国际协会标准组织w3C、OASIS、WS.I一同在我国举办了第一届“SOA标准化国际论坛",对于SOA标准化问题进行了开放式研究和讨论。可以预计,在未来的几年内,SOA将在中国快速发展起来。在国外,IBM公司是最早开始构建和部署基于SOA架构的信息系统的大型厂商之一。目前该公司己经投入巨额资金建立全球SOA研发中心,为其提供全面的SOA培训、服务线路和工具支持。mM对于SOA的研究涵盖了SOA的各个方面,IBM的五大产品线,即WebSphere、Workplace、Tivoli、DB2和Rationale都包含了SOA的概念。Sun公司的“JavaSystem”软件产品拥有实现不同层面上不同架构的系统集成的核心技术,该产品通过建立服务驱动的网络,从而使得各类设备可以便捷地接入网络计算环境,从而达到方便户借助各类设备使用网络计算资源的目标。BEA公司的全线产品都是采用SOA的理念设计的,主要包括了WebLogieServer、WebLogiePortal和AquaLogic等,其中的BEAAquaLogic提供了一种无须考虑底层技术的可重用和互操作的基础架构服务用于组装复合应用程序,为企业提供了部署SOA架构的途径。Oracle公司的开发工具JDeveloperlog、数据库产品Oraclelog和应用服务器产品OAS(OracleApplicationServer)以及APF(ApplicationPlatformFoundation)均支持SOA。第二章技术概述2.1BGP2.1.1BGP的对等体BGP对等体有两种类型,分别是IBGP对等体和EBGP对等体。如果BGP对等体处在相同的AS内,则称为IBGP对等体(InternalBGP)。如果BGP对等体处在不同的AS内,则称为EBGP对等体(ExternalBGP)。建立BGP对等体的两台路由器可以直连,也可以非直连,只要TCP可达即可,但为了邻居关系的稳定性,建议两端使用非直连的Loopback接口建立IBGP对等体关系。使用直连的物理接口建立EBGP对等体关系。2.1.2BGP属性BGP具有丰富的路径属性,包括ORIGIN属性、AS_PATH属性、LOCAL_PREE属性、MED属性、NEXT_HOP属性、ATOMIC_AGGREGATE属性等,每种属性都有其特定的含义,具有不同的用途,管理员可以依据政治、经济、安全等因素灵活运用这些属性,并实施强大的路由策略来对进出AS的路由进行选路、控制、优化和过滤。BGP属性是BGP在进行选路时决策和控制的重要信息。它可以分为如下两大类四小类:1、公认属性公认必遵(Well—knownmandatory)公认可选(Well—knowndiscretionary)公认所有BGP实现都必须识别的属性,这些属性被传递给BGP邻居。其中,公认必遵属性是BGPUPDATE消息中必须包含的属性。公认可选则是BGPuPDATE消息中可以自由选择是否包含的属性。公认强制属性必须出现在路由描述中,公认自由决定属性可以不出现在路由描述中2、可选属性可选过渡(optionaltr趴sitive)可选非过渡(Optio砌non—t1.ansitive)可选属性并不要求所有运行BGP协议的系统都识别。如果属性是可选过渡的,那么,即使运行BGP的系统不能识别该属性,也要接受该属性并将其转发给它的对等体。而如果属性是可选非过渡的,运行BGP的系统可以忽略包含该属性的消息并且不向它的对等体转发。2.2ospfOSPF协议(OpenShortestPathFirst开放式短路径优先)是一个内部网关协议(InteriorGatewayProtocol,IGP),是应用于TCP/IP网络下的路由协议,是一种典型的链路状态(link-state)的路由协议,一般用于同一个路由域内。路由域是指一个自制系统AS(autonomoussystem),它是指一组通过统一的路由政策或路由协议互相交换路由信息的网络。在这个AS中,所有的OSPF路由器都维护一个相同的描述这个AS结构的数据库,该数据库中存放的是路由域中相应链路的状态信息,OSPF路由器正是通过这个数据库计算其OSPF路由表的。OSPF分为OSPFv2和OSPFv3两个版本,其中OSPFv2用在IPv4网络,OSPFv3用在IPv6网络。OSPFv2是由RFC2328定义的,OSPFv3是由RFC5340定义的。与RIP相比,OSPF是链路状态协议,而RIP是距离矢量协议。区域类型:OSPF采用分层结构将网络划分成两种类型不同的区域,分别是骨干区域和非骨干区域,这样做的好处有以下几点,一是减少区域内LSDB的规模,LSDB又称为链路状态数据库,LSDB规模越大,其对路由器性能的损耗就越大,缩小LSDB规模可以使得运行OSPF协议的路由器门槛更低。二是方便组织和管理,可以根据功能或者地理位置的不同将路由器划分在不同的区域,以便于管理。三是隔离拓扑变化带来的网络震荡,发生在一个区域内的网络震荡其影响不会传递给另外一个区域。从名称上来看,两种类型的区域其地位是不平等的,之所以称为骨干区域是因为所有的非骨干区域之间的路由学习都要通过骨干区域进行中转,两个非骨干区域之间是不可以直接相连的,这样做是为了防止区域间出现环路,类似于网络拓扑中的星型结构。如果出现因不合理设计而造成的非骨干区域直接相连,那也是有办法解决的,即采用虚链路技术。路由器类型:OSPF协议中有4种路由器类型,分别是区域内路由器、骨干路由器、区域边界路由器和自治系统边界路由器。区域内路由器是指所有接口都属于同一个区域的路由器,在OSPF协议中就称为区域内路由器,简称IR;骨干路由器是指只要有一个接口处在骨干区域中,那么这样的路由器就称为骨干路由器,简称BR;区域边界路由器是指连接骨干区域和非骨干区域的路由器,这样的路由器在OSPF协议中就称为ABR,ABR也是BR,但不是IR;自治系统边界路由器是指AS边界上的路由器,它们一边连接着OSPF路由域,一边连接着非OSPF路由域,通常将引入外部路由的路由器称之为自治系统边界路由器。外部路由即非OSPF域内的路由,引入是指将非OSPF路由重分发进OSPF路由域中的过程,使得所有OSPF路由器都能学习到如何去往OSPF域外。三张表:邻居表、链路状态数据库和路由表。邻居表里面存放的是建立邻居关系的路由器,邻居关系不同于邻接关系,前者仅仅是交互了Hello报文,达到了2-Way状态,而后者不仅仅是交互了Hello报文,还交互了后续的DD、LSR、LSU和LSAck等报文,通过学习彼此没有的LSA来最终达到Full状态。邻居关系的建立是通过定期发送Hello报文来实现的;链路状态数据库简称LSDB,同一区域内的路由器其LSDB相同,ABR由于连接不同的区域,因此它有多个LSDB,每个LSDB对应不同的区域。同一区域内的每台路由器会将LSDB转换成带权有向图,然后运行SPF算法,以自己为树根计算去往每个节点的最短路径,这条最短路径就是去往各节点的路由;路由表是指OSPF的协议路由表,并不是指全局性的IP路由表。OSPF通过SPF算法计算后,会将去往目的地的最短路径首先放进OSPF协议路由表中,这条路由能否进入IP路由表,还必须与其它协议进行比较,只有全局最优的路由才能最终进入IP路由表。五种协议报文:OSPF协议有五种报文,分别是Hello报文、DD报文、LSR报文、LSU报文和LSAck报文。Hello报文用于建立邻居关系;DD报文用于交互LSA的摘要,通过彼此的交互来查找自己所缺少的LSA;LSR报文用于向对方请求自己所没有的LSA;LSU报文用于向对方发送链路状态更新信息;LSAck报文用于对LSU报文进行确认,是OSPF协议提供的一种可靠性保障机制。众所周知,IP协议是一种尽力而为的、不可靠的协议,OSPF报文是直接封装在IP报文中的,为了提供额外保障,OSPF协议设计出了LSAck报文。OSPF网络类型:包括Broadcast类型、NBMA类型、P2P类型和P2MP等4种类型。OSPF可以根据二层的网络类型来决定上层的网络类型。如果二层网络类型是PPP或者HDLC,那么OSPF的网络类型就是P2P;如果二层网络类型是Ethernet,那么OSPF的网络类型就是Broadcast;如果二层网络类型是帧中继,那么OSPF的网络类型就是NBMA;默认情况下,没有一种二层网络类型对应着P2MP,需要进行转换。不同OSPF网络类型其工作方式是不一样的,主要表现在Hello报文的发送间隔不一样,有的类型需要选举DR和BDR,有的类型则不需要选举,这需要读者进行仿真实验来进一步验证。RID:每台运行OSPF协议的路由器都必须要设置一个RID,RID全称是RouterID,是每台路由器在OSPF路由域中的唯一标识,RID是一个32位的无符号整数,其形式类似于IP地址。RID可以手工配置,也可以自动生成。如果没有手工配置,那么RID自动生成的顺序如下,如果路由器环回接口有效,并且配置了IP地址,那么最大的IP地址将作为RID;如果没有有效的环回口,那么从有效物理接口中选择最大的IP地址作为RID。由于RID是非强占式的,所以一旦完成选择,便不会轻易改变,这样做也是为了网络的稳定。DR和BDR:DR和BDR的出现主要是为了降低需要维护的邻接关系数量,DR和BDR类似于班长和副班长,所有的DROther需要和DR和BDR建立邻接关系即可,而DROther之间只需要建立邻居关系。选举DR和BDR的原则是首先比较Hello报文当中携带的优先级,优先级最高的被选为DR,次高的被选为BDR;如果优先级一致,则比较RID的大小,RID越大越优先。一旦DR或BDR选举完成,就保持稳定状态。LSA类型:LSA有多种类型,常见的有以下7类。1类LSA,区域内的每台路由器都会产生1类LSA,用来描述路由器直连路由的链路状态和开销值;2类LSA,由DR产生,用来描述DR所在网段的掩码和该网段内的其它路由器;3类LSA,由ABR产生,用来描述区域间的路由信息;4类LSA,由ASBR所在区域的ABR产生,用来描述去往ASBR的路由;5类LSA,由ASBR产生,用来描述去往AS外部网络的路由;7类LSA,用来描述去往AS外部网络的路由。2.3NATNAT英文全称是“NetworkAddressTranslation”,中文名称为“网络地址转换”,属于IETF标准之一,于1994年提出来,一般在路由器上安装NAT软甲来实现,所有本地地址的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成全球IP地址,才能和因特网连接。NAT的典型应用是将使用私有IP地址(RFC1918)的园区网络连接到Internet,NAT技术的应用有效地解决了内部网路私有IP地址如何访问Internet的难题,这样公司就不需要再给内部网络中的每个设备都分配公有IP地址,既避免了公有地址的浪费,又节省了申请公有IP地址的费用,同时也缓解了IPV4地址空间被耗尽的速度。2.4Web服务体系结构要了解Web服务,需要涉及Web服务的体系结构。Web服务的体系结构可以从两种不同的角度来观察。一种是通过观察Web服务的协议栈来描述Web服务的体系结构;另一种通过观察Web服务涉及的角色及其各自功能来描述Web服务的体系结构。这两种方式从不同的角度描绘了Web服务,有助于更好地了解Web服务。Web服务在不同的协议规范的基础上发展,形成了Web服务的协议堆栈。该体系结构是一个层次结构。从下往上分别是:传输层、消息层、描述层、服务质量层和组合层。每一层内不同的协议如图2.2所示:协议堆栈的最底层是传输层,用来交换信息。Web服务的本质是实现了一种消息交换的机制,即经过最底层的传输层来进行具体的消息交换,而传输层不必了解具体的消息内容,只需要搭载消息即可。Web服务并没有和具体的传输协议绑定,如上图2.2所示,可以使用H1]阳协议、SMTP协议,TCP/IP协议和RMFIIOP等协议。第二层是消息层,该层定义了通过传输层传输的消息的具体格式,是Web服务之间消息交换的基础。SOAP消息是Web服务交换的标准消息,SOAP定义了一种基于XML的、轻量级的和简单的交换结构化的机制。另外一个重要的规范是WS.Addressing,它提供了一种和传输协议无关的,用以确定消息发送者和接受者的机制。第三层为服务的描述层,定义了描述服务的元信息,WSDL和WS.Policy是两个主要的规范。WSDL主要是从功能方面的角度描述了服务,定义了服务接口和信息交换的格式。WSDL包括抽象定义和具体描述两部分。WS.Policy是一个补充的规范,弥补了WSDL的不足。WSDL只是纯粹从功能的角度描述了W曲服务,WS.Policy提供了而一个通用的框架,允许定义由一系列诊断(Assertion)组成的,可被机器理解的策略表达式,并使其和Web服务的元素相关联,从而定义了对服务的约束。第四层为服务的质量层,定义了一系列的规范,用于确保服务的质量。它主要涉及三个方面,分别为安全性、可靠性和事务处理。这三个方面都是企业级计算所必须考虑到的【15】。安全性方面的主要规范为WS.security。第五层为服务的组合层,定义了通过如何组合服务来实现业务流程。一个广泛的应用就是WS.BPEL协议,它是一种基于XML的,用来描述业务流程的编程语言。WS.BPEL定义了语法和模型,基于流程与其伙伴之间的交互来描述流程的行为。而在这里,流程和伙伴之间的交互都是通过Web服务来实现的f161。左侧的一层为服务的发现层,提供了一种机制,使服务的潜在用户能够发现服务。主要涉及两个协议,即UDDI协议和WS.MatadataExchange协议。UDDI协议定义了一种Web服务的注册表,用户可以查询和更新公共的Web服务信息库中的信息。而WS.MatadataExchange协议是在服务的请求者已经知道Web服务的基本信息的前提下,即服务的请求者已经能够和W.eb服务交互的前提下,和Web服务直接交互以获取关于该服务更具体元信息的一种协议。图2.3介绍了一种通过Web服务的角色及其各自的功能的Web服务体系结构。如图所示,Web服务涉及三个角色,即Web服务请求者,Web服务提供者和Web服务中介。这三个角色的主要功能是:Web服务请求者:Web服务请求者通过SOAP消息向Web服务提供者发送请求以获得服务,它是Web服务功能的使用者;(2)Web服务提供者:Web服务提供者向Web服务请求者和其他服务提供自身已有的功能,它是Wreb服务的拥有者;(3)Web服务中介:Web服务中介把一个Web服务请求者与合适的W曲服务提供者联系在一起,它充当着管理者或代理的角色。SOAP协议SOAP(SimpleObjectAccessProtocol,简单对象访问协议)提供了一种服务请求者和服务提供者之间的消息通信方法。SOAP采用了已经广泛使用的两个协议:XML和HTTP。XML是SOAP的编码模式,而HTTP用于SOAP消息传输。SOAP是SOA应用中理想的通信协议,也被称为“SOAProtocol",可以与其他Web服务协议构建起SOA应用的技术基础【17】。因此,SOAP可以非常方便地解决互联网中wcbService是一系列标准的集合。它提供了一个分布式的计算模型,用于在Intemet或者Intranet上通过使用标准的xML协议和信息格式来展现商业应用服务。WebService需要涉及到对被集成的各个应用系统本身进行改造,使之符合面向服务的体系。用wcbService实现SOA的关键部件有:1.UDDI:UDDI服务可帮助企业针对wcb服务及其它可编程资源进行组织并编制目录。通过对UUDI服务中的物理分布、组织机构、服务方式等一系列分类方案加以应用,企业可以建立起一种用来描述并发现相关服务的结构化与标准化方式。2.支持WebService的应用服务器:J2EEvia开始就全面的支持WebService了。而.NET从一开始就是支持wcbService的。除此之外,也有一些其它的平台是支持w西Service的。3.应用系统的webService:毫无疑问,这一个步骤是实施的关键和难点。要想让企业原有的系统转而支持WebService,需要对企业原有的系统进行改造。这个工作是艰难而充满风险的。4.界面层次的整合。由于wcbService规范的标准性和简单性,企业门户系统(Portal)可以非常方便的实现信息系统界面层次的整合。具体的结构图如图3.2所示。WebService是就现在而言最适合实现SOA的一些技术的集合,事实上最近SOA的火爆在很大程度上归功于WebService标准的成熟和应用的普及为广泛的实现SOA架构提供了基础。不过,在理解SOA和web服务的关系上,经常发生混淆。根据2003年4月的Gartner报道,YefimV.Natis就这个问题是这样解释的:“wcb服务是技术规范,而SOA是设计原则。特别是w曲服务中的WSDL,是一个SOA配套的接口定义标准:这是Web服务和SOA的根本联系。”从本质上来说,SOA是一种架构模式,而Wcb服务是利用一组标准实现的服务。wcb服务是实现SOA的方式之一。用wcb服务来实现SOA的好处是企业可以实现一个中立平台,来获得服务,而且随着越来越多的软件商支持越来越多的Wcb服务规范,他们会取得更好的通用性。2.5SOA的体系结构成员2.5.1SOA的3个参与者1,服务提供者服务提供者为处理一系列特定任务的软件资源提供服务接口。它发布自己的服务,并且对使用自身服务的请求进行响应。每个提供者必须确定陈列哪些服务,如何为服务取得安全性和易用性之间的平衡,如何为服务定价,或者如果服务是免费的,如何开发它们的其他价值等。服务提供者创建Web服务并可能把其接口和访问信息发布到服务注册表。2.服务请求者服务请求者发现并调用其它的软件服务来提供商业解决方案,是通过服务代理查找所需的服务,然后使用该服务。3.服务代理商业实体或者独立的运营商都能代表服务代理。服务代理注册已经发布的服务提供者,对其进行分类并提供搜索服务,负责使Web服务接口和实现访问信息可用于任何潜在的服务请求程序。代理的实现者必须确定关于代理范围的信息。公用代理在整个Internet上都可用,而专用代理仅可被受限的人群(例如企业内部网的用户)访问。SOA体系结构中的组件必须具有上述一种或多种角色,在这些角色之间使用了三种操作:(1)发布:使服务提供者可以向服务代理注册自己的功能及访问接口。(2)查找:使服务请求者可以通过服务代理查找特定种类的服务。(3)绑定:使服务请求者能够真正使用服务提供者。其体系结构如图4.1所示。第三章仿真模拟设计整体网络拓扑如下图所示:IP地址规划如下:业务地址企业内部分为两大块。其中技术部和销售部使用的是单臂路由,运行动态路由协议RIP。工程部,人力资源部的网关是在三层交换机SW10上。运行动态路由协议OSPF。在路由器上配置重分发使得几个部门之间能够相互通信。在出口路由器上做NAT,使得企业内部网络都能正常访问外网。互联网部分,使用路由协议EIGRP,使得整个互联网内网络互通、首先配置vlan。并将交换机接口划分到vlan,并将相应的接口配置成为access或者trunk模式:技术部,销售部,以SW1SW3SW5为例:SW1配置如下interfaceGigabitEthernet1/0/1switchporttrunkencapsulationdot1qswitchportmodetrunk!interfaceGigabitEthernet1/0/2switchportaccessvlan10switchportmodeaccessswitchportnonegotiate!interfaceGigabitEthernet1/0/3switchportaccessvlan20switchportmodeaccessswitchportnonegotiate!SW3配置如下interfaceGigabitEthernet1/0/1switchporttrunkencapsulationdot1qswitchportmodetrunkswitchportnonegotiate!interfaceGigabitEthernet1/0/2switchporttrunkencapsulationdot1qswitchportmodetrunk!SW5配置如下interfaceGigabitEthernet1/0/1switchporttrunkencapsulationdot1qswitchportmodetrunk!interfaceGigabitEthernet1/0/2switchporttrunkencapsulationdot1qswitchportmodetrunk!interfaceGigabitEthernet1/0/3switchportaccessvlan30switchportmodeaccessswitchportnonegotiate!interfaceGigabitEthernet1/0/4switchporttrunkencapsulationdot1qswitchportmodetrunk!工程部和人事部以SW6SW8SW10为例:SW6配置如下interfaceGigabitEthernet1/0/1switchporttrunkencapsulationdot1qswitchportmodetrunk!interfaceGigabitEthernet1/0/2switchportaccessvlan40switchportmodeaccessswitchportnonegotiate!interfaceGigabitEthernet1/0/3switchportaccessvlan50switchportmodeaccessswitchportnonegotiate!SW8配置如下interfaceGigabitEthernet1/0/1switchporttrunkencapsulationdot1qswitchportmodetrunkswitchportnonegotiate!interfaceGigabitEthernet1/0/2switchporttrunkencapsulationdot1qswitchportmodetrunk!SW10配置如下interfaceGigabitEthernet1/0/1switchporttrunkencapsulationdot1qswitchportmodetrunk!interfaceGigabitEthernet1/0/2switchporttrunkencapsulationdot1qswitchportmodetrunk!interfaceGigabitEthernet1/0/3switchportaccessvlan60switchportmodeaccessswitchportnonegotiate!配置单臂路由,在R1上配置如下interfaceGigabitEthernet0/0.10encapsulationdot1Q10ipaddress!interfaceGigabitEthernet0/0.20encapsulationdot1Q20ipaddress!配置DHCP,使得各个部门能自动获取IP地址。技术部,销售部的DHCP在路由器R1上配置。配置如下ipdhcpexcluded-addressipdhcpexcluded-address!ipdhcppooljishunetworkdefault-routerdns-server4ipdhcppoolxiaoshounetworkdefault-routerdns-server4配置完成后,技术部,销售部能够获取IP地址。如下技术部:在核心交换机SW10上配置工程部人事部网关interfaceVlan40mac-address0000.0cb3.0101ipaddress!interfaceVlan50mac-address0000.0cb3.0102ipaddress!interfaceVlan60mac-address0000.0cb3.0103ipaddress!在核心交换机上配置DHCPipdhcpexcluded-addressipdhcpexcluded-address!ipdhcppoolgongchengnetworkdefault-routerdns-server4ipdhcppoolrenlinetworkdefault-routerdns-server4!配置完成后,能够获取IP地址工程部配置RIP路由协议R1配置如下routerripversion2networknetworknetworknetworknoauto-summary!R3配置如下routerripversion2networknoauto-summaryR5配置如下routerripversion2networkdefault-informationoriginatenoauto-summary!配置完成后,在R5上查看RIP学到路由。如下配置OSPF路由协议SW10配置如下routerospf1networkarea0network55area0network55area0network55area0!R2配置如下routerospf1network3area0networkarea0!R4配置如下routerospf1network4area0network0area0!R5配置如下routerospf1networkarea0default-informationoriginate!配置完成后,查看OSPF邻居。以R2R4为例R2上查看如下为了使得几个部门之间能相互通信,需要在路由器R5上做路由重分发,配置如下routerospf1redistributeripsubnets!routerripversion2redistributeospf1metric1配置完成,在R1上查看所有路由表如下配置完成后,各个部门之间能够互访。如下:以技术部访问人事部为例在出口路由器上配置NAT,使得企业内部能访问外网:在R5上配置如下:interfaceGigabitEthernet0/1ipaddress52ipnatinside!interfaceSerial0/0/0ipaddress52ipnatoutsideclockrate2000000!interfaceSerial0/0/1ipaddress52ipnatoutsideclockrate2000000!ipnatinsidesourcelist10interfaceSerial0/0/0overloadipnatinsidesourcelist20interfaceSerial0/0/1overloadiprouteiproute!配置完成后,企业内网访问互联网如下,以技术部和工程部为例:技术部PC互联网部分配置EIGRP路由协议,如下。R6配置如下routereigrp100networknetworkR7配置如下routereigrp100networknetworkR8配置如下routereigrp100networknetworkR9配置如下routereigrp100networknetworkSW11配置如下routereigrp100networknetworkauto-summary!SW12配置如下routereigrp100networknetworknoauto-summary!SW13配置如下routereigrp100networknetworknoauto-summary!配置完成后,查看EIGRP邻居以R6SW12为例R6上查看如下第四章仿真模拟的实现本次实验拓扑利用思科CiscoPacketTracer模拟器搭建,为了保证企业网的可靠性,该企业网内部部署了R1和R2两台核心路由器,并通过R2连接到Internet上,出口路由器R2通过V.35线缆与一台外部路由器R3相连。在企业网的内部,R1通过三层交换机L3-SW与两台二层交换机相连,企业终端PC连接在二层交换机上。在三层交换机L3-SW上划分VLAN10和VLAN20,将二层交换机L2-SW1划分到VLAN10,将二层交换机L2-SW2划分到VLAN20。企业网内部两台核心路由器R1主要承担企业网内部VLAN10和VLAN20数据包和来自R2的数据包的转发,R2主要承担转发来自R1和R3的数据包和NAT的任务。R1、R2、R3以及三层交换机L3-SW上配置OSPF协议,配置之后,在R1、R2之间选举产生DR(指定路由器)和BDR(备份指定路由器),从而使整个网络的链路状态达到稳定状态。当企业网络结构比较复杂的时候时,使用OSPF协议就可以在短时间内使链路状态带达到稳定,并可以减少链路中的路由信息数量,有利于企业中网络的稳定。R2和R4链接,模拟企业网接入Internet,需要在R2和R4之间配置静态路由。本实验是用单区域中的OSPF应用来模拟企业网络,其网络拓扑图如图2所示:S企业综合服务网络平台的开发是基于J2EE和ESB的SOA架构,其开发平台环境主要包括以下内容:(1)操作系统:WindowsXPProfessional。(2)数据库:MySQL。MySQL是一个小型关系型数据库管理系统,开发者为MySQLAB公司,该公司最初由DavidAxmark、A1lanLarsson等在瑞典成立,现在属于Oracle公司。MySQL提供了一个快速、多线程、多用户和健壮的SQL数据库服务器,并由于体积小,开放代码等特点,因此被广泛应用于中小型企业的信息系统中。(3)集成开发环境:NetBeans6.0。NetBeans是开源软件开发集成环境,是一个开放框架,可扩展的开发平台,可以用于Java,C/C++,PI-IP等语言的开发,本身是一个开发平台,可以通过扩展插件来扩展功能。(4)应用服务器:GlassfishServer。Glassfish是SUN基于社区推出的一款开源的JavaEE服务器,它是基于JavaEE5的一个参考实现,就功能而言,它几乎是对JavaEE5的一个全面实现,囊括了其中所有的新特性,包括EJB3.0等。在企业级应用方面,Glassfish实现了以前商用服务器才有的集群功能,为企业级的应用打下了坚实的基础。Glassfish在企业级特性,比如高可用性、可伸缩性、集群、综合监控、SOA、控制台易用性等方面具有不输于商用应用服务器的能力,能够接受重型生产环境的挑战,又具有开源的优势。(5)企业服务总线:OpenESB(GlassfishESB)。采用的服务总线为GlassfishESB,GlassfishESB是由SUN公司推出的一款集成了OPENESB,NetBeans和GlassfishServer的产品嗍。GlassfishESB它可以为企业应用程序提供良好的运行时和设计支持。整体开发过程中涉及到的技术主要有:(1)WebService技术:提供标准化的服务接口,是SOA得以提供标准化服务的基础。(2)Struts技术:MVC架构的一种,用于处理整个应用的用户界面部分,也可以用其他MVC架构。(3)SessionBean技术:SessionBean是J2EE中的核心业务组件部分,主要用来实现应用系统的业务逻辑部分,并且也可以用来实现远程分布式调用。当然也可以用Spring等技术来实现。(4)Hibernate技术:处理数据库操作的部分。(5)ESB技术:将各种服务进行集成管理,是SOA架构的核心技术。将以上各种技术集成到J2EE开发平台上,集成后的开发架构如图5.1所示:5.总结本文以销售型企业应用的研究与实现为背景,针对现阶段我国中小型销售企业信息化中存在的问题,详细阐述了SOA的概念、国内外研究现状和实现技术,就以建设基于SOA的销售型企业应用的理论基础、基本思想、总体架构、设计思路、设计方法及总体实现等方面进行了研究,现对本文的研究成果进行总结和对未来工作的展望如下:(1)本文的主要研究成果①参考和阅读了国内外大量的关于面向服务的架构相关论文和研究资料,深入研究了SOA相关的理论知识、相关实现技术和模型;详细调查了当前国内销售型企业分类及其特点、以及目前销售型企业信息化现状;结合具体案例实际情况,运用SOA架构思想,设计了基于SOA的S企业应用。②基于面向服务的架构的理念,提出了基于SOA的总体逻辑结构的设计,实现了不同服务粒度的设计。不同服务粒度的设计,对于服务的建模十分重要,降低了系统内部的耦合性,提高了系统的适应能力,提高了服务的重用性和效率。并将服务分为不同

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论