第27卷第2期 2007年2月 文章编号:1001—9081(2007)02—0413—02 计算机应用 Computer Applications V01.27 NO.2 Feb.2007 基于SOA的ERP系统体系结构的研究 汪清明 (广东轻工职业技术学院计算机工程系,广东广州510300) (wangqm@gdqy.edu.CB) 摘 要:分析了现有ERP系统的局限性,指出现有ERP系统不能适应企业的业务流程重组、不 能灵活地支持供应链管理功能,在分析了面向服务架构(SOA)的特点后,提出了面向服务架构的 ERP系统体系结构。给出了基于J2EE平台的面向服务架构的具体实现技术。 关键词:面向服务架构;ERP;体系结构 中图分类号:TP302.1 文献标识码:A Study of SOA.based ERP system architecture WANG Qing—ming (Department ofComputer Engineering,Guangdong Industry Technical College,Guangzhou Guangdong 510300,China) Abstract:After analyzing the limitation of current ERP systems,this paper pointed out that the current ERP systems could not satisfy the needs of enterprises including the business process reorganization and the support for supply chain management function.Inspired by the property of Service Orientd Arecithecture(SOA),a new SOA,which was specialized for ERP s ̄tem,was proposed in this paper.In the mean time,a J2EE—based implementation system was also illustrated in this paper. Key words:Setrice Orientd eA ̄hitecture(SOA);ERP;system architecture 1 现有ERP系统的局限性 企业资源计划ERP是由美国Gartner Group Inc提出的一 整套企业管理系统体系标准,在近二、三十年来,ERP系统的 应用得到了极大的发展。ERP系统首先成为制造业提高管理 其服务发布到服务注册代理的一个目录上,当服务请求者需 要调用该服务时,它首先利用服务注册代理提供的目录查找 水平、降低成本、缩短交货期的有力工具,并进而在其他行业 都得到了广泛的应用。现有的ERP系统主要是面向企业内 部管理的,其体系结构缺少灵活性,主要问题是…: 1)不能适应企业经营管理模式的变化,企业组织架构、 经营管理模式的变化导致原有的ERP系统要重新开发或做 较大的改进,造成投资浪费。 2)不能灵活地支持供应链管理功能,不能实现企业与供 应商、企业与分销商之间的信息集成,以及不同软件之间的互 操作。 服务,服务注册代理返回调用该服务的信息,服务请求者根据 返回的信息调用服务提供者提供的服务,当服务请求者从服 务注册代理得到调用所需服务的信息后,通讯在服务请求者 和服务提供者之间直接进行,无需经过服务注册代理。 服务注册代理 圆 ——‘_—£—、 /服务请求者>====== 服务提供者 —————4、请求服务s广———L 绑定服务 一图1 SOA体系结构 、为了解决现有ERP系统难以重构,难以与企业之外的供 应商、分销商集成的问题,本文提出了基于面向服务架构 (SOA)的ERP系统体系结构。 面向服务架构最流行的一种实现方法是Web erSvices技 术 ,Web Services技术使用一系列标准和协议实现相关的 功能,其中XML作为web Services技术的基础,是开放环境 2 面向服务架构的特点和实现技术 面向服务架构 (Service Orientd Arechitecture,SOA)是 一下描述数据和信息的标准技术,服务提供者可以用WSDL (Web服务描述语言)描述Web服务,用UDDI(统一描述、发 现和集成)向服务注册代理发布和注册Web服务,服务请求 者通过UDDI进行查询,找到所需的服务后,利用SOAP(简单 种面向服务的企业应用体系结构,是一种分布式的软件架 构模型。在该模型中,任何业务功能都被作为提供的一个服 务使用,应用程序的不同功能(服务)通过这些服务之间定义 的结构和合约联系,应用系统可以看作是一系列服务的集成。 SOA的体系结构由三个参与者和三个基本操作构成,三 个参与者分别为服务提供者、服务请求者和服务注册代理,三 个基本操作分别是发布、查找和绑定,如图1。服务提供者将 对象协议)来绑定、调用这些服务。 3 基于SOA的ERP系统体系结构 为了实现互连网环境下企业之间的供应链集成和响应企 业内部流程重组的变化,要求ERP系统具有给外部企业提供 服务和从外部企业获取服务的功能,为了能够灵活地实现企 收稿日期:2006-08—04;修订日期:2006—10—23 作者简介:汪清明(19155一),男,湖南益阳人,高级工程师,副教授,主要研究方向:ERP系统、企业信息集成、Web服务. 维普资讯 http://www.cqvip.com
414 计算机应用 2007正 业内部流程重组的要求,可以把ERP系统功能分解成粗粒度 可容易的实现。为此,本文提出了基于SOA的ERP系统体系 结构,如图2所示。 和细粒度的服务,通过服务组合实现ERP系统的整体功能。 当重组企业业务流程时,通过重新组合已编写的服务部件即 垦 堡 耋J H H甚 库存管理 产L 生一销售L一分销I粗粒度服务 —管理I l管理I I管理I 报价I…l入库I…I计算I…I报价1..‘l订单I I出货I 【档案J… 细粒度服务 … … … … …『库存表l I物料清单II产品表lI 曼塑 塞J l £ 数据库 绑定 绑定 本地企业服务请求 lI发布 发布 DI 外部企业服务请求 l服务注册中・ 发布 绑定 l外部企业服务提供者请求 I广——] 各种服务l I查 苎旦J I ............一l 图2基于SOA的ERP系统体系结构 在图2所示的ERP系统体系结构中,ERP各个业务模块 的功能作为粗粒度服务发布,而每个模块的功能又是由多个 来实现,JSTL标记将辅助完成条件处理和对WEB服务所返 回XML数据的分析。服务请求方包括一个servlet,负责解释 客户端输入的HTI'P请求,根据HTrP请求,利用JAxR发现 UDDI服务注册表中的服务,然后根据请求内容创建一条 SOAPMessage,利用JAXM把SOAPMessage提交给服务提供方 调用相关的Web服务,由Web服务程序处理数据库,最后把 子功能组成,我们把这些子功能作为细粒度服务发布。一个 粗粒度服务由多个细粒度服务组合而成,如销售管理服务就 由销售报价、客户订单、客户出货、客户档案等细粒度服务组 合而成,每个细粒度服务利用数据访问逻辑组件对数据库表 进行查找、更新、保存等操作。本地企业提供的服务在本地服 务注册中心注册,可由本地企业客户端访问,而需要提供给合 作企业访问的服务,则发布到公共注册中心,供外部合作企业 园 结果返回到服务请求方。 访问。请求服务的客户端通过web环境显示用户界面,利用 SOAP客户接口实现与服务提供方和服务注册中心通讯,达 到查询服务和绑定服务的目的。 4 基于SOA的ERP系统的实现技术 SOA的主要实现方法是Web Services技术,而实现Web 服务的主流开发平台有J2EE平台和Microsoft.net平台,由于 用J2EE平台开发的系统具有平台无关性、安全性、可伸缩 图3基于J2EE的Web服务体系结构 性、不同供应商实现方案之间的可移植性等若干优点而得到 了广泛的应用。图3是采用J2EE平台实现ERP系统的Web 服务体系结构。其中JAXR(Java PIA for XML Registries,用于 5 结话 基于SOA的ERP系统体系结构,把ERP系统模块表示 成粗粒度服务,而每一个粗粒度服务又可以分解成多个细粒 XML注册表的Java PIA)使得应用程序能够在注册表中注册、 或者查询其他公司提供的Web服务,JAXM(Java API for XML Messaging,用于XML消息交换的Java API)提供了Web服务 环境中的异步和消息交换功能,并可以通过内部网和Internet 度服务,每一个细粒度服务完成一项单一功能,通过调用数据 访问逻辑组件直接操作数据库表,通过细粒度服务的不同组 合可实现ERP系统的不同业务功能和业务流程,从而达到企 进行XML文档交换,JAXM是基于SOAP1.1规范和SOAP附 件定义的消息交换协议的一种API框架。 服务提供方用JAXR向UDDI服务注册表发布Web服 务,客户端的用户界面用浏览器形式表示,使用JSP和JSTL 业业务流程重组的目的。另一方面,把需要向外部企业提供 的服务发布到公共服务注册代理供合作伙伴访问,同时也通 过公共服务注册代理查找合作伙伴提供的服务,实现企业之 (下转第417页) 维普资讯 http://www.cqvip.com
第2期 间耗费 , )为:,胡乃静等:基于低耗费调度的网格数据库查询中间件的设计 3)子查询涉及6个数据库节点中的数据。 417 实验与文献[9]中的DAG调度方法和文献[8]中min. ~+ + (4) min任务的调度相比较,结果如图2所示。 从图中可以看出,在只涉及一个节点的情况下,本文的 LCQM略低于网格中的DAG和min.min,但差别不大,随着子 查询涉及节点的增多,在涉及三个节点时,由于考虑了通讯等 4)最优耗费模型 因此,(q;,(P ,…,P:))中确定最优的节点的方法是计算 查询q 分别在节点(p ,…,P )中各自的耗费 ,)(m≤ ≤ ,:)中选择最小的耗费,即: p(优)=rain(T(qi,P1),…,r‘ ),…,TCqiPk)),1≤ ≤k ,情况,LCQM的查询效率要优于网格中的DAG和min.min,在 涉及6个节点时,LCQM的查询效率优势明显,说明查询中间 (5) 件对于分布式的查询有明显的效率提高。 3.2优化调度算法 输入:存放各个子查询的数组q[]、存放q 的相应的各个 5 结语 网格数据库中的子查询的执行节点的调度大多采用网格 节点P 一,P 的数组q[][]、有关的耗费参数s[]。 输出:查询调度计划 算法: 1. f0ri=l tomdo 的计算任务的调度方法,本文在分析子查询与网格节点的数 据关联的基础上,建立了最小查询耗费调度模型,并设计了 LCQM中间件,实现了低耗费查询调度计划算法,给出了有关 的实验验证,丰富了网格数据库中子查询的调度方法。 网格数据库中网格环境的动态变化,存在局部代价参数 不可得、不精确、不完全或变化的情况,本文的下一步工作是 根据环境参数的变化,对正在实施中的子查询的调度计划进 行动态的适应性优化调度。 参考文献: 【1】 王珊,张坤龙.网格环境下的数据库系统【EB/OL].www.china. d.net,2005. := ,s=0//取第一个子查询,并进行有关的初始化 2. forj=l tondo 3. 4 . compute(T(q , ),q‘[],[]) //取q 的一个执行节点,计算,.fq1.p的时间耗费 ( ,P ),i[])<s ./)ifcompute(q q then 5. :=丹;s=compute( (q‘,丹),q‘[]) //若在毋的耗费比最低的小,则替换为最低值,并选定 该节点为最优节点 End if end for end for 6. 7. 8. 【21 CZAJKOWSKI K,FOSTER I.KARONIS N,et n|.A Resource Management Architcteure for Metacomputing Systems[A】.In 4th Workshop on Job Scheduling Strategies for Parallel Processing[C】. Springer—Veflag.2004.62—82. 算法分析:算法分为两重循环,外重循环为针对q[]中未 分派查询节点的每一个子查询q ,内重循环为子查询q 在算 法3中涉及到的每一个可能的执行节点。算法3步到6步为计 算q 在每一个可能的查询节点发生的耗费,并选择最低的耗 费,从而产生查询调度计划。可以明显看出在有i个子查询√ 【3】 RAMAN V,NARANG I,CRONE C.et a1. ̄wlce8 for Data Ac- ce%and Data Processing on Grids[A】.GGF Document GFD.14 【C】.Global Grid Forum,2003. 【4】 ZHOU YL’OOI BC.TAN K-L’et .An adaptable distributd equery processing architecture[Z1.Data Know1.Eng.,To appear, 2005. 个节点的情况下,整个算法的复杂度为O( )。 4 实验 卫 mIn—mIn 鲴 LCQM 刍 DAG 芝 【5】BARU C,MOORE R,RAJASEKAR A,et a/.The sdsc storage re一 — 甄 慝 髓 瞄 麓 辩 黉 8Oul ̄e broke ̄EB/OL].http://www.npaci.edu/SRB,2OO6. 【6】 SMITH J,SAMPAIO S,WATSON P.The design.implementation and evaluation an odmgcomplinta.paralld object database selwer 【J】.Distributed and Parallel Databases,2004,16(3):275—319. 【7】ZHOUYL,ooI BC.TAN K-L,d .An adaptable dis buted query processing architcteure[Z1.Data Know1.Eng.,To appear, 2005. 星 莒 镫 枨 唾 嘲 l 卜 点 嘲瑚 l l I; 嘲 . 【8】BLYTHE J,JAIN S,DEELMAN E.et a/.Task scheduling strate- gies for work ̄ow-based applications in srid8 Cluster Computing nd a3个节点 6个节点 一 图2实验结果 the Grid[J】.CCGrid 2005,2005,(2):759—767. 【91 DAIL H,SIEVERT O,BERMAN F,et a1.Scheduling in the d 为验证LCQM中间件的调度算法,进行了测试实验,子查 询q分为三种环境: 1)子查询只涉及1个数据库节点中的数据; appliatcion development software project[A】.Grid resouTce manage— ment:state ofthe anandfuturetrends[C】.KluwerAcademic Pub— lishem Group,2003. 2)子查询涉及3个数据库节点中的数据; (上接第414页) 问的业务交互,保证企业之间的合作能在ERP系统中顺利实施。 参考文献: 【11杨颖,杨磊.基于Web Services的企业e—ERP系统集成模型 【J】.计算机应用研究,2005。22(3):210—213. 【2】 徐罡,黄涛,刘绍华,等.分布应用集成核心技术研究综述【J】.计 算机学报,2005,28(4):433—444. 【31 廖军,谭浩.新一放分布式处理技术一web Services【J1。计 算机应用,2004,24(8):5—9.
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务