第三章 开发云服务(3)

这种类型的Web API使得用户能够利用因特网上共享的功能,而不是提供自己的完整的应用程序。这种做法的最终结果是一个定制的、基于web的应用程序,该程序的大部分由第三方提供,因而减轻了传统应用程序在开发和带宽方面的需求。

一个不错的web服务的例子就是谷歌地图API用户所创造的“整合应用”。利用这些定制的应用程序,供应给地图的数据由开发者提供,而创造地图本身的引擎则由谷歌提供。开发者无需编写代码或提供地图应用,他所要做的一切就是连接到谷歌的Web API。

正如你可能猜测的那样,Web服务的优点包括更快的(和更低成本的)应用开发,更精简的应用和较少的存储和带宽需求。

实际上,web服务使得开发者每次开发新应用的时候不必重复开发相同的功能。利用来自web服务提供商的代码,他们在开发自己的应用的时候更容易成功。

按需计算

顾名思义,按需(on-demand)计算将计算机资源(处理能力,存储等)打包成类似公共设施的可计量的服务。在这一模式中,客户只需为他们所需的处理能力和存储支付费用。

注意

按需计算也称为效用(utility)计算。

那些具有很大的需求高峰并伴有低得多的正常使用期的公司特别受益于效用计算。当然,该公司需要为高峰使用支付更多,但是,当高峰结束,正常使用模式恢复时,他们的帐单会迅速下降。

按需计算服务的客户端基本上将这些服务作为异地虚拟服务器来使用。无需投资自己的物理基础设施,公司与云服务提供商之间执行现用现付的方案。

按需计算本身并不是一个新概念,但它因云计算而获得新的生命。在过去的岁月里,按需计算由一台服务器通过某种分时方式而提供。今天,服务基于大型的计算机网格,它作为一个独立的云运行。

注意

现今提供按需计算和存储的公司包括亚马逊,IBM,Sun和其他公司。

了解云服务开发服务和工具

正如你所知,云计算还处在发展的早期阶段。通过观察大量的小型和新兴的提供云开发工具的公司就能够看到这一点。在一个更加成熟的产业中,随着更大的企业登上舞台的中心,规模较小的厂商最终会倒在路边。

也就是说,许多公司,有大有小,都提供云服务的开发服务和工具。最基本的产品面向从零开发的应用程序,为其提供基于云的托管服务。功能更为齐全的产品包括开发工具和预先建立的应用程序,开发人员可以将其用作构造单元来构建自己独特的基于web的应用。

让我们回来从云服务开发的角度看一看谁在提供哪些服务。这是一个有趣的公司和服务的组合。

亚马逊

这是正确的,亚马逊,因特网上最大的零售商之一,也是一个主要的云开发服务供应商。按照如下的方式来考虑:亚马逊已经花了大量的时间和金钱设立了众多的服务器来服务其广受欢迎的网站,它正在将这些海量的硬件资源提供给所有开发者使用。

我们讨论中的这项服务称之为弹性计算云,亦称为EC2。这是一个商业web服务,它允许开发人员和公司租用亚马逊公司拥有的服务器云的能力,这一服务器云正是世界上最大的服务器农场之一。通过让客户请求指定数目的虚拟机,并在其上加载他们选择的任何应用,EC2使得可扩展的应用部署成为可能。因此,客户可以按需创建,启动和终止服务器实例,从而形成真正的“弹性”操作。