Chinaunix首页 | 论坛 | 博客
  • 博客访问: 754423
  • 博文数量: 803
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 5015
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-28 10:29
文章分类

全部博文(803)

文章存档

2011年(1)

2008年(802)

我的朋友

分类:

2008-10-29 11:33:14


  网格计算是“下一项重要的技术”,本文的目的是全面概要地介绍几个关键概念。本文将许多网格计算概念与开发人员所知道的大量概念(如面向对象编程、XML 和 Web 服务)关联起来。作者提供了一个白皮书、文章和书籍的参考书目,您可以在其中找到有关网格计算的更多信息。
  首先出现的是大型机:当时在少数几家大公司和大学实验室中,只有像神父般深居简出的工程师们才使用这些巨大而笨重的计算设备。随后出现了桌面机器、迷你型和微型计算机,它们为日益增长的使用计算机的人群提供了在公司和家里进行计算的强大能力。
  然后出现了客户机 - 以及联网技术和,从而将所有这些机器都挂钩在一起,允许它们相互通信。紧接着出现了因特网,它使我们能够与地球上的任何连网机器进行通信并共享文件和数据。
  现在,我们正转向下一项重要的技术:网格计算,它与因特网一样具有很大的潜力来更改我们做生意的方法。您或许已经熟悉了如 Web 服务、XML 和面向对象编程之类的技术。网格计算与这些技术非常相似,只是概念有所不同。
  本文将向您演示这一新生技术如何借用过去的技术概念 — 对您来说,不用花很多时间就可以了解网格计算的发展与 Web 服务、XML 和其它几种类似技术的发展之间的相似之处。您还将发现网格服务及其所在的真正框架与面向对象编程是如此相似。
  
  1.网格计算是什么?
  有时候,告诉您网格计算不是什么会比较容易开始定义它。例如,它不是人工智能,不是某种高级连网技术。它也不是某种治愈所有的技术“疾病”的科幻万能药。
  如果您把因特网看作通信网络,那么网格计算就是计算网络:用于合用资产之间协调资源共享和问题解决的工具和。这些合用资产被称为虚拟组织。它们可以分布在世界各地;它们是异构的(有些是 PC,有些是,也许是有些大型机和超级计算机);在某种程度上是自主的(网格可能访问不同组织的资源);而且是临时的。
  虽然网格计算一直隐匿于理论和研究活动范围(过去十年一直是这样),但越来越多的公司正开始求助于它来解决顽固的现实问题。
  请考虑这样一种情况:大多数 IT 部门都被强迫实现低投入高产出。预算压缩了,资源“瘦身”了,并且不是缺乏有技术的人力资源就是这样的人要价颇高。更为糟糕的是,大多数公司管理者都知道他们有极为丰富的空闲计算能力。业界众所周知的是,大多数桌面机器仅使用其容量的 5% 到 10%,大多数服务器最多只不过使用 20%。于是,美国公司的许多富人不再考虑购买更多的设备来完成工作,这一点就不足为奇了。
  这些公司需要的不是更多的资源,而是更有效地使用现有的资源。它们需要一种方法来将所有这些空闲机器都联系起来形成一个潜在的劳动池、管理这些资源并提供对数字运算能力的、可靠的访问。想象一下,如果公司或组织能够在晚上使用其所有的空闲桌面 PC 来运行内存密集型和处理器密集型的任务,会怎么样呢?它们会完成得更好更快,可能更快地推向市场,同时削减其 IT 开支。
  网格计算正日益成为一种企业可以用来从 IT 资源“榨取”更多利润和生产力的可行技术 — 而且要由您 — 开发人员和管理员 — 来了解网格计算并将它应用于工作中。
  
  2.深入研究
  从开发人员的观点来看,网格是由一些虚拟组织通过使用一套公共组成的。这些协议允许网格用户和应用程序以、受控方式运行服务。
  正如前面说明的那样,虚拟组织可以是一个房间中的几台服务器或桌面 PC,也可以是分散于世界各地通过因特网连接的异类系统“大杂烩”。所有这些系统都能够一起工作,因为某些协议控制了连通性、资源分配和管理以及这些资源的协调。
  全球网格(Global Grid)论坛正在努力将这些协议组织在开放网格服务体系结构(Open Grid Services Architecture,OGSA)下,这个 OGSA 来自基于开放标准的 Web 服务领域。之所以称它为体系结构,是因为它主要描述和构建一组定义良好的接口,系统根据这些接口进行构建,所有接口都基于如 Web 服务描述语言(Web Services Description Language,WSDL)之类的开放标准。此外,OGSA 建立在从构建 Globus Toolkit — 一种很有价值的参考实现 — 中获得的经验之上。
  开放标准和协议导致了服务的构建,而服务是网格的核心。为了简单起见,服务允许用户在网格上做事。服务可以包括:
  
  信息查询
  
  网络带宽分配
  
  数据管理/抽取
  
  处理器请求
  
  管理数据会话
  
  平衡工作负载
  当网格专家谈到正在运行的个别服务(例如,信息查询)时,他们称之为服务实例(这种用法类似于面向对象编程中的类实例)。服务和服务实例可以是轻量级且短暂的,也可以是需要获得网格深入而全面的支持的长期任务。服务和服务实例可以是动态的或交互式的,也可以对它们进行批处理。它们可以在预定时间或任意时间运行。
  好的服务不只限于它们可以为网格用户做些什么,而是它们启用了虚拟化。基于可靠协议的一组好服务可以隐藏某些请求的复杂性 —可靠的虚拟化可以将计算转换成一种普遍存在的网格,这种网格更类似于我们当前的水电公共设施。
  考虑这种情况:当您将电器电源插头插入墙上的插座时,您不知道或者不关心电如何流入该电器,也不知道或不关心电来自何处。它只是在工作,您访问该电网格以执行任务(如烤面包或熨烫衣服)。在计算方面,设想有一天,仅当您需要查询工具时才从网格租借,而不必担心数据库、浏览器和操作系统。
  网格技术的支持者表示在计算能力方面将会出现同样的事情 — 但它完全是关于我们如何构建允许计算机在网格中进行交互的协议和服务的。
  “网格计算之父”Ian Foster 使用术语语义来描述 OGSA 定义服务实例的能力:如何创建并控制它以及如何与之通信等。术语“语义”的使用取自语言学和心理学,它明显指出网格计算不只是关于数据和处理器及任务的 —它是关于上下文和含义的。计算机编程环境中的语义不只是应用计算能力来处理数据并推出结果集。其真正的作用是把问题传给计算机(或网格),然后获取该问题的解决方案。
  
  3.难题
  如果您认为像网格计算那么复杂的任何事一定有与之相关的难题,那么您就对了。首先,网格必须能够快速确定可以使用与之相连的任何计算机上的哪些资源 — 更重要的是,网格不应该因缓慢或旧的系统而陷入困境。避免“最小公分母”问题在技术“待执行”列表上比较重要。
  另一个重要问题与网格技术明显无关,但仍将影响网格的成功部署:使应用程序在网格环境中工作。现在,大多数应用程序都在服务器或桌面环境中工作。一组处理器完成工作。在网格上,可以将工作分配给完成工作所需的那么多系统,每个系统都为该任务出一份力。然后,将结果组装起来并发回给请求的系统。
  一旦这些应用程序都被移植到网格环境中,您就不得不开始担心如何共享、分割、筛选、移动、保护和管理数据了。请求了数据的用户或应用程序必需是取回数据的唯一实体,而且该用户或应用程序必须可以被理解。
  安全性无疑是极其必要的 — 毕竟,您不会希望任何人都能访问网格资源。而且,将其系统添加到网格的那些人希望控制哪些人有权使用其资源以及何时使用。
  可靠性和性能也很重要 — 如果网格不能又快又好地执行任务,那么它的业务案例当然会减少。
  
  4.网格计算的现状
  如果您有这样的印象:网格计算就是 1993年的 Web,那么您就对了。目前有大量的地域正被映射。并正在制定一些坚固的实现基础。然而,大量的网格计算还有待去发现,许多小组正将它们的注意力转向新兴的开放标准。在许多方面,有关网格服务的讨论类似于二十世纪九十年代中期的因特网和 XML 标准的讨论。
【责编:admin】

--------------------next---------------------

阅读(431) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~