【转载】网络就是计算机(对java的评论)
1.为什么需要网络移动性个人计算机的快速发展,解决了多人共用同一台主机cpu时间的问题--->个人电脑孤岛模式(没有大型主机多用户共享数据的优势),随着网络普及--->出现了客户端/服务器模式--->发展为分布式处理模式。分布式处理模式综合了网络和处理器发展的优点,将进程放在多个处理器上执行,并运行进程间共享数据。但是分布式处理也带来了管理上的困难,与大型主机相比,多个终端上的版本控制问题也带来了挑战。--->java的出现带来了一种新的模式,使软件和数据同时传输成为可能,这样使软件升级维护变得简单。
2.一种新的模式处理器性能提高和价格下降--->个人电脑代替大型计算机网络速度提高和流量价格下降-->软件模式向具有网络移动性的分布式方向发展。最初,网络只能展示蚊子--->带宽增加,可以承载图片,网络实现了报纸和杂志的功能--->带宽增加,可以承载音频数据流,网络实现了收音机、电话功能--->可以承载视频数据量,网络实现电视功能---->理论上有足够的带宽,处理器就可以将代码发送到另一个处理器上执行,从整体来看,整个网络就是一台大型计算机。在一定程度上改变软件模式,不是彻底。可以使软件发布,更新变得容易。
3.Java提醒结构对移动性的支持平台无关性---可以在所有机器上执行安全性---放心的下载除此之外,java体系结构对移动性的支持主要体现在对传输时间的管理上:
1)java的class文件设计得很紧凑(每条指令只占一个字节,有例外)。
2) class是动态扩展和执行的,不必等到所有class下载完毕才开始执行。
3)动态链接和动态扩展4.对jar文件的支持,可以一次传输多个文件。
4)applet
5)JINI服务对象:网络移动对象的示例对象的网络移动性。由RMI和对象序列化技术作为基础。使得一个虚拟机上的对象可以引用另外一个虚拟机上的对象,调用那些远程对象的方法,打破虚拟机之间的界限,简化分布式程序的开发和部署。
JINI提供一个运行时基础结构,核心是查找服务。具体工作模式是,服务提供者第一进入网络后,执行“探索”服务,具体就是向一个公开的端口发送组播包(包含自己的IP和端口),方便查找服务和自己联系。查找服务监听公开端口,发现有新的服务后,如果确定和服务提供者联系,通过接收到的IP和端口建立TCP连接,向服务提供者发送一个服务注册器对象(使用RMI技术)。
服务提供者通过服务注册器对象注册自己的服务。查找服务负责保存所有的服务目录。客户机使用lookup查找服务,传递想要得到的服务模板,如果找到合适的服务,即可调用。
JINI体系的一个重要推论就是:1.在服务对象代理和远程服务对象之间采用的通讯协议客户是完全没有必要关心的。2.提升了分布式系统编程的级别,由网络协议级别提升到了对象接口级别。 3.接口和实现的分离的好处。