论坛 产品库 视频 专题 CIO俱乐部 Windows8 实验室 CMO俱乐部 案例

Google搜索引擎:迈向云计算的未来

发布时间:2008-04-25 11:26:00 来源:IT168 作者:changjiang
关键字:Google IT技术 ibm 评论 微软 新闻 云计算

  Google新发布的“网络应用引擎(App Engine)”能让开发者们利用Google那无与伦比的底层计算结构,进而将自己所研发出的网络应用服务完全“寄存”在Google之上。

  Google的这一举措,进一步加剧了“平台即服务(Platform-as-a-Service,PaaS)”这一新兴领域的激烈竞争态势。而诸如“Google网络应用引擎”和“亚马逊网络服务(Amazon Web Services,AWS)”这一类新兴PaaS产品,正在颠覆着整个互联网计算领域的游规则。

  我们每一个人,都在目睹这一场巨大的、根本性的变革——正如Nick Carr在自己的新书《巨大的转换(The Big Switch)》当中所揭示的那样,底层计算能力和数据存储的外包,将如当年大型电网公司通过庞大的输电线路“消灭了”无数小型独立发电设施一样,彻底改变整个互联网世界的未来。  

      一、 什么是Google App Engine?

  Google网络应用引擎(Google App Engine)是一款极具延展性和容错能力的互联网应用环境,能让第三方互联网开发者在Google的基础计算构架之上,运行自己所开发的互联网应用服务。

  毫无疑问,当今天我们谈到在“大规模网格存储(Big Table-type storage)”的基础之上构建互联网尺度的应用服务时,Google是当之无愧的王者。

  很显然,从很多方面看来,Google网络应用引擎都会与另一行业巨头亚马逊公司之前所推出的“亚马逊网络服务(AWS)”爆发激烈的竞争。但两个产品的实现方式还是有很大不同。

  亚马逊AWS网络服务由多个独立的产品组成,其中包括了用于数据存储的S3 storage、提供托管服务的EC2 hosting以及提供数据库服务的SimpleDB。网络开发者们可以选择购买其中的一款或多款服务,将其融入到自己的产品当中。

  而在Google网络应用引擎中,所有的类似服务都被捆绑整合在了一起,而开发者们只有“全是”或“全否”的选择。

  从更高的层面看来,Google网络应用引擎是由5大部分组成的:

  1.核心的,极具容错能力和延展性的应用服务环境。这个核心应用环境的“稳定性极高,即便是在高负载和大容量数据规模时也是这样”。该应用环境的一个关键部分是“沙盒(Sandbox)”,它能将你所开发的网络应用服务隔离保护在一个安全空间中,让其“能够独立于任何硬件构架、操作系统网络服务器的物理位置。”

  2.一个具备了代码库和模块的,专为Python编程语言所准备的运行环境。虽然现在这个运行框架还只支持Python语言,但实际上,Google App Engine的下层结构是独立于编程语言的。因此可以预见,在不久的未来将会有更多的编程语言得到支持。

  3.一个本地开发环境和软件开发工具包(SDK)。当你成功注册这项服务后,第一件要做的事情就是下载本地软件开发工具包。当成功安装之后,该SDK将会在你计算机上创建一个本地开发环境,以模拟Google网络应用引擎的运行环境。开发者们可以在这个模拟环境当中开发和调试自己的代码。

  4.用于应用服务管理、记录和监控的管理控制台。通过这个管理控制台,你可以知道自己的应用服务产品每一秒所吞吐的数据容量和消耗的CPU计算资源。

  5. “超大网格模式(BigTable)”的分布式数据存储服务。在Google App Engine中,数据的存储不再依靠传统意义上的关系数据库,而采用了能够“按需增长”的分布式数据存储。

  二、 Google App Engine的花费

  当看到上述这些如此诱人的特性之后,绝大多数开发者会提出第一个问题是:“这一切需要花多少钱呢?”

  答案是:“完全免费!”

  注册Google App Engine账户,和在此之上运行自己的网络应用服务都是完全免费的,只要你所消耗的资源低于:总共500MB的存储空间,每天2亿Megacycles的CPU计算资源,以及每天10GB的带宽资源。据Google推测,这样的标准意味着你可以在不花一分钱的情况,让自己的网站承载每月大约500万的页面访问量。

  而当你的事业发展起来,需求突破了上述限制之后,则可以付费向Google购买更多的额外资源。不要担心,在这个时候,Google所提出的报价绝对会是“极具市场竞争力的”!

  三、 拥抱Google App Engine的理由

  那么,作为互联网的初创公司或网络开发者们,应该拥抱Google App Engine吗?这样做又会有哪些优势呢?

  1.经济决定一切

  当你想在互联网上开创自己的事业,或是实现自己的伟大构想时,经济和成本,都是你所需要考虑的最重要因素。

  在这方面,Google App Engine所带来的优势是毋庸置疑的——因为它是完全免费的(至少在最初是这样的)!

  创业团队可以免费实现和测试自己的构想。并且,当不用再考虑硬件维护和构建底层基础构架之后,研发团队可以将更多的精力和资源都投注到实现和优化创意本身之上。这样一来会极大地提升工作效率,与之相应的,会节省你无数的时间、精力和资源。

  当你的产品得到了用户的广泛认可,事业开始飞速发展之后,你又可以用极低的价格从Google那里购买到更多资源,以支持自身的发展。

  由于Google本身极为恐怖的“规模效益”,你为获得单位计算能力和网络带宽而向Google所支付的费用,将远远低于你通过自己购买网络服务器和带宽来达到相同目的所支付的成本。并且购买多少,是完全取决于你产品现有的规模和需求的。“一分钱一分货”,这是最为经济理想的模式。

  2.无与伦比的延展性和可靠性

  当使用Google App Engine的时候,你所开发的网络应用服务是完全独立于下层的硬件构架、操作系统和网络服务器的物理位置的。这就意味着,你在只有100个用户时所编写的产品代码,在拥有一百万个用户之后同样还可以使用。并且,事实上,你完全可以不考虑用户数量和网站负载方面的问题,Google App Engine会按照实际需要及时提供相应的计算能力。而在以前,你需要投入无数的时间与资源,冒着巨大的风险,不断地扩充自己网站的硬件和软件基础,以应付不断上升的访问量。

  至于产品可靠性,当你将自己的网络应用构筑在Google App Engine的基础之上后,它将同其他Google官方所推出的网络应用服务一样,以分布式的方式,虚拟地运行在全世界无数强大的Google服务器之上。如果说有一天全世界所有的网络服务都会宕机的话,我相信最后“挂掉”的一定是Google!

  3.数据的可迁移性

  当用户在你的Google App Engine应用服务网站上注册的时候,你可以自行决定是使用Google帐户,还是自己编写相应的注册用户管理系统。

  而当你想要将这些“宝贵的”用户信息导出Google App Engine时,操作步骤也非常简便。

  这点数据上的自由和可迁移性,是非常重要的!

  4.便于被Google收购

  很多人可能已经想到了,当你在使用Google App Engine构建自己的网络应用时,其实已经将它与Google融为了一体。你在Google托管服务,你让Google来处理计算请求,你将数据存储在Google的GFS文件系统中……

  那么,当你获得成功之后,这样一个互联网产品更有可能被Google所收购!

  四、 拒绝Google App Engine的理由

  当然了,和任何事物一样,Google App Engine不会只有闪光的一面!

  下面就是几个你可能不会想把自己的事业和未来构筑在Google App Engine之上的理由:

  1.你真想完全被Google所掌控吗?

  你真的如此依赖Google吗?你真的想将自己严肃的事业构筑在这样一种与众不同的基础构建之上吗?如果今后你改变了注意,又该怎么办呢?还有其他什么选择吗?

  你真的想让Google掌控自己整个端对端的开发环境吗?这难道不正是我们曾经害怕微软的原因吗?

  2.缺乏选择的Google App Engine

  与竞争对手相比,现阶段的Google App Engine显然还缺乏足够的选择性。

  网络开发者们只能选择是将自己的产品完全构筑在Google App Engine的基础上,还是完全放弃掉这个平台,而不像使用亚马逊AWS时选购自己最为中意的部分服务。

  在产品研发上,现阶段的Google App Engine还只支持使用Python语言,这就限制了使用当今另外两大热门语言PHP和Ruby的开发人员加入其中。不过,这一情况很可能很快就会改善。

  3.也许并不那么可靠

  千万不要忘记了,Google App Engine还只处于封闭测试阶段。

  Google本身的技术能力和可靠性当然是毋庸置疑的,但是对于这样一个刚刚推出的,还处于早期测试阶段的应用服务来说,它很可能还会存在着许多潜在问题和风险。

  同样是拥有顶尖技术力量和硬件基础的亚马逊公司,当他们在2006年推出类似的亚马逊网络服务之后,也让自己的用户经历了很多过于频繁的宕机问题。

  (原文作者:Marshall Kirkpatrick,文章来源:ReadWriteWeb.com,点击查看原文)


比特微信账号
比特微信账号

微信扫一扫
关注Chinabyte

返回首页 长微博 返回顶部