小议用rmi开发基于java的企业分布式应用

小议用rmi开发基于java的企业分布式应用

ID:22118420

大小:74.00 KB

页数:12页

时间:2018-10-27

小议用rmi开发基于java的企业分布式应用_第1页
小议用rmi开发基于java的企业分布式应用_第2页
小议用rmi开发基于java的企业分布式应用_第3页
小议用rmi开发基于java的企业分布式应用_第4页
小议用rmi开发基于java的企业分布式应用_第5页
资源描述:

《小议用rmi开发基于java的企业分布式应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、小议用RMI开发基于Java的企业分布式应用摘要由于Java具有跨平台、代码可移植性、平安高效等广泛而强大的功能,因而在开发X络分布式应用的时候,可以用它自身的机制实现分布式计算,一种基于Java的远程方法调用(RMI)为我们开发企业分布式应用提供了行之有效的解决方案。JavaRMI企业分布式应用1概述随着电力企业信息化建设的不断深进和发展,企业内部和企业和企业之间对信息、对数据的交换量大大增加,这些信息和数据越来越需要在不同的计算机X络间传送和交流。同时,由于各单位、各部分之间的现存的计算机X络硬件设

2、备和操纵系统千差万别,应用水平也参差不齐,因此,开发出跨平台、可移植、高效平安的X络分布式应用来服务于电力企业,就显得尤为重要。在当今的编程术语里,分布式计算已经成为很常见的词,它将企业的业务数据和程序分布在X络的不同物理位置上,通过调动X络上多台计算机的处理能力,发挥远程调用数据的功能。远程方法调用(RemoteMethodInvocation,RMI),可以在不同的Java虚拟机(JVM)之间实现对象和对象的通讯。JVM可以位于相同或不同计算机上,在多个JVM中,一个JVM可以调用存储在其它JVM的

3、对象的方法。本文主要先容RMI的特征,分析应用RMI进行企业分布式计算的原理,以及利用RMI实现基于Java的企业分布式应用的具体步骤。2远程方法调用(RMI)的特征2.1TCP编程的缺点由于Java编程语言设计之初就是面向对象和支持X络的,因此,基于对象的RMI机制已经内置在Java平台中。我们经常会在X络开发中使用TCP/IP编程,这样,自然而然地就会涉及到Socket(套接字)编程。但是,使用Socket编程需要大量重复编码,在复杂分布式操纵时显得非常麻烦,而且易于出错。因此,如何快速、高效、平安

4、、可扩展地进行X络分布式计算,是开发者们一贯追求和倡导的主题。直到RMI的出现,这种繁杂、低效的开发情况才有很大改观。2.2RMI编程的特征当我们利用对象序列化在X络上分配对象时,RMI提供了非Java平台无法匹敌的独特而强大的分布式计算模型,RMI主要有以下特征:?客户机可以向本地方法一样调用远程服务器上的方法;?可以根据接口指定客户机/服务器编程合约;?可以从服务器对象缺省二进制类文件,自动天生调动/反调动代码;?将Java编程模型扩展到机器边界(和Java虚拟机(JVM)边界之外),不需要任何非凡

5、语法;?还可以和一个远程方法调用中的数据同时传输行为(代码)。尽管RMI不是唯一的企业级远程对象访问方案,但它却是最轻易实现的。2.3RMI和CORBA作为分布式应用程序框架的规范,COBRA首当其冲,它是由对象治理组织(OMG)开发的。和CORBA不同的是,CORBA能够利用不同编程语言(例如C/C++、Basic等)开发实现分布式应用,而RMI是一种纯Java解决方案。在RMI中,程序的所有部分都由Java语言编写,这样,开发出来的程序完全符合Java规范,便于实现跨平台访问、扩展和移植。按照笔者所

6、在西北电力建设团体公司的情况看,服务器操纵系统主要有Linux和I基本体系结构简介RMI通过TCP/IP在内部使用Socket,象其名称暗示的那样,它能够帮助我们查找并执行远程对象的方法。RMI的目的是让位于不同JVM中的对象,在外观及行为上都像是本地的对象。通常,我们把调用这种远程对象的JVM,称为客户机;而把包括这种远程对象的JVM,称为服务器。尽管对一个远程对象的引用和获得对本地对象的引用有所不同,但我们可以把远程对象像本地对象一样使用。应用程序并不知道一个对象是远程的还是本地的。实际上,远程对象

7、上被调用的方法和本地对象上调用的方法,具有相同的语法结构。作为RMI的底层(会包含复杂的Socket操纵),它会自动截获方法调用,找到远程对象,然后处理远程请求。笔者以为,RMI设计的重要之处,就在于不但在设计上实现了远程访问功能,而且实现了设计的透明性。RMI的基本体系结构,概括起来说,由三个抽象层组成:3.1存根/框架层(Stubs/SkeletonsLayer)RMI为我们引进了两种非凡类型的对象,称为存根(Stub)和框架(Skeleton),它们组成了RMI的第一层。在远程通讯的时候,要利用T

8、CP/IP协议,做很多底层数据的打包传输。运用Java技术,我们先要把数据或者对象转换成字节流(bytestream),便于X络传输,这个过程叫汇集(marshaling);当收到远程传来的字节流后,我们要把流信息转换成对象或者数据,这个过程叫解读(unmarshaling),它和汇集恰好相反。Stub和Skeleton层位于实际应用程序之下,建立在Proxy(代理)设计方案之上。Stub类的功能是远程服务器实现的代理的角色,Stub是客户

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。