ImageVerifierCode 换一换
格式:DOC , 页数:108 ,大小:1.12MB ,
资源ID:5126104      下载积分:6 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/5126104.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(基于WCF的外贸ERP业务系统的设计与实现.doc)为本站上传会员【精***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

基于WCF的外贸ERP业务系统的设计与实现.doc

1、基于WCF的外贸ERP业务系统的设计与实现96资料内容仅供参考,如有不当或者侵权,请联系本人改正或者删除。基于WCF的外贸ERP业务系统的设计与实现摘要当今, ERP( Enterprise Resource Planning, 企业资源计划) 系统已使许多企业的生产经营管理发生了全新的变化。成功地实施了ERP的企业也从中获得了显著的效益。可是经过这么多年的发展, ERP系统的规模也越来越大, 导致维护难度极大。另外, 子系统与子系统之间、 模块与模块之间互相操作也是困难重重。如何解决这些问题已迫在眉睫。幸好, 随着SOA标准的成熟以及支持SOA实现技术的不断发展, SOA在各企业的信息化建设

2、及其各部门业务整合上也具有了一些应用。WCF作为.NET近几年推出的分布式开发技术, 融合了之前的.Net Remoting、 Web Service等相关技术, 无疑是.Net平台实现SOA框架的制胜利器。本文首先介绍了分布式开发模型的发展过程, 对传统C/S与B/S的特点及基于分布式组件技术的多层B/S开发模型的优缺点进行分析。接下来介绍了SOA, 探讨了Web Service技术的特点。在此基础上对WCF概念、 多层服务模型、 通道模型、 WCF宿主进行分析。还对外贸ERP业务系统进行了深入的需求分析, 最终制定了系统的总体架构。本系统划分为四个层次,分别是表现层、 通讯层、 业务层和数

3、据层。表现层包括用户界面以及一定量的数据处理; 通讯层主要负责客户端和服务器端之间的通讯; 业务层主要负责对数据按照一定的商业逻辑进行操作; 数据层主要是屏蔽上层业务逻辑与底层数据访问, 对数据进行一系列的操作。本系统不但对以上四个层具有良好的设计, 更是成功的实现了以上四层。关键词: ERP系统, WCF, 分布式, SOAAbstractToday, production and operation and management of many companies have been changed by ERP (Enterprise Resource Planning) system.

4、 The companies that succeed with their ERPs implement always gains significant benefits. But after so many years of development, the size of the ERP system become more increasing, lead to increase maintenance. In addition, the interoperation between the subsystem and the subsystem, the module and th

5、e module, that is difficult. How to solve these problems is imminent. Fortunately, with mature SOAs standards and technology to support SOA that is developing, there are a number of applications for SOA business integration between the enterprise information construction and its various departments.

6、 Nearly WCF as distributed development technology in .NET to fuse Net Remoting and Web Service, undoubtedly WCF is optimal weapon in .NET framework for SOA.This dissertation reviews the history of distributed software development model, analyses advantages and disadvantages of traditional C/S and B/

7、S model, especially the multi-tier C/S model based on distributed component. This dissertation introduces WCF concept, multi-tier service model, channel model, WCF host. There is also a thorough requirement analysis for the foreign trade ERP business system, finally, establishes overall structure of

8、 the system. The system is divided into four levels, namely, the presentation layer, communication layer, business layer and data layer. Presentation layer including a certain amount of data processing; communication layer is responsible for client side and server sides communication; business layer

9、 is mainly responsible for the data according to certain business logic to operate; data layer is shield the upper business logic and the underlying data access, deals with a series of operations on the data. The system not only good design of the four layers, but also successful realization of the

10、above four layer.Key Words: ERP system, WCF, Distributed, SOA 目录摘要iAbstractii目录I图目录IV表目录V第1章 绪论11.1 研究背景11.2 研究内容11.3 研究的意义21.4 国内外研究现状21.4.1 国外研究现状21.4.2 国内研究现状31.5 论文的组织结构41.6 本章小结4第2章 分布式开发模型与WCF技术52.1 C/S开发模型介绍52.2 B/S开发模式介绍62.3 分布式组件技术72.4 基于分布式组件技术的多层C/S开发模型82.5 SOA介绍82.5.1 SOA的体系结构102.5.2 Web

11、 Service简介112.6 WCF技术122.6.1 WCF概念122.6.1.1 合约122.6.1.2 协定绑定132.6.1.3 安全性层次142.6.2 基于WCF的多层服务模型152.6.3 WCF通道模型162.6.4 WCF宿主182.7 本章小结19第3章 系统需求分析213.1 项目背景213.2 系统总体需求213.3 客户端功能223.4 主要的业务流程243.4.1 外销合同管理243.4.2 收购合同管理253.4.3 进仓管理263.4.4 出仓管理273.4.5 出口明细单管理273.4.6 报关单管理273.4.7 结汇单证管理283.4.8 核销单管理28

12、3.4.9 信用证管理293.4.10 结算单管理293.5 本章小结30第4章 基于WCF的外贸ERP业务系统设计314.1 系统总体方案314.1.1 体系结构概述314.2 系统构架实现324.2.1 表现层设计324.2.2 通讯层设计364.2.3 业务逻辑层设计384.2.4 数据层设计394.3 WCF技术在构架实现中的应用404.3.1 WCF实现双工模式404.3.2 WCF处理大型数据的传输434.4 数据库设计464.4.1 商品表的设计464.4.2 客户表的设计474.4.3 外销合同表的设计484.5 本章小结50第5章 系统的实现和结果展示515.1 系统的部署环

13、境515.2 系统的实现515.2.1 Client Search表现层的实现515.2.2 Client Search通讯层的实现535.2.3 Client Search业务逻辑的实现545.2.4 Client Search数据层的实现555.3 系统结果展示595.4 本章小结63第6章 总结与展望646.1 论文总结646.2 未来的工作64参考文献66作者简历68致谢69图目录图 2.1 C/S开发模型5图 2.2 B/S开发模型7图 2.3 基于分布式组件技术的多层C/S开发模式8图 2.4 SOA的体系结构10图 2.5 基于WCF的多层服务模型15图 2.6 通道堆栈16图

14、2.7 通道对象的静态类图18图 3.1 ERP业务系统的组织结构21图 3.2 外销合同管理流程24图 3.3 外销合同管理流程25图 4.1 四层架构31图 4.2 窗体类图33图 4.3 BaseForm的类图34图 4.4 EclipseForm的类图35图 4.5 SearchForm的类图35图 4.6 WizardForm的类图36图 4.7 ECI通讯图37图 4.8 数据层处理逻辑39图 4.9 CDSLock的类图40图 5.1 Client Search 表现层52图 5.2 数据层机构图58图 5.3 系统主界面60图 5.4 客户查询界面60图 5.5 客户编辑界面6

15、1图 5.6 外销合同的编辑界面61图 5.7 收购合同的编辑界面62图 5.8 托运明细单的编辑界面62表目录表 2.1 WCF的四种合约类型13表 2.2 WCF宿主种类以及特点19表 4.1商品表的表结构46表 4.2客户表的表结构47表 4.3 外销合同主表的表结构48表 4.4 外销合同商品表的表结构49表 4.5 外销合同费用表的表结构50 第1章 绪论1.1 研究背景当今, ERP( Enterprise Resource Planning, 企业资源计划) 系统已使许多企业的生产经营管理发生了全新的变化。成功地实施了ERP的企业也从中获得了显著的效益。可是经过这么多年的发展,

16、ERP系统的规模也越来越大, 导致维护难度极大。另外, 子系统与子系统之间、 模块与模块之间互相操作也是困难重重。如何解决这些问题已迫在眉睫。幸好, 随着SOA标准的成熟以及支持SOA实现技术的不断发展, SOA在各企业的信息化建设及其各部门业务整合上也具有了一些应用。WCF作为.NET近几年推出的分布式开发技术, 融合了之前的.Net Remoting、 Web Service等相关技术, 无疑是.Net平台实现SOA框架的制胜利器。基于此, 本文主要研究如何使用WCF分布式技术来实现一个外贸ERP业务系统。1.2 研究内容研究内容包括以下三个主要组成部分: 1) 详细分析传统的C/S两层架

17、系统, 在实际的运行中存在的问题, 比如: 系统数据库操作的可扩展性差, 数据层负责直接与数据库交互, 业务逻辑层和表示层混合在一起作为另一层。虽然原系统已经把对数据库操作的一些方法封装到了数据层的类里面, 对于不同的事体对象能够根据需要使用类里面的方法。可是这样的设计, 可扩展性不够好, 当业务需求变动, 需要改变类里面的方法时, 各个客户端都必须再重新更新应用程序。代码可重用性差, C/S开发模型的程序基于不同开发工具, 数据库平台, 由于兼容性的原因, 代码很难重用。如果以前已用C#开发了一个C/S两层架构的报价单管理系统, 现在单位想用Java再开发一个Web版的报价单管理系统, 来方

18、便客户查询公司产品的价格。此时以前写的代码就很难重用, 不得不用java再重新实现一遍, 增加了成本。思考若运用WCF技术是否能够解决这些问题。2) 分析WCF组成、 技术特点、 通信模式、 部署方式、 安全性。3) 分析外贸的业务流程, 从而设计出一套外贸ERP业务系统, 有效地帮组企业去加强过程控制, 设置风险预警, 细化业务核算。1.3 研究的意义在一个系统的中特别是较为大型的系统中, 如外贸ERP业务系统, 可按照功能切分为: 商品管理系统、 客户管理系统、 外销合同管理系统、 收购合同管理系统、 报关单管理系统、 仓储管理系统等。在这样的应用中系统切分了、 功能独立了、 耦合降低了、

19、 容易维护了, 可是各个系统中的通讯怎么完成呢? 假如发生一笔”以销定购”的业务, 采购员在使用ERP系统新建收购合同的时候, 势必想去读取外销合同中的有用数据( 如商品信息) , 那要怎么做呢? 是要直接引用外销合同管理系统的DLL还是把这些需要相互调用的功能放在一个叫Common的项目中供所有子系统调用呢, 或者干脆直接在收购合同管理系统中访问数据库中的外销合同数据, 这些方法都是不太良好的。分布式技术的出现将物理分散的资源、 处理逻辑整合成统一的工作平台, 并在整个系统上进行分配与优化, 克服了传统集中式系统的缺陷。之后SOA( 面向服务的架构) 的出现, 又将应用程序的不同的功能单元构

20、建为服务, 这些服务经过定义良好的借口和契约联系起来。接口采用中立的方式定义, 它独立于实现服务的硬件平台, 操作系统和编程语言。使得构建在各种系统中的服务以统一, 通用的方式进行交互。Microsoft公司顺应这一趋势, 推出了基于SOA的网络开发新技术WCF( Windows Communication Foundation, windows通信基础) 。WCF采用面向服务的新型编程模型简化了分布式应用程序的开发。它提供分层的体系结构, 支持多种风格的分布式应用程序开发。WCF对”WS-*”标准的内置支持, 提供了安全、 可靠、 协商过的互操作。对于开发人员开说, 这减少了达到异构平台互操

21、作所需的基础结构代码量。对于企业来说, 这意味着在组织内部和外部与客户、 伙伴和供应商交互的能力, 而不论她们使用的是什么平台。因此, 选用WCF分布式技术来实现一个外贸ERP业务系统, 不失为一个最佳的解决方案。1.4 国内外研究现状1.4.1 国外研究现状在一些IT应用比较发达的欧美国家中, 企业已经开始着手整合其不同种类的操作系统, 应用软件, 系统软件和应用基础结构( application infrastructure) 。一些现存的应用程序被用来处理当前的业务流程( business processes) , 因此从头建立一个新的基础环境是不可能的。企业应该能对业务的变化做出快速的

22、反应, 利用对现有的应用程序和应用基础结构( application infrastructure) 的投资来解决新的业务需求, 为客户, 商业伙伴以及供应商提供新的互动渠道, 并呈现一个能够支持有机业务( organic business) 的构架。SOA凭借其松耦合的特性, 使得企业能够按照模块化的方式来添加新服务或更新现有服务, 以解决新的业务需要, 提供选择从而能够经过不同的渠道提供服务, 并能够把企业现有的或已有的应用作为服务, 从而保护了现有的IT基础建设投资。Windows Communication Foundation (WCF)是Microsoft为构建面向服务的应用提供的

23、分布式通信编程框架, 是.NET Framework 3.5的重要组成部分。使用该框架, 开发人员能够构建跨平台、 安全、 可靠和支持事务处理的企业级互联应用解决方案1。根据微软官方的解释, WCF( 之前的版本名为”Indigo”) 是使用托管代码建立和运行面向服务( Service Oriented) 应用程序的统一框架。它使得开发者能够建立一个跨平台的安全、 可信赖、 事务性的解决方案, 且能与已有系统兼容协作。WCF是微软分布式应用程序开发的集大成者, 它整合了.Net平台下所有的和分布式系统有关的技术, 例如.Net Remoting、 ASMX、 WSE和MSMQ。以通信(Comm

24、unication)范围而论, 它能够跨进程、 跨机器、 跨子网、 企业网乃至于 Internet; 以宿主程序而论, 能够以ASP.NET, EXE, WPF, Windows Forms, NT Service, COM+作为宿主(Host)。WCF能够支持的协议包括TCP, HTTP, 跨进程以及自定义, 安全模式则包括SAML, Kerberos, X509, 用户/密码, 自定义等多种标准与模式。也就是说, 在WCF框架下, 开发基于SOA的分布式系统变得容易了, 微软将所有与此相关的技术要素都包含在内, 掌握了WCF, 就相当于掌握了叩开SOA大门的钥匙。1.4.2 国内研究现状在

25、国内, WCF的推出, 促使许多程序员积极地发表大量的有关WCF技术以及WCF技术应用的相关文章, 文章中还讲解一些小的应用程序。蒋金南在博客园发表的系列博文WCF技术剖析。为了更好地学习WCF, 国内已经出版了几本外文翻译后的WCF技术图书, 深受广大程序员的欢迎。很多公司应用程序的开发都采用了WCF框架, 以使开发的引用程序模块化, 便于适应灵活多变的外界需求。总体而言, 国内WCF研究工作与国外是同步的, 但在WCF的应用上小队较少, 相信随着SOA概念的普及以及Visual studio 的发布, 会有更多的开发研究人员加入下WCF开发的阵营中。1.5 论文的组织结构论文章节安排如下:

26、 第一章: 绪论。介绍了论文的研究背景、 研究内容、 研究意义和国内外研究现状。第二章: 分布式开发模型与WCF技术介绍。叙述了分布式开发模型的发展过程, 分析了这些开发模型的特点, 比较了这些模型在构建分布式应用程序中的优点与不足。介绍了SOA与Web Service技术, 分析了它们的特点。在此基础上介绍了WCF技术, 对WCF的层次结构, 技术组成进行了分析。第三章: 系统需求分析。介绍了作者参与开发的外贸ERP业务系统的项目背景、 系统的总体需求、 客户端的功能、 主要的业务流程。第四章: 系统架构以及关键技术。本文作者首先给出了体系机构的概念, 并联系实际给出了本系统的体系架构, 使

27、读者在整体上了解本外贸ERP业务系统。然后针对系统实现双工模式和大数据传输两方面关键技术, 给出了可行的解决方案。最后介绍了系统中商品表、 客户表、 外销合同主表、 外销合同商品表、 外销合同费用表的表结构。第五章: 系统的实现和结果展示。本章开头首先给出了本系统的部署环境, 接着按照第四章的设计思路, 分别实现了Client Search模块的用户层、 通讯层、 业务层和数据层, 最后展示了本系统的成果。第六章: 总结与展望。对本文内容进行总结, 对WCF发展趋势进行展望, 分析了WCF的发展方向。1.6 本章小结在本章中, 首先介绍了本文的研究背景、 研究内容、 研究意义和国内外研究现状,

28、 最后给出了本文的组织结构。第2章 分布式开发模型与WCF技术2.1 C/S开发模型介绍C/S( Client/Server) 结构, 即大家熟知的客户机和服务器结构。它是软件系统体系结构, 经过它能够充分利用两端硬件环境的优势, 将任务合理分配到Client端和Server端来实现, 降低了系统的通讯开销。当前大多数应用软件系统都是Client/Server形式的两层结构, 由于现在的软件应用系统正在向分布式的Web应用发展, Web和Client/Server 应用都能够进行同样的业务处理, 应用不同的模块共享逻辑组件; 因此, 内部的和外部的用户都能够访问新的和现有的应用系统, 经过现有

29、应用系统中的逻辑能够扩展出新的应用系统。这也就是当前应用系统的发展方向。传统的C/S体系结构虽然采用的是开放模式, 但这只是系统开发一级的开放性, 在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境, C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件, 加之产品的更新换代十分快, 已经很难适应百台电脑以上局域网用户同时使用。而且代价高, 效率低。其结构如图2.1所示: 业务逻辑层数据库访问层ClientServer数据库图 2.1 C/S开发模型在这种开发模型中, 应用程序的业务逻辑和数据处理逻辑分布在客户和服务器两端。客

30、户端接收用户的输入请求, 经过处理后将数据发送给数据库服务器, 并将返回结果显示给用户。与集中式系统相比, C/S开发模型有如下优点: 1) 服务器负荷较轻。业务逻辑集成在客户端, 服务器仅负责数据请求, 不需要与用户直接交互, 减轻了服务器的负载。2) 数据的储存管理功能透明。数据库服务器负责数据的储存管理, 客户端在得到相应的权限后, 对数据库的访问是透明的, 方便了程序开发和用户的使用。3) 将业务逻辑与数据库相分离, 层次结构清晰。数据与业务处理分离的开发模型比集中式系统结构清晰, 有利于分布式程序开发。C/S开发模型的出现, 推进了分布式技术的应用与发展, 其自身也有如下的不足: 1

31、) 数据安全性差。由于业务逻辑集成在客户端, 服务端无从了解操作的合法性, 给系统留下潜在的安全隐患。2) 代码可重用性差。C/S开发模型的程序基于不同开发工具、 数据库平台, 由于兼容性的原因, 代码很难重用。2.2 B/S开发模式介绍B/S( Browser/Server) 结构即浏览器和服务器结构。它是随着Internet技术的兴起, 对C/S结构的一种变化或者改进的结构。在这种结构下, 用户工作界面是经过WWW浏览器来实现, 极少部分事务逻辑在前端( Browser) 实现, 可是主要事务逻辑在服务器端( Server) 实现, 形成所谓三层3-tier结构。这样就大大简化了客户端电脑

32、载荷, 减轻了系统维护与升级的成本和工作量, 降低了用户的总体成本( TCO) 。以当前的技术看, 局域网建立B/S结构的网络应用, 并经过Internet/Intranet模式下数据库应用, 相对易于把握、 成本也是较低的。它是一次性到位的开发, 能实现不同的人员, 从不同的地点, 以不同的接入方式( 比如LAN, WAN, Internet/Intranet等) 访问和操作共同的数据库; 它能有效地保护数据平台和管理访问权限, 服务器数据库也很安全 。特别是在JAVA这样的跨平台语言出现之后, B/S架构管理软件更是方便、 快捷、 高效。其结构如图2.2所示: Web浏览器业务逻辑层数据库

33、访问层Web服务器数据库服务器图 2.2 B/S开发模型B/S开发模型有如下优点2: 1) 业务扩展简单方便, 经过增加网页即可增加服务器功能。2) 开发简单, 共享性强。3) 维护简单, 升级容易。C/S开发模型的应用必须开发出专用的客户端软件, 无论是安装、 配置还是升级都需要在所有的客户机上实施, 浪费了人力和物力。B/S的应用只需在客户端装有通用的浏览器即可, 维护工作都在服务器端进行。当系统升级时, 只针对本地服务器完成相应的工作, 升级容易。4) 数据库安全性好。客户端不与数据库直接相连, 而是经过web服务器进行处理, 最大限度的保证了数据库的安全。但存在如下不足: 1) 页面动

34、态刷新, 响应速度明显降低。 2) 网站服务器负荷较重。2.3 分布式组件技术B/S为分布式开发提供了良好的开发模型。当应用发生改变时, 如何充分利用己有成果, 保证已开发代码能移植到新应用中, 最大程序节省投资是程序开发过程需要解决的问题。不同于在集中和封闭环境下发展起来的传统软件, 分布式应用, 特别是在Web环境下的分布式开发, 现有的软件理论、 方法、 技术。难以有效地适应或基本不能适应这种新的软件形态, 传统方法也难以适应网络组件的协同性、 自适应性, 以及需求的多目标性;在软件可靠性方面, 难以适应web环境所要求的整体化、 可靠性与安全性。分布式组件技术正是在这种背景下产生的,

35、其基本思想是将大而复杂的软件应用分成一系列可先行实现、 易于开发、 理解和调整的软件单元, 这些软件单元被称为组件(components)。以组件为基础的软件开发方案, 效率高, 费用低, 可靠性好。分布式组件都有可能在将来被复用。围绕分布式组件进行组织开发, 使得开发人员能在原有工作的基础上, 不断完善新系统的功能并减少开发时间。2.4 基于分布式组件技术的多层C/S开发模型在软件模块化的趋势下, 结合C/S开发模型与分布式组件技术形成了新的开发模型, 基于分布式组件技术的多层C/S开发模型如图2.3所示: Client表示层逻辑分布式组件业务逻辑层数据库访问层Web服务器数据库服务器UI层

36、图 2.3 基于分布式组件技术的多层C/S开发模式此开发模模型很好地解决了C/S开发模式中数据安全性差和代码重用性差的不足, 也不用忍受B/S响应慢的缺陷3。2.5 SOA介绍SOA, 面向服务的体系结构( service-oriented architecture) 是一个组件模型, 它将应用程序的不同功能单元( 称为服务) 经过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的, 它应该独立于实现服务的硬件平台、 操作系统和编程语言。这使得构建在各种这样的系统中的服务能够以一种统一和通用的方式进行交互。这种具有中立的接口定义( 没有强制绑定到特定的实现上) 的特征称为

37、服务之间的松耦合。松耦合系统的好处有两点, 一点是它的灵活性, 另一点是, 当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时, 它能够继续存在。而另一方面, 紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的, 因而当需要对部分或整个应用程序进行某种形式的更改时, 它们就显得非常脆弱。对松耦合的系统的需要来源于业务应用程序需要根据业务的需要变得更加灵活, 以适应不断变化的环境, 比如经常改变的政策、 业务级别、 业务重点、 合作伙伴关系、 行业地位以及其它与业务有关的因素, 这些因素甚至会影响业务的性质。我们称能够灵活地适应环境变化的业务为按需( On demand

38、) 业务, 在按需业务中, 一旦需要, 就能够对完成或执行任务的方式进行必要的更改。虽然面向服务的体系结构不是一个新鲜事物, 但它却是更传统的面向对象的模型的替代模型, 面向对象的模型是紧耦合的, 已经存在二十多年了。虽然基于 SOA 的系统并不排除使用面向对象的设计来构建单个服务, 可是其整体设计却是面向服务的。由于它考虑到了系统内的对象, 因此虽然 SOA 是基于对象的, 可是作为一个整体, 它却不是面向对象的。不同之处在于接口本身。SOA 系统原型的一个典型例子是通用对象请求代理体系结构( Common Object Request Broker Architecture, CORBA)

39、 , 它已经出现很长时间了, 其定义的概念与 SOA 相似。然而, 现在的 SOA 已经有所不同了, 因为它依赖于一些更新的进展, 这些进展是以可扩展标记语言( eXtensible Markup Language, XML) 为基础的。经过使用基于 XML 的语言( 称为 Web 服务描述语言( Web Services Definition Language, WSDL) ) 来描述接口, 服务已经转到更动态且更灵活的接口系统中, 非以前 CORBA 中的接口描述语言( Interface Definition Language, IDL) 可比了。Web 服务并不是实现 SOA 的惟一方

40、式。前面刚讲的 CORBA 是另一种方式, 这样就有了面向消息的中间件( Message-Oriented Middleware) 系统, 比如 IBM 的 MQseries。可是为了建立体系结构模型, 您所需要的并不只是服务描述。您需要定义整个应用程序如何在服务之间执行其工作流。您特别需要找到业务的操作和业务中所使用的软件的操作之间的转换点。因此, SOA 应该能够将业务的商业流程与它们的技术流程联系起来, 而且映射这两者之间的关系。例如, 给供应商付款的操作是商业流程, 而更新您的零件数据库, 以包括进新供应的货物却是技术流程。因而, 工作流还能够在 SOA 的设计中扮演重要的角色。另外,

41、 动态业务的工作流不但能够包括部门之间的操作, 甚至还能够包括与不为您控制的外部合作伙伴进行的操作。因此, 为了提高效率, 您需要定义应该如何得知服务之间的关系的策略, 这种策略常常采用服务级协定和操作策略的形式。最后, 所有这些都必须处于一个信任和可靠的环境之中, 以同预期的一样根据约定的条款来执行流程。因此, 安全、 信任和可靠的消息传递应该在任何 SOA 中都起着重要的作用。2.5.1 SOA的体系结构SOA将应用程序的不同功能单元称为服务, 并经过接口的形式对外公开。服务采用标准协议, 经过网络来访问。服务提供者开发出各种各样有用的服务, 经过严格测试后把服务发布到公共的服务注册表上,

42、 服务消费者(请求者)经过查找服务注册表获得所需要的服务, 然后就能够使用所需要的服务了。SOA由服务注册者、 服务消费者与服务提供者组成, 体系结构模型如图2.4所示: 图 2.4 SOA的体系结构服务注册者服务消费者服务提供者查找消费/绑定发布1) 服务提供者。服务提供者是提供服务的实体, 接受服务消费者的调用请求并进行响应。2) 服务注册者。服务注册者主要作用是用来搜索网络上可用的服务以及相关具体信息。服务注册者使用的协议相当于一个服务目, 它是接收并存储服务契约的实体, 供服务消费者查询服务之用。服务提供者需要将服务的信息发布到服务注册中心。3) 服务消费者。服务消费者从服务注册者处查

43、询需要的服务, 并经过传输机制来调用服务, 服务消费者能够是应用程序或另一个服务。它提供服务的WSDL文档并经过SOAP协议来与要访问的服务通信。2.5.2 Web Service简介SOA的提出为程序开发提供了很好的开发模式, Web Service技术则是这种开发模式的具体实现技术之一。Web Service使用基于XML的消息作为数据通信方式, 从而消除了使用不同组件模型、 操作系统与编程语言系统之间存在的差异, 使异类系统能够作为计算网络的一部分协同运行。Web Service能够认为是一种部署在web上的对象, 同时Web Service的基石是以XML为主的、 开放的web规范技术

44、。它的主要目标是在现有的各种异构平台基础上构成一个通用的与平台、 语言无关的技术层, 各种平台上的应用依靠该技术层来实施相互的连接和集成。Web Service使用SOAP(Simple Object Access Protocol, 简单对象访问协议)协议进行通信。SOAP是在分布式的环境中交换信息的简单的协议, 它是一种轻量的、 简单的、 基于XML的协议, 它被设计成在Web上交换结构化的和固化的信息。SOAP能够和现存的许多因特网协议和格式结合使用, 包括超文本传输协议(HTTP), 简单邮件传输协议, 多用途网际邮件扩充协议(MIME)。它还支持从消息系统到远程过程调用(RPC)等大

45、量的应用程序。经过SOAP协议, Web Service能够简单、 有效的为服务消费者提供服务。Web Service使用WSDL(Web Service Description Language, web服务描述语言)定义如何利用XML语法描述Web Service的规范。它经过在服务提供者和服务请求者之间交换的消息来描述Web Service, 可被看作是Web Service和外界沟通的桥梁。Web Service技术继承了SOA的优点, 为解决分布、 异构的企业应用提供了比较好的解决方案。经过它, 能够将现有应用程序的功能和数据以XML形式公开。然后, 便能够创立使用此XML集合的复合

46、应用程序以实现各个构成应用程序之间的互操作性。Web Service使得整个应用程序开发从以操作系统为中心的应用程序组织模式扩展到以网络为中心的组织模式4。2.6 WCF技术Windows Communication Foundation( WCF) 是由微软发展的一组数据通信的应用程序开发接口, 它是.NET框架的一部分, 由.NET Framework 3.0开始引入, 与Windows Presentation Foundation及 Windows Workflow Foundation并行为新一代Windows操作系统以及WinFX的三个重大应用程序开发类库5。在.NET Frame

47、work 2.0以及前版本中, 微软发展了Web Service( SOAP with HTTP communication) , .NET Remoting( TCP/HTTP/Pipeline communication) 以及基础的Winsock等通信支持, 由于各个通信方法的设计方法不同, 而且彼此之间也有相互的重叠性( 例如.NET Remoting能够开发SOAP, HTTP通信) , 对于开发人员来说, 不同的选择会有不同的程序设计模型, 而且必须要重新学习, 让开发人员在用户有许多不便。同时, 服务导向架构( Service-Oriented Architecture) 也开始盛行于软件工业中, 因此微软重新查看了这些通信方法, 并设计了一个统一的程序开发模型, 对于数据通信提供了最基本最有弹性的支持, 这就是Windows Communication Foundation。2.6.1 WCF概念WCF由于集合了几乎由.NET Framework所提供的通信方法, 因此学习曲线比较陡峭, 开发人员必须要针对各个部份的内涵做深入的了解, 才能够操控WCF来开发应用程序6。通信双

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服