基于DNA的分布式应用程序设计与实现

来源 :电脑知识与技术·学术交流 | 被引量 : 0次 | 上传用户:hfs191
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:Web技术正在迅速成为支持企业范围应用程序的优选平台,基于Windows DNA的三层结构体系框架分布式应用程序已经成为计算主流。在比较详尽地论述了三层结构框架的整体构建思想基础上,示例了分布式应用程序的设计和实现过程。
  关键词:Windows DNA;分布式应用程序;三层结构;XML Web services
  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)23-923-02
  Building Windows DNA Applications
  YUAN Ai-min
  (Mianyang Vocational and Technical College,Mianyang 621000,China)
  Abstract: The three-tier distributed applications based on Windows DNA have become the mainstream since the Web technology is becoming the prompt chooses platform of enterprise-wide application. Provides an introduction to the DNA architecture and takes you step-by-step through the development of an actual DNA application.
  Key words: Windows DNA; Distributed Application; Three-tier structure; XML Web services
  
  1 引言
  
  当Internet技术特别是Web技术逐渐成为计算主流时,业务计算的模型发生了巨大变化。这一变化的焦点是客户端/服务器模式,因而Web技术正在迅速成为支持企业范围应用程序的优选平台。
  可以认为Web模型是由各种信息和应用程序集合所组成的层松散地连接而成,而这些信息和应用程序又驻留在种类繁多的硬件平台上。Interne从一开始便提供一个可伸缩、可扩展和高度可用的公共信息传送平台。应用程序设计时可以使用 .NET平台开发、部署和支持分布式应用程序。既高度集成又灵活,此平台使开发人员能够生成端对端的业务解决方案,这些解决方案可以综合利用现有的体系结构和应用程序。
  微软把它的三层分布式应用模式体系结构称作为Microsoft Windows Distributed internetApplications Architecture(Windows分布式网间应用程序)即Windows DNA。是一种用于生成紧耦合分布式Web应用程序的体系结构。因为分布式应用程序开始要求更多的松耦合原则,Microsoft体系结构移动到.NET平台上。
  
  2 Windows DNA三层体系结构
  
  Windows DNA三层结构的企业应用总体方案,主要原则是将应用程序逻辑地分为表示层、业务逻辑层和数据服务层三个基本层。
  表示层为企业应用的客户端部分,它负责与用户进行交互。包括到应用程序的胖客户端接口或者瘦客户端接口。胖客户端通过直接使用Microsoft Win32 API或间接通过Windows 窗体,为操作系统的功能提供完全的编程接口,并广泛地使用组件。瘦客户端(Web浏览器)正迅速成为许多开发人员优先选择的接口。开发人员能够生成可在三个应用程序层的任何一个上执行的业务逻辑。利用ASP.NET Web应用程序和XML Web services,瘦客户端能够以可视形式为应用程序提供丰富、灵活和交互的用户界面。瘦客户端还具有在平台之间提供更大程度的可移植性的优点。
  业务逻辑层构成了企业应用的业务逻辑规则,它负责接受与传递表示层所需的信息,并与数据服务层进行数据交互。该层被分为应用程序服务器与服务,它们可用于支持客户端。可以使用.NET Framework编写Web应用程序以利用COM+服务、消息队列(MSMQ)、目录服务和安全性服务。应用程序服务反过来可以与数据访问层上的若干个数据服务进行交互。
  数据服务层为应用与后台数据库进行各种联系并保证数据的安全性、完整性、一致性。包括ADO.NET(通过使用脚本语言或编程语言提供对数据的简化编程访问)、OLEDB(由 Microsoft开发的公认的通用数据提供程序)、XML(用于指定数据结构的标记标准)。
  一个简单的分布式应用程序模型包含与中间层进行通信的客户端,中间层本身由应用程序服务器和包含业务逻辑的应用程序组成。应用程序反过来又与提供和存储数据的数据库进行通信。
  
  3 创建分布式应用程序
  
  生成一个基于Web的客户端,以显示SQL Server Pubs示例数据库中的Authors表,具有查找和编辑功能的应用程序。程序的三层结构如图1所示。
  3.1 分布式应用程序的创建过程
  开发分布式应用程序的方案是一次创建一层,多半是从数据层开始,然后移到中间层业务规则对象,最后创建用户界面层。在本例中,已经生成了数据,使用SQL Server中的Pubs 数据库。因此,本例将从创建业务对象,即XML Web services开始,然后生成用户界面即Web窗体页。
  3.2创建中间层业务对象
  创建的业务对象将在Web服务器上运行,提供分布式应用程序所需的性能和可伸缩性。另外,把业务对象实现为XML Web services,这样客户端可以使用标准Internet协议从任何平台与业务对象进行通信。
  XML Web services组件将保存数据连接和数据集定义。然后将添加XML Web services 方法以公开此数据集,这使其他应用程序能够查看和修改此数据集。最后公开方法GetAuthors 将从数据库返回数据集,公开方法UpdateAuthors将用用户的更改更新数据库。
  public authors1 GetAuthors()
  { authors1 authors = new authors1();
  sqlDataAdapter1.Fill(authors);
  return authors;}
  public authors1 UpdateAuthors(authors1 authorChanges)
  { if (authorChanges != null) {
  sqlDataAdapter1.Update(authorChanges);
  return authorChanges; }
  else { return null; }
  }
  3.3 创建用户界面
  对于Web客户端部分,通过Web窗体设计器创建一个与标准HTML 3.2浏览器兼容的Web页。在服务器上,Web窗体代码将调用XML Web services 以从数据库中检索包含作者信息的数据。
  private void Page_Load(object sender, System.EventArgs e)
  { AuthorsWebClient.localhost.AuthorsService ws =
  new AuthorsWebClient.localhost.AuthorsService();
  ws.Credentials = System.Net.CredentialCache.DefaultCredentials;
  AuthorData.Merge(ws.GetAuthors());
  if (! Page.IsPostBack) {
  DataGrid1.DataBind();
  }
  
  4 结束语
  
  通过Windows DNA的三层结构对应用程序进行分层,使用基于组件的编程技术,并充分利用.NET平台与 Microsoft Windows操作系统的功能,开发人员可以生成具有高度可伸缩性和灵活性的应用程序。
  
  参考文献:
  [1] Microsoft.面向.Net的Web应用程序设计[M].北京:高等教育出版社,2004.
  [2] APTECH.Net企业级应用开发—ASP.NET & Web Service[M].北京:科学技术文献出版社,2006.
  [3] 尚俊杰.ASP.NET程序设计[M].北京:清华大学出版社,2006.
其他文献
摘要:将TCP/IP协议移植到8位MCU上,同时在传输的文件中加入HTML代码,实现了一个WEBSERVER,并用其对一个液晶显示屏进行控制和监视。本系统用双绞线代替RS232、RS485、CAN等总线进行组网,可以广泛应用在各种嵌入式系统中。  关键词:TCP/IP;8051MCU;HTML  中图分类号:TP36文献标识码:A文章编号:1009-3044(2008)31-0863-04  Tr
期刊
摘要:研究和分析在当前中国电子商务运营体制,阐述BAB电子商务模式如何利用自身特点帮助企业避免电子商务过程中缺乏资源、信用难保的情况。在MVC设计模式下,建立BAB交易模型.通过J2EE组件化开发,进行资源运营系统的设计。解决中国电子商务的瓶颈问题——信誉问题、支付问题和物流问题。  关键词: BAB模式;电子商务;J2EE  中图分类号:TP311文献标识码:A文章编号:1009-3044(20
期刊
摘要:该文讨论了对称加密算法——数据加密标准(DES)和非对称加密算法——椭圆曲线密码算法(ECC)的数学模型及优缺点,结合两者优点,提出了一个基于DES和ECC的加密签名方案设计。该方案具有安全性好、速度快、效率高的优点,具有一定的实用性。  关键词:数据加密技术;数据签名;DES算法;ECC算法  中图分类号:TP311文献标识码:A 文章编号:1009-3044(2008)36-2617-0
期刊
摘要:介绍了Web资源类型和采集策略中的对采集质量有影响的因素。设计实现了一套基于正则表达式的Web资源采集系统,系统具有灵活的可扩展性和可配置性,重点介绍了采集系统结构和采集技术。  关键词:正则表达式;采集;Web资源  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)31-0888-02  To Detect Intranet Worms Using Networ
期刊
摘要:采用代码生成技术能大幅提高软件开发的质量和生产率,降低软件开发的风险。本文将介绍了基于C#的NHibernate代码生成器的设计与实现过程,并分析了常见的代码生成技术,同时结合实例说明核心源代码。  关键词:代码生成器;C#;NHibernate;XML  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)31-0908-04  Design and Impleme
期刊
摘要:该文首先介绍了Ad Hoc网络中常见的几种分簇算法以及各自的优缺点,这些分簇算法考虑的因素较为单一。而自适应按需加权(AOW)分簇算法利用加权的思想综合考虑多种因素,在实际应用中可以对影响因素进行取舍,也可以调整各因素的重要性,具有较强的通用性和灵活性。最后通过NS2仿真实验对几种分簇算法进行了比较分析,得出AOW分簇算法根据网络环境的变化动态的调整权值更能适应复杂的网络环境。  關键词:A
期刊
摘要:数据挖掘能为决策者提供许多重要的、极有价值的信息或知识,从而产生不可估量的效益。文章通过实例论述了Apriori算法进行数据挖掘应用的价值。  关键词:数据挖掘;关联规则;Apriori算法  中图分类号:TP301文献标识码:A文章编号:1009-3044(2008)23-862-03  The Discourse and Application about Association and
期刊
摘要:本文综合数字化城市交通建设方案及RFID技术,提出了一种基于RFID技术的出租车调度管理系统,阐述了系统的组成结构和工作原理,并详细介绍了系统的软硬件设计与实现。该系统对于合理地调度和管理出租车具有一定的实用性。  关键词:RFID技术;调度管理系统  中图分类号:TP315文献标识码:A文章编号:1009-3044(2008)31-0898-02  Taxi Dispatch and Ma
期刊
摘要:高速串口数据通讯,要求在接收数据采集设备发送大量数据的同时,完成对已接收到数据的实时存储。利用多线程技术,解决高速ARM在运行任务时应用程序的执行速度和串口传输数据速度不匹配,提高ARM对用户应用程序的响应速度,从而提高整个任务的执行速度和保证数据的完整性,提高系统整体性能。  关键词:ARM9;多线程;串行通信;嵌入式系统  中图分类号:TP311文献标识码:A文章编号:1009-3044
期刊
摘要:传统DSS基于业务系统数据库从而缺乏统一、充足的数据源支持,这严重影响了DSS的发展。数据仓库的出现解决了DSS应用的一大难题。该文以江西省社会保险DSS为应用实例,给出了社保数据仓库的具体设计与实现过程。  关键词:数据仓库;决策支持系统;社会保险  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)23-869-03  Design and Implementa
期刊