前言

前段时间看完了一些大公司的发展历史和商业案例,感慨颇多。

无论是技术上的演进,还是工业的发展,多少企业都在这一往无前的车轮中滚滚向前或者碾压在下。

Sun 公司创造的 java 如今在语言界大红大紫,公司本身却被 Oracle 收购。

当年 Sun 公司就提出了,一些基础设施应该想水电煤一样被开发者使用。但是因为思想过于前卫,当年【云服务】的推进,并没有那么顺利。

反而是后期的 AWS,国内的阿里云后期青云直上。

本文就简单谈一谈云服务的模式区别。

写作动机

以前一直也知道这些概念,只是今天看到别人说 DaaS(Data as a Service),感觉这种概念还挺多,就简单整理下。

云也是分层的

任何一个在互联网上提供其服务的公司都可以叫做云计算公司。

其实云计算分几层的,分别是Infrastructure(基础设施)-as-a-Service,Platform(平台)-as-a-Service,Software(软件)-as-a-Service。

image

基础设施在最下端,平台在中间,软件在顶端。

别的一些“软”的层可以在这些层上面添加。

详细图

划分的更加详细的图如下:

image

IaaS

概念

Infrastructure-as-a-Service(基础设施即服务)

第一层叫做IaaS,有时候也叫做Hardware-as-a-Service,几年前如果你想在办公室或者公司的网站上运行一些企业应用,你需要去买服务器,或者别的高昂的硬件来控制本地应用,让你的业务运行起来。

但是现在有IaaS,你可以将硬件外包到别的地方去。IaaS公司会提供场外服务器,存储和网络硬件,你可以租用。节省了维护成本和办公场地,公司可以在任何时候利用这些硬件来运行其应用。

一些大的IaaS公司包括Amazon, Microsoft, VMWare, Rackspace和Red Hat。

不过这些公司又都有自己的专长,比如Amazon和微软给你提供的不只是IaaS,他们还会将其计算能力出租给你来host你的网站。

这个类似于阿里云的 ECS 服务器,当然阿里也提供了很多相关的服务。

IaaS交付

IaaS通过虚拟化技术为组织提供云计算基础架构,包括服务器、网络,操作系统和存储等。

这些云服务器通常通过仪表盘或API提供给客户端,IaaS客户端可以完全控制整个基础架构。

IaaS提供与传统数据中心相同的技术和功能,而无需对其进行物理上的维护或管理。

IaaS客户端仍然可以直接访问其服务器和存储,但它们都通过云中的“虚拟数据中心”。

与SaaS或PaaS相反,IaaS客户端负责管理应用程序、运行时、操作系统,中间件和数据等方面。

但是,IaaS的提供商管理服务器、硬盘驱动器、网络,虚拟化和存储。

一些提供商甚至在虚拟化层之外提供更多服务,例如数据库或消息队列。

IaaS 的优势

选择IaaS有很多好处,例如:

  • 是最灵活的云计算模型

  • 轻松实现存储、网络,服务器和处理能力的自动部署

  • 可以根据消耗量购买硬件

  • 使客户能够完全控制其基础架构

  • 可以根据需要购买资源

  • 高度可扩展

IaaS的特点

在考虑IaaS时要考虑的一些特征是:

  • 资源可作为服务提供

  • 费用因消费而异

  • 服务高度可扩展

  • 通常在单个硬件上包括多个用户

  • 为组织提供对基础架构的完全控制

  • 动态灵活

PaaS

概念

Platform-as-a-Service(平台即服务)

第二层就是所谓的PaaS,某些时候也叫做中间件。你公司所有的开发都可以在这一层进行,节省了时间和资源。

PaaS公司在网上提供各种开发和分发应用的解决方案,比如虚拟服务器和操作系统。这节省了你在硬件上的费用,也让分散的工作室之间的合作变得更加容易。网页应用管理,应用设计,应用虚拟主机,存储,安全以及应用开发协作工具等。

一些大的PaaS提供者有Google App Engine,Microsoft Azure,Force.com,Heroku,Engine Yard。

最近兴起的公司有AppFog, Mendix 和 Standing Cloud

PaaS 的交付

PaaS的交付模式类似于SaaS,除了通过互联网提供软件,PaaS提供了一个软件创建平台。

该平台通过Web提供,使开发人员可以自由地专注于创建软件,同时不必担心操作系统、软件更新,存储或基础架构。

PaaS允许企业使用特殊的软件组件设计和创建内置于PaaS中的应用程序。

由于具有某些云特性,这些应用程序或中间件具有可扩展性和高可用性。

PaaS 优势

无论您的公司规模如何,使用PaaS都有很多优势:

  • 使应用程序的开发和部署变得简单且经济高效

  • 可扩展

  • 高度可用

  • 使开发人员能够创建自定义应用程序,而无需维护软件

  • 大大减少了编码量

  • 自动化业务策略

  • 允许轻松迁移到混合模型

PaaS的特点

PaaS具有许多将其定义为云服务的特征,包括:

它基于虚拟化技术,这意味着随着业务的变化,资源可以轻松扩展或缩小

提供各种服务以协助开发,测试和部署应用程序

许多用户可以访问相同的开发应用程序

Web服务和数据库是集成的

SaaS

概念

Software-as-a-Service(软件即服务)

第三层也就是所谓SaaS。这一层是和你的生活每天接触的一层,大多是通过网页浏览器来接入。

任何一个远程服务器上的应用都可以通过网络来运行,就是SaaS了。

你消费的服务完全是从网页如Netflix, MOG, Google Apps, Box.net, Dropbox或者苹果的iCloud那里进入这些分类。

尽管这些网页服务是用作商务和娱乐或者两者都有,但这也算是云技术的一部分。

一些用作商务的SaaS应用包括Citrix的GoToMeeting,Cisco的WebEx,Salesforce的CRM,ADP,Workday和SuccessFactors。

这一块很多公司都在做,比如常见的 CRM 软件,ERP 软件等等。

感觉这部分的东西正常被大公司蚕食,很多小公司的生存空间越来越难。

SaaS交付

由于其网络传输模式,SaaS无需在每台计算机上下载和安装应用程序,而在每台计算机上下载和安装应用程序正是IT员工的噩梦。

通过SaaS,供应商可以管理所有潜在的技术问题,例如数据、中间件,服务器和存储,因此企业可以简化其维护和支持。

SaaS的优势

SaaS通过大大减少安装,管理和升级软件等繁琐任务所花费的时间和金钱,为员工和公司提供了许多好处。

这让技术人员可以花更多时间来处理组织内更紧迫的事情和问题。

SaaS的特点

有方面可以帮助您确定何时使用SaaS:

  • 在统一的地方管理

  • 托管在远程服务器上

  • 可通过互联网访问

  • 用户不负责硬件或软件更新

IaaS 和 PaaS 的对比

简单对比图表如下。

  PaaS IaaS
开发环境 完善 普通
支持的应用 有限 广
通用性 欠缺 稍好
可伸缩性 自动伸缩 手动伸缩
整合率和经济 高整合率,更经济 低整合率
计费和监管 精细 简单
学习难度 略难

DaaS

这里是今天新听到的一个概念。

概念

DaaS 是 Data as a Servvice 的缩写,意思是数据即服务。

云端公司负责建立全部的IT环境,收集用户需要的基础数据并且做数据分析,最后对分析结构或者算法提供编程接口,让数据成为服务。

DaaS是大数据时代的象征,能做DaaS服务的云端公司需要从数据积累、数据分析和数据交付三方面积累自身的核心竞争力。

对比 SaaS

SaaS 是使用者自己提供数据。

image

DaaS 将数据层都提供,用户直接使用即可。

image

个人收获

服务是最重要的吗?

我记得马云说过一句,对于用户而言,其实服务不重要,体验才重要。

其实虽然架构的演进,最终的目的还是为了提供给用户更好的体验。

商业上的收获

我们目前公司技术推广也遇到类似的问题,其实你的产品做得非常好,但是别人不见得会使用。

所以很多人不得不花大量的时间去推广,维护和改进。

一个公司的技术尚且如此,何况整个业界呢?

我觉得技术都应该做到 SaaS 这一层,然后尽可能的提升用户体验,提高用户粘性。

参考资料

IaaS,PaaS,SaaS 的区别

IaaS, PaaS和SaaS公司都做些什么

IAAS PASS SASS