您好, 访客   登录/注册

浅析分布式计算相关技术

来源:用户上传      作者:

  摘要:分布式计算是研究如何利用网络上大量的闲置计算资源来解决大型计算问题的一种计算科学。文中介绍了分布式计算的工作原理,包括中间件技术、网格技术、移动Agent技术、Web Service等在内的几种典型的分布式计算技术。
  关键词:分布式计算;中间件;网格;移动Agent;Web Service
  中图分类号: TP393文献标识码:B文章编号:1009-3044(2008)20-30283-02
  
  Analysis on Client-server Computing’s some Technology
  MA Wei
  (Qinhuangdao Institute of Technology, Qinhuangdao066004,China)
  Abstract: Client-server computing is a kind of count science. It makes use of a great deal of leave unused count resource in network to solve big count problems. This paper introduced Client-server computing principle and a few typical technology , including Middleware, GRID technology, mobile Agent, web service and so on.
  Key words: Client-server computing; Middleware; GRID; mobile Agent; web Service
  
  1 概述
  
  分布式计算通过有效的调动网络上成千上万台计算机中CPU的闲置处理资源及存储资源,来组成一台虚拟的超级计算机,为超大规模的计算事务提供强大的计算能力。一些有名的分布式计算项目如今已经使用了分布于世界各地的大量志愿机的计算能力,如GIMPS、RC-72、United Devices、SETI@Home等,并不断有越来越多的志愿者了解并积极加入到这一行列中来。随着Internet的迅速发展和普及,分布式计算已成为网络发展的主流趋势。但是,现有的分布式计算技术都存在着一些没有解决的问题,从而也影响了分布式计算技术的使用。
  
  2 分布式计算技术的工作原理
  
  分布式网络体系结构是以C/S结构为基础的三层或多层分布式对象体系结构,通常由安装了超轻量软件代理的客户端系统和专用分布式计算管理服务器组成。在一个志愿机申请加入分布式计算的行列时,即会下载一个客户端软件到本地,在安装完毕后就成为此项分布式计算项目的客户端系统。专用服务器负责将大型计算问题划分成若干个小的计算片段,同时序探测可用客户端状况,当代理程序检测到某客户端处于空闲时,就会通知管理服务器将此客户端加入运算行列,然后发送计算请求。客户端系统接收到服务器发送的计算请求后,就会在机器的空闲时间里运行该程序进行计算,并且将计算结果返回给管理服务器。计算过程会以屏保程序或后台运行的方式执行,不会影响用户的正常操作,当客户端需要运行本地应用程序的时候,CPU的控制权会立即返回给本地用户, 而分布式计算的应用程序也会中止运行。如果客户端在超过一定时限仍未返回计算结果时,管理服务器会将该计算请求转给其它空闲客户端进行。
  
  3 几种典型的分布式计算技术
  
  3.1 中间件
  中间件是分布式系统中介于操作系统(或网络协议)与分布式应用之间的基础软件,它能够屏蔽环境底层的复杂性,使应用系统相对独立于计算机软硬件平台,帮助用户灵活、高效的开发和集成复杂的应用软件。基于中间件的分布式计算技术以中间件为桥梁,通过把数据转移到计算之处的计算方式,把网络系统的所有组件集成为一个连贯的可操作的异构系统,从而达到网络“透明”的目的。
  中间件发展极其迅速,是发展最快的软件产品,但在技术上还处于成长阶段,还缺乏完全统一的标准和模型,通常用C++语言以面向对象的技术来实现的,但是它的特性已超出面向对象的表达能力,目前趋向于用构件技术来实现。中间件产品的类别包括消息中间件(MOM :Message-Oriented Middleware)、数据库中间件(Database Middleware)、远程过程调用中间件(RPC :Remote Process Call)、对象请求代理中间件(ORB :Object Request Broker)和事务处理中间件(TP Monitor:Transaction Process Monitor)等。
  3.1.1 CORBA技术规范
  CORBA是 OMG 组织在 1991 年提出的公用对象请求代理程序结构技术规范,是最早出现的分布式对象计算模型,其核心是一套标准的语言、接口和协议,由OMG 接口描述语言( OMG Interface Definition Language, OMG IDL )、对象请求代理( Object Request Broker, ORB )和 IIOP 标准协议( Internet Inter-ORB Protocol )3个关键模块组成。 CORBA 的主要目标是实现分布异构环境中对象之间的透明请求调用,解决面向对象的异构应用之间的互操作问题,并提供分布式计算所需的一些其它服务。
  3.1.2 EJB技术规范
  EJB ( Enterprise Java Beans )是 J2EE 的核心技术之一,它是一种基于 Java 的服务器端的软件组件模型,包含了EJB服务器、EJB容器、Home接口、Remtoe接口等。EJB不局限于一种特定的操作系统,也不局限于任何一种特别的机构、服务器解决方案、中间件或通信协议,具有高度可移植性、平台独立性的特点,简化了分布式对象的开发、部署和访问,另外为了支持Java 语言在分布式计算环境中的使用,EJB 新标准中还引入了其它特性,使得Java 语言在基于CORBA 的体系结构中也能够很好地应用。
  3.1.3 DCOM技术规范
  DCOM (Distributed Compontent Object Model)是微软公司与其他厂商合作提出的一种分布组件对象模型, 是微软的COM (Component Object Model) 的一个分布式的扩充,在COM 技术的基础上,添加了处理底层的网络协议细节,主要是对位于Internet不同环境中的分布对象提供交互的标准。大多数运行着32位版本Windows 的个人电脑都或多或少地使用了内建的DCOM 支持,使得在Windows 环境下DCOM成为一个分布式对象标准的强有力的竞争者。
  3.2 网格技术
  网格( GRID )是通过Internet将分布在不同地理位置的计算机软硬件资源连结成为一个巨大的整体,从而提供一种高性能计算、管理及服务的能力。网格计算建立的是一种新型的Internet基础支撑结构,目标是将与Internet互联的计算机设施社会化。随着互连网的迅速发展和普及,网格技术发展迅速,网格计算无疑是分布式计算技术通向计算时代的一个非常重要的里程碑。

转载注明来源:https://www.xzbu.com/8/view-8707319.htm