首页 > 云计算 > 正文

谁是开发者的梦中情人?PaaS与IaaS之争

2010-10-26 12:18:40  来源:it168

摘要:云计算主要有SaaS,PaaS和IaaS这三种服务模式。对普通用户而言,他们主要面对的是SaaS这种服务模式,但是对普通的开发者而言,云计算对他们而言,却有两种服务模式可供选择.
关键词: IaaS PaaS
前言

  云计算主要有SaaS,PaaS和IaaS这三种服务模式。对普通用户而言,他们主要面对的是SaaS这种服务模式,但是对普通的开发者而言,云计算对他们而言,却有两种服务模式可供选择,PaaS和IaaS,而且这两种模式有很多的不同,而且它们之间还存在一定程度的竞争,接下来将首先对这两种模式进行比较,之后将预测一下它们的未来,也就是那种模式将会更受到开发者的青睐。

  比较

  大家应该知道,PaaS的主要作用是将一个开发和运行平台作为服务提供给用户,而IaaS的主要作用是提供虚拟机或者其他资源作为服务提供给用户。下面将在七个方面对PaaS和IaaS两者进行比较:

  开发环境

  PaaS基本都会给开发者提供一整套包括IDE在内的开发和测试环境,而在IaaS方面用户主要还是沿用之前那套开发环境,虽然比较熟悉,但是因为之前那套开发环境在与云的整合方面比较欠缺,所以有时候会很不方便,比如通过PaaS提供的工具部署一个应用到云上,可能只需几下鼠标点击和十多秒即可完成,而在IaaS平台上部署应用,相对而言比较复杂,特别是在刚开始使用的时候。

  支持的应用

  因为IaaS主要是提供虚拟机,而且普通的虚拟机能支持多种基于X86架构的操作系统,包括Linux、OpenBSD和Windows等,所以IaaS支持的应用的范围是非常广泛的。但如果要让一个应用能跑在某个PaaS平台不是一件轻松的事,因为不仅需要确保这个应用是基于这个平台所支持的语言,而且也要确保这个应用只能调用这个平台所支持的API,如果这个应用调用了平台所不支持的API,那么就需要在部署之前,对这个应用进行修改。

  开放标准

  虽然很多IaaS平台都存在一定的私有功能,但是由于OVF等协议的存在,使得IaaS在跨平台和避免被供应商锁定这两面是稳步前进的。而PaaS平台的情况则不容乐观,因为不论是Google的App Engine,还是Salesforce的Force.com都存在一定的私有API。

  可伸缩性

  PaaS平台会自动调整资源来帮助运行于其上的应用更好地应对突发流量。而IaaS平台则常需要开发人员手动对资源进行调整才能应对。

  整合率和经济性

  PaaS平台整合率是非常高,比如PaaS的代表Google App Engine能在一台服务器上承载成千上万的应用,而普通的IaaS平台的整合率最多也不会超过100,而且普遍在10左右,使得IaaS的经济性不如PaaS。

  计费和监管

  因为PaaS平台在计费和监管这两方面不仅达到了IaaS平台所能企及的操作系统层面,比如,CPU内存的使用量等,而且还能做到应用层面,比如,应用的反应时间(Response Time)或者应用调用某个服务的次数等,这将提高计费和管理的精确性。

  学习难度

  对于那些熟悉类UNIX系统的程序员而言,能很快学习在IaaS的开发和管理应用的方式,虽然现在IaaS产品普遍对Windows开发环境没有很好的支持,而如果要学会PaaS上面开发则有可能需要学一门新的语言或者新的框架,所以IaaS学习难度更低。

  下面将通过一张表来总结一下上面的比较:

PaaS和IaaS之争
▲表1. PaaS和IaaS之间的比较

  未来的竞争

  在当今云计算环境当中,IaaS是非常主流的,无论是Amazon EC2还是Linode或者Joyent等,都占有一席之地,但是随着Google的App Engine,Salesforce的Force.com还是微软的Windows Azure等PaaS平台的推出,使得PaaS也开始崭露头角。谈到这两者的未来,特别是这两者之间的竞争关系,我个人认为,短期而言,因为IaaS模式在支持的应用和学习难度这两方面的优势,使得IaaS将会在短期之内会成为开发者的首选,但是从长期而言,如果PaaS能解决诸如通用性和支持的应用等方面的挑战,PaaS模式会因为其高整合率所带来经济性从而替代IaaS成为开发者的“新宠”。

  作者简介

  吴朱华,之前在IBM中国研究院参与过多个云计算产品的开发工作,现在专注于YunTable和YunEngine的研发工作,并即将发表《剖析云计算》一书,敬请期待,个人云计算博客:http://peopleyun.com/


第三十六届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:lyre

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。