云计算的概念是 Google 提出的。从用户的角度理解,云计算强调的是 IT 服务的交付和使用模式。在云计算环境下,这些 IT 服务通过网络 ( 通常是 internet) 以按需 (On Demand)、易扩展 (Extensibility) 的方式获得。
按照云计算平台提供的服务种类,划分出了云计算平台的三层架构,即:Infrastructure as a Service(IaaS),Platform as a Service (PaaS), 以及 Software as a Service (SaaS)。 IaaS 的代表如亚马逊的 Amazon Web services(AWS), PaaS 的代表如 Google App Engine(GAE), 以及 SaaS 的代表如 IBM Lotus Live。
云计算平台架构
一般来讲,云计算平台被解释为如下的架构,图 1 所示。
云计算平台架构
最下的一层是 IaaS,提供 CPU,网络,存储等基础硬件的云服务。在 IaaS 这一层,著名的云计算产品有 Amazon 的 S3(Simple Storage Service), 提供给用户云存储服务。
再上一层是 PaaS,提供类似于操作系统层次的服务与管理 ,比如 Google GAE,你可以把自己写 Java 应用 ( 或者是 Python) 丢在 Google 的 GAE 里运行,GAE 就像一个”云”操作系统,对你而言,不用关心你的程序在那台机器上运行。
最后一层是 SaaS,就是我们所熟悉的软件即服务。事实上 SaaS 的概念的出现要早于云计算,只不过云计算的出现让原来的 SaaS 找到了自己更加合理的位置。本质上,SaaS 的理念是:有别的传统的许可证付费方式 ( 比如购买 Windows Office),SaaS 强调按需使用付费。SaaS 著名的产品很多,比如 IBM 的 LotusLive,Salesforce.com 等。
目前对于到底什么是云计算,什么样的平台属于云计算平台,等等围绕云计算相关的问题,不同的软硬件厂商对此都有自己不同的理解,有着自己不同的定义。他们所提供的云计算平台也是千差万别。
谈到云计算,大家总会联想到这些方面的东西:比如说高伸缩性 (High Scalability) ,成本节约 (Cost Saving), 按需使用 (Use On Demand), 等等。
我们姑且不论云计算带来的这些纷繁多样的种种概念,如果仅仅从技术角度来讲,云计算本身并不是一个什么新奇的概念,可以理解为一种新型的 IT 服务交付使用方式,而传统的技术比如虚拟化、集群、网格等等都可以用来作为云计算平台的支撑技术。