- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 实例分析:全局计算引擎 主要内容 简介 基于Web的全局计算 不用CGI的原因 客户/服务器模式 安全问题 实现细节 其他问题 小结 6-1 简介 World Wide Web,或其简称Web,对于它的设计目的——作为基于网络的超媒体信息系统提供服务来说,是非常成功的。创建Web文档的简单及Web导航的方便已成为World Wide Web成功后的一些关键思想。 6-2 基于Web的全局计算 需要全局计算的原因 需要基于Web计算的原因 需考虑的问题 6-2-1 需要全局计算的原因 Naval Postgraduate School的Ted Lewis主张: “在下一个10 0002年,并行的局限性看起来阻碍了处理器性能的更进一步发展。但是,又有人提出了非对等的、全局分布的、并行的百万级计算机(Megacomputer)。这样的计算机已经以异步的形式出现在Internet上,但是它们还没有完全发挥它们的作用。”(“The Next 10 0002 Years:Part ⅠⅡ”,Communications of the ACM,April 1996)。 在计算密集的程序中,总是需要更强大的计算能力和更好的性能。在这种情况下,拥有一个全局计算引擎将解决很多与性能、容错性以及有限的资源相关的问题。该系统的一个最主要的优点是,它可以利用Internet上许多空闲(或更快)的机器,去尽可能地解决那些大而且复杂的问题。 6-2-2 需要基于Web计算的原因 首先,Web的巨大成功使用户通过包含计算引擎,能够有机会扩展它的概念,这样就扩展了它的服务。 其次,用户经验熟悉了Web、Web界面以及如何使用Web,这样就提供给了他们一个经验熟悉了的界面,它使系统更为通用。 6-2-3 需考虑的问题 调度 在当前可用的计算资源具有高需求的情况下,一个能够管理和分配请求的调度机制是必须的。 安全 安全是每一个分布式计算系统中都要考虑的主要问题。对于一个全局计算引擎,客户能够上载代码到远程机器,并在那里执行,这本身就存在安全隐患,需要予以考虑。例如,一些客户的代码很可能包含恶意的指令,如从计算引擎机器的文件系统中删除文件。为了避免这类问题,就需要设计和实现一个安全策略,以保护计算引擎的文件系统。Java通过提供一个定制的安全管理器,为实现安全策略提供了一个好的方法 。 6-3 不用CGI的原因 优点 缺点 一个使用CGI的简单计算引擎 6-3-1 优点 简单 使用CGI文件上载的最主要优点就是系统实现简单,在这个系统中,只需要一个CGI脚本去处理上载文件,并收集输出。 易使用 从用户的角度来看,这个特点就是指向 – 单击。当用户被以HTML表格显示时,他只需单击一个按钮,从本地磁盘调出一个对话框。在此,他即可选择要上载到远程执行的文件。 6-3-2 缺点 不兼容 对于用户来说,有许多浏览器可用。但是,所有的浏览器之间并不完全兼容,因为它们并不都实现同样的功能。 空间低效 上载整个文件的到运行服务程序的机器,对于带宽来说是一种浪费。另外,文件必须存储在服务器上,这样就占据了有限的空间。 不便 如果客户程序由多个文件组成,那么客户就需要上载所有的文件到服务器。 有限的输入/输出 CGI是为基于表格的信息处理而开发的。一旦用户填满了表格并提交它,在用户和脚本解释表格之间就没有什么交互。但是,在例子中,当一个程序运行时,它有可能需要用户的输入,所以一定的交互是必须的。当使用CGI去实现实时计算时,I/O的限制将成为一个问题。 6-4 客户/服务器模式 客户/服务器模式 为了使系统的效率更高,客户不应该将所有程序文件上载到运行服务程序的机器。在装载的动态代码的帮助下,客户发送一个URL,以指明要执行代码的位置。服务器程序根据URL依次取回代码,并动态装载。一旦代码被成功动态装载,服务器就将产生结果,并将其返回给客户。通过类装载器动态代码是Java中内建的非常灵巧的功能之一。 使用动态代码装载实现全局计算引擎,除了需要Web服务器进程外,还需要另一个服务器进程和一个客户应用程序。客户程序可以是以下两者之一:一个动态applet或一个CGI脚本,Web浏览器从服务器调用该CGI脚本,以为用户产生一个要填充的表格。另一方面,服务器程序,实际即计算引擎本身,负责处理客户的请求,执行程序,并将结果返回给客户。 6-5 安全问题 在计算引擎的主机中读文件或写文件。 从计算引擎的主机中删除文件。 执行系统命令,如rm或del。 创建、列表文件或目录。 使计算引擎退出。 装载一个新安全管理器。 装载一个新的类装载器。 6-6 实现细节 类装载器 安全策略 计算引擎 命令行客户程序 6-6-1 类装载器
您可能关注的文档
- 新Java程序设计 教学课件 彭正文 卢昕 第10章 AWT组件.ppt
- 新Java程序设计 教学课件 彭正文 卢昕 第11章 Swing组件.ppt
- 新Java程序设计 教学课件 彭正文 卢昕 第12章多线程.ppt
- 新Java程序设计 教学课件 彭正文 卢昕 第13章.ppt
- 新Java程序设计 教学课件 彭正文 卢昕 第14章.ppt
- 新Java程序设计 教学课件 彭正文 卢昕 第15章 Java与数据库编程.ppt
- 新Java程序设计 教学课件 孙燕 等 1.ppt
- 新Java程序设计 教学课件 孙燕 等 2.ppt
- 新Java程序设计 教学课件 孙燕 等 3.ppt
- 新Java程序设计 教学课件 孙燕 等 4.ppt
文档评论(0)