[此贴子已经被live41于2005-4-17 13:20:22编辑过]
RedStar81 于9/9/2003~13/9/2003 81_RedStar81@163.com TomHornson.student@www.sina.com.cn
首次修改时间:13/9/2003 个人文集:http://www.csdn.net/develop/author/netauthor/RedStar81/
内容索引
Part1.概要
一. 分布式技术概论
二. 几种优秀的分布式计算平台简介
三. 几种分布式对象计算技术简介
四. 几种分布式语言简介
Part2.实践
五. 分布式编程实践
1. ObjectSpace Voyager
2. DCOM
3. CORBA
4. WebServices
5. Sun RMI VS. dotNET Remoting
6. Linda和Sun JavaSpace ,IBM Tspace
7. JINI
8. Emerald VS. Dejay
9. Pjama
10. IBM Mobile Computing Interface : Aglets
六.综合应用分析
1. 利用多线程和分布对象计算技术模拟高性能并行计算
2. 利用Vdejay计算几何分形图
声明:
1。本人不是专门研究分布式的,完全出于兴趣写下这篇文章.希对分布式计算应用爱好者有所帮助。 2。水平有限,欢迎指正。 3。由于本文讲述内容较多,很多讲述不可能太细致。而且考虑到读者群的问题,理论性内容尽量的省略。 如果读者有兴趣,可参考列出的参考书籍和网络资源。
4。可任意的转载、不过请注明出处;不可用于商业用途。
Part1.概要
一、分布式技术概述
无疑,分布和并行理论和技术早已成为计算机科学理论研究基石之一.近几年,越来越多的研究人员投身其中.就分布来说,基于之,大量的新理论和技术涌现,熟为人知的 , 移动和智能计算 : AS/MAS/ 、分布对象计算模型:DCOM/CORBA/RMI/Remoting等(基本来说,这些对象模型是构建计算平台的基础)。分布式计算平台 : CORBA/JINI/WebServices/等。对象空间(元组空间)技术: JavaSpace/Tspace (也用来支持分布式计算平台的构建)。分布式语言:Emerald/Dejay等、对象持久化语言:PJama.分布式数据库系统、等等.事实上,不但如此,还出现了大量专门支持分布架构的专用网络:TMN(电信管理网)/TINA/主动网络技术等.
(注:至于上面的,分布式计算平台,分布式计算对象技术,对象空间技术等的分类完全出于个人的见识.还请有识之士指正.如DCOM,有些书籍称为分布式计算平台,当然你不能说是错的,然而我个人认为归入分布对象计算技术比较合理.因为它不如其它的如CORBA,JINI是一种基于分布对象技术的庞大的服务系统.MS的COM+倒是可以归入分布计算平台.然后这个COM+本人认为它的初衷又不仅仅是分布式,更关注企业级的资源统筹/管理/系统运行性能等,所以下面也没特意介绍COM+。)
20年来,分布计算经历了两条发展路线:理想的技术路线和现实的技术路线.理想的技术路线理念:部署分布式操作系统,全面管理系统中各自独立的计算机,呈现给用户单一的系统视图.20世纪80年代,学术界普遍追求这一目标,尽管产生了许多技术成果和试验系统,但是并没有被用户和市场接受.现实的技术路线理念:在网络上部署分布式计算环境(中间件的形式部署,这里可能MS的DCOM与系统的集成度较高),并且提供开发的工具和公共服务,支持分布式应用,实现资源的共享和协同工作.当前,人们所说的分布式计算技术通常指网络平台上开发,部署,管理,维护以资源共享和协同工作为主要应用目标的分布式应用系统.
表1 分布式计算技术发展的三个阶段(援引自<分布计算环境>)
|
第一代 (80年代~90年代初) |
第二代 (90年代) |
第三代 (2000以后) |
面向的主要问题 |
信息共享 |
异构环境下的应用互操作 |
智能化的协同工作 |
体系结构 |
经典的C/S计算模型 |
面向对象的多层C/S模型 |
自主的多Agent模型 |
关键技术特点 |
运用传统的计算概念 和设计(如过程调用 和文件) |
将面向对象的技术应用于分布式计算 |
面向Agent的拟人化的交互环境 |
成果 |
能够提供丰富的分布式系统服务,良好的分布式系统管理和典型的分布式应用 |
已经成为建立结成构架和软构建标准的核心技术 |
概念验证系统令人鼓舞,尚未达到广泛应用于协同工作的成熟程度. |
第一代技术,从当时广为流行的文件服务器等的应用,也可从84年,SyBase首创的C/S体系数据库系统应用和开发模型看出一些端倪.关于第三代,属于专业研究领域的东西,本人有时间,会给大家介绍并分析一些经典的可用于编程的Agent库.
这里我们主要讲述一下第二代:事实上,目前的大规模应用基本停留在第二代上,这就是,一般来说,成熟的应用往往远远落后技术研究热潮的道理.从体系结构到基本的编程技术的理念/实践技术无一例外(个人感受? J) .总体来说,第二代的核心是将分布在网络上的一切资源以对象的概念来组织。
那么,分布技术的优越性在哪里? 1.基于任意网络结构进行协作。 2.并行处理可以提高性能。(PS:这里,存在一个并行概念和分布概念的问题,一般来说,并行计算往往首先是分布计算,事实上,我们可以结合多线程技术和分布计算技术来模拟并行计算,来提高计算能力)。
1. 具有高度的可伸缩性。4.具有高度的可扩展性。5.通过资源共享提高系统的性价比。
待续:
二. 几种优秀的分布式计算平台简介
三. 几种分布式对象计算技术简介
四. 几种分布式语言简介
Part2.实践
五. 分布式编程实践
1. ObjectSpace Voyager
2. DCOM
3. CORBA
4. WebServices
5. Sun RMI VS. dotNET Remoting
6. Linda和Sun JavaSpace ,IBM Tspace
7. JINI
8. Emerald VS. Dejay
9. Pjama
10. IBM Mobile Computing Interface : Aglets
六.综合应用分析
1. 利用多线程和分布对象计算技术模拟高性能并行计算
2. 利用Vdejay计算几何分形图