WEB开发网
开发学院服务器云计算 现实中的开放源码云计算,第 2 部分: 针对云进行开... 阅读

现实中的开放源码云计算,第 2 部分: 针对云进行开发

 2010-02-04 00:00:00 来源:WEB开发网   
核心提示: 当针对 Google App Engine 创建一个应用程序时,仅需创建应用程序源代码以及需要用到的静态资源(比如图片),现实中的开放源码云计算,第 2 部分: 针对云进行开发(2),您无法控制应用服务器或数据访问,对此,水平伸缩会更容易),Ning 是另一个专用平台,有一个很好的解释:App

当针对 Google App Engine 创建一个应用程序时,仅需创建应用程序源代码以及需要用到的静态资源(比如图片)。您无法控制应用服务器或数据访问。对此,有一个很好的解释:App Engine 提供高度可伸缩的解决方案。不过,您需要理解 App Engine 所提供的基础架构。Google 提供了一个 API(Google Query Language)用来访问 App Engine 数据存储。这非常类似 SQL,这样一来,您就能轻松地开始使用数据存储了。这个数据存储不是一个关系数据库,倒更像是一个简单的文件系统。

对数据库的简单访问要比对数据库的查询(通过主键找到一个单一对象)慢一些。关系查询(例如表连接)是允许的,但要通过多个连续查询才能实现。这要比关系数据库上的连接慢得多,因此很难创建一个让数据存储超负荷的查询。

为了充分利用数据存储,我们通常建议对数据进行反常规处理,比如允许相关数据存储在一起并被一起检索。例如,看这样一个例子:我们需要存储用户信息,其中每个用户都可能具有多个电话号码。这是一个典型的一对多的关系,并且通常情况下,在数据库中,都会相应地建立一个用户表及一个电话号码表,其中的电话号码表包括一个指向用户表的外键。您完全可以按同样的方法用 Google 的数据存储建模,但将电话号码封装为用户的一部分(作为一个电话号码的列表或数组),效率会更高。对数据存储的单一查询就可以返回您所需要的任何东西。

Google App Engine 并不是使用这个模型的惟一云计算平台。Amazon 的平台 SimpleDB 也以同样的方式工作。您可以在 EC2 上运行 MySQL、Postgres 或任何其他数据库,但 SimpleDB 最简单易用,并可提供某些可伸缩性方面的优势(当不允许连接时,水平伸缩会更容易)。Ning 是另一个专用平台,也提供类似的访问模式。

上一页  1 2 3 4 5 6 7  下一页

Tags:现实 开放 源码

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接