PaaS重新定义软件

来源 :中国计算机报 | 被引量 : 0次 | 上传用户:gang_zai1314
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  如果说IaaS重新定义了硬件,那么PaaS则重新定义了软件。作为IaaS与SaaS中间的纽带,同时也作为一个全新的云应用开发平台,PaaS在云生态圈中的重要性不言而喻。PaaS打破了软件的使用者与开发者之间的壁垒,让不具备专业技术的人员也能开发适合自己的应用。PaaS与企业的实际应用相结合,将促进企业的敏捷化发展。
  企业敏捷化是经济全球化的结果。企业敏捷化还引发了敏捷式企业应用和敏捷软件的变革。传统的企业软件开发模式与生命周期管理已经不能适应快速变化的应用需求。敏捷化企业的软件应用必须灵活多变,并且允许用户参与应用的变更和实施。因此,可编程社会化的PaaS顺理成章地成为实现企业敏捷化的一种有效的技术手段。先进完备的PaaS是云计算技术的制高点。
  软件创新工场
  云计算的理论依据是分布式计算机网络操作系统。目前,云计算技术提供的资源服务主要包括三个层面,而这三个层面也同时代表了云计算的三个发展阶段。
  第一阶段,基础设施即服务(IaaS)。IaaS服务商通过标准网络将相对廉价的大量服务器组成集群,并通过网络提供一体化的计算和存储服务,其代表产品是Amazon AWS的EC2和S3。
  第二阶段,应用软件即服务(SaaS)。SaaS是在IaaS的基础上,将应用软件改造成多租户的模式,并直接投入IaaS运营,使一些既定的应用成为网络资源。SaaS产品的代表有Salesforce的CRM、Zoho的办公软件、Google的Gmail和Google Doc以及微软的Office 365。
  第三阶段,应用平台即服务(PaaS)。PaaS为云应用提供了一个应用开发的平台,因而形成了一种全新的软件开发和部署模式。PaaS的代表包括Google Apps、Salesforce的Force。
  目前,国内谈论最多的还是IaaS,谈论的焦点主要集中在云数据中心的建设上。但是很少有人谈及PaaS,而PaaS正是云计算发展的核心所在。PaaS出现后,软件的开发从工程师的桌面转移到了云上,这将彻底改变软件的生命周期。在云计算中,PaaS处于技术前沿的地位。云计算应用的未来将取决于PaaS的发展。可以这样说,IaaS改变了硬件服务器的定义,而PaaS将改变软件的定义。
  与IaaS和SaaS相比,PaaS代表着云端网络资源的最高境界。如果将云计算服务比作餐饮业,那么IaaS就是菜市场,SaaS是各种套餐(功能固定的一组应用),而PaaS则是自助大餐(可以无限扩展,自动获取甚至自动生成),可为用户提供个性化的按需配餐。
  PaaS平台提供各种模块组件,用户可以使用这些模块资源,按自身的需要随意组装出个性化的应用。从这个角度上说,PaaS就是一个由用户参与的创新软件工场,用户可在虚拟的工场里组装自己所需的应用并使用。
  从手工作坊到工业化生产
  PaaS是一种十分复杂的云计算技术,涉及计算机体系结构、操作系统、计算机网络、分布式计算、并发式处理、程序设计语言、编译系统、运行时间系统以及人机交互设计等学科。
  PaaS向上承载应用,向下依托IaaS,其构架中包含了应用开发环境、各种应用层资源的管理和调度以及与外界的各种接口。PaaS通常构建在IaaS之上。当今的SaaS通常与PaaS并行,直接搭建在IaaS之上。然而,由于PaaS提供了全套的应用开发环境,未来的SaaS也可以建立在PaaS之上。准确地说,SaaS未来应该直接并入PaaS,由PaaS衍生出各类云应用。
  作为应用平台,一个完备的PaaS应该支持软件全生命周期的开发、部署、运行、维护等诸多环节。因此,PaaS的架构里需要具备如下几个基本构成要素:应用的基础软件和中间件支撑(如数据库、Web服务、应用框架和消息服务),应用的部署和运行环境,应用的多租户支持与管理,云上可编程的开发环境,共享应用资源库和开发社区支持。
  PaaS的形态有四类:简单PaaS、多租户PaaS、云编程PaaS和社会化PaaS。
  当前,多数开源的和商业化的PaaS仅仅满足PaaS构成要素的第一条和第二条,处于简单PaaS的阶段,基本上只是简单地配备Tomcat、MySQL等应用服务器软件,并在虚拟化平台上进行部署和发行。例如,VMware的开源项目Cloud Foundry是一种托管环境,可以支持多种流行的编程框架,包括Spring for Java、Ruby on Rails、Sinatra for Ruby、Node.js以及基于JVM的框架(如Grails)。有了这个环境,开发者不需要花大量的精力来安装和配置这些内嵌的基础软件和中间件,只要专注于在笔记本电脑上开发应用程序,部署、使用即可。开发者可以通过命令行或API来管理这些应用。Google App Engine(GAE)也提供了类似的PaaS功能。开发者需要在笔记本电脑上下载并安装GAE的Eclipse Plugin,开发编译适用于GAE的Java应用。
  PaaS作为云应用平台,应该支持多租户。在多租户PaaS形态下,几乎所有的SaaS都具备多租户的能力,有的SaaS应用甚至还要支持多场址(Multi-site)。多租户PaaS与简单PaaS的根本区别在于,多个租户要能够共享基础软件和中间件,例如数据库。这就要求基础软件也必须变成云服务的模式。Google的GAE通过Google的云数据库BigTable和云文件系统GFS实现了多租户PaaS。
  PaaS应该是可编程的。可编程的衡量标志为,开发者是否可以在云上直接开发应用,并且进行云编程和应用搭建,而不是像Google GAE那样必须在笔记本电脑上编译好一个应用,再上传到PaaS里。云编程PaaS通常至少支持一种脚本语言,如Sun的Zembly通过Java Rhino支持Javascript。开发者借助Zembly,只需要一个浏览器就可以进行云编程。云编程不能理解为简单的远程编程。与在笔记本电脑上进行的本地编程不同,云编程通常有异常强大的云应用运行时间库(Runtime Library)作为支撑,而这种云应用库由丰富的云服务组成。因此,云编程从本质上说是一种云服务的再组过程(Mash up)。例如,在Zembly上只需几行代码,开发者就能将Zillow API提供的房地产信息通过Google Map API集成到Google地图上。   互联网的社会化并不局限于Facebook、YouTube、Twitter等社交网站和社会化媒体。如果把程序看成是一种特殊的社会化媒体内容,那么PaaS也可以积极地引入社会化元素,享用互联网社会化的成功经验。在社会化PaaS的平台上,开发者之间可以交流,共享代码或云服务的成品。开发者与用户之间也可以互动,以便定义需求和客户服务的内容。显然,社会化PaaS一旦引入电子商务元素,就可以成为一个云应用和服务模块的交易平台。
  在PaaS模式下,应用的开发、组装和配置都是在云中进行的。PaaS在不改变一行代码的情况下,就能改变应用的外观和行为。PaaS强调的是软件虚拟化。基于此,在运维系统中采用的PaaS借用了总厂与分厂的概念,总厂(部署在公有云上的大系统PaaS)生产各种各样的Widgets(微件,可按行业和应用分类,其种类及数量十分庞大),分厂(用户私有云中的运营环境)把组装好的各种Widgets部署下去并运营,即公有云PaaS提供大的开发环境,而私有云PaaS提供小巧的运行环境。由各种Widgets拼接生成的应用可以跨越私有云的边界跑来跑去,使得传统的手工作坊式的软件生产进化到工业化的生产。这将是软件产业的一次重大变革。
  PaaS推动企业敏捷化发展
  社会化云编程PaaS的深远意义在于普通用户也可以参与软件的开发,而软件开发不再仅仅局限于专业的开发者。利用云编程工具,不懂软件开发的用户可以自由配置出自己所需要的个性化云应用。因此可以这样说,PaaS重新定义了什么是软件。用户可以参与软件的开发,软件的使用者就是开发者。用户可以边应用边开发,软件也从有形逐渐走向无形,软件的生命周期变得更加模糊。通过PaaS平台重组再造的云应用,从空间上看是无边无界的,从时间上看是无始无终的。
  被PaaS重新定义之后的软件可以称之为敏捷软件(Agile Software)。敏捷软件没有明确的生命周期,总是不断地被改进、丰富、完善、淘汰,用户始终参与其中。敏捷软件将成为下面提到的企业敏捷化的一个重要实现手段。
  IT给企业带来的益处有两点:开源和节流。云计算中的IaaS和SaaS分别改变了硬件资源和软件资源的使用模式,从而降低了IT的成本。简单PaaS只是简化了软件的部署运行环节,并不创造新的价值。简单PaaS虽然也是一种能为企业省钱的技术,但其效益远不如IaaS。
  一个具有云编程能力的比较完备的PaaS是一种能为企业创造新价值的技术。如果说简单PaaS是酒店式公寓,旅客可以拎包入住,那么云编程和社会化的PaaS则是酒店的开发商和运营商。云编程和社会化的PaaS通过实现企业的敏捷化为企业创收。
  企业敏捷化(Business Agility)是经济全球化的必然趋势。IBM曾经调查了全球1000强企业中的250位首席执行官。他们认为,全球经济的变化及其复杂性和不确定性对企业来说既是挑战,也是新的发展机遇。IBM总结出企业敏捷化的三个动因:客户的期望值不断提高,要求企业具有可见性(Visibility),并且能够迅速响应市场的不断变化;竞争对手和合作伙伴可以突然出现在世界的任何地方,威胁不再仅仅来自于大型企业,而商机和合作机会也变得无穷无尽;外界环境的快速变化以及新技术的发展要求企业具备更灵活的流程与系统,并允许机构中更多的员工参与企业的管理。
  传统的企业软件开发模式与生命周期管理模式已经不能适应今天云计算的应用需求。企业应用软件的方式也将发生巨大的改变。可编程社会化的PaaS有助于促进企业技术与应用的创新,增强企业竞争力。
  相关链接
  PaaS的发展历程
  2000年,Google将云计算提升到了应用的层面,此举对云计算产生了深刻的影响。Google贡献了三大技术:云端文件系统GFS、BigTable(非关系数据模型大数据库)和MapReduce(一种云计算的编程模式)。依托这三大技术,Google在2008年4月推出App Engine,打造了Google的PaaS。App Engine是一个依附于Google应用的多租户PaaS。
  2007年5月,Facebook推出FB平台,把一种混合式PaaS——Social Operating System对外开放,并鼓励第三方将应用放到Facebook上。FB平台是多租户PaaS,并且具备非常原始的可编程能力(通过FBML和FQL)。尽管FB平台的技术相对单薄,对开发人员有诸多限制,但是由于Facebook的巨大影响力和平台的开放性,FB平台还是在短短时间内吸引了大量应用,尤其是社会化游戏,从而极大地推动了开放式PaaS平台模式的发展。Facebook FB平台是真正意义上的PaaS鼻祖。
  云编程PaaS兴起于Web 2.0后期的Mash up浪潮。2007年2月,Yahoo Pipes问世,这是一个较早且较完备的PaaS。Yahoo Pipes使用视觉编程方式搭建应用,把Flickr、Google Maps、RSS之类的网络应用串接起来。与此同时,Sun的Zembly项目也在秘密进行中。码实信息科技创始人夏淳博士曾担任Zembly初创团队中的社会化构架师。他率先在Zembly中引入社会化编程理念。2008年,Zembly问世,它在当时是最先进的社会化云编程PaaS。开发人员在PaaS中按应用项目自然地形成社区,共同探讨、开发、分享云应用模块组件。遗憾的是,Zembly这种工具型PaaS在当时并没有一个实在的商业模式作为支撑,而其他大大小小的公司开发的各种工具型云编程PaaS也没有对市场产生比较积极的影响。今天,随着云计算在企业中的普及,云编程和社会化的PaaS一旦与具体的企业应用相结合,将对企业应用软件产生巨大而深远的影响。
其他文献
相比传统的纸质教科书,“Pad终端 电子教科书”对学生的吸引力更大,也更具有成本优势。  ——本报记者 王娟    苹果似乎又要在教育领域缔造一个神话,根据Global Equities Research的数据,在苹果上个月发布iBook 2的前三天,苹果iBook Store教科书的下载量达35万次。而其合作伙伴——出版巨头培生(Pearson)、麦格劳希尔(McGraw-Hill)和霍顿·马芬
“那时候我还觉得SAP是个小公司呢。”一位早年就从事SAP销售工作的IT业内人士对记者说。随着管理软件市场的不断扩大,自身持续的创新,通过自主研发和并购扩张产品线,SAP的影响力已经不容忽视。安睿博表示,86%的财富500强企业都在使用SAP产品,98%的全球最具价值品牌公司选择了SAP,SAP能够接触到全球3/4的交易。  SAP的影响力到底有多大,本届SAP中国商业同略会也可见一斑。据悉,今年
基于当前数据爆发式的增长态势,关于大数据现象的讨论甚嚣尘上。真实的情况究竟如何?我们或许能从一些分析师对2012年的预测和优先任务的分析中得到一些答案。   分析师的观点主要包括以下几个方面:2012年CIO面临的首要任务就是“分析和商务智能”;大数据机会将在2012年变成现实;大数据已经出现;基于Hadoop的大数据解决方案将与传统企业数据仓库产品相交汇;2012年,大数据意味着应用。  
2012年中国煤炭行业信息化领军企业  北京天大天科科技发展有限公司自2002年开始投身煤炭行业信息化建设。目前,公司已在全国拥有4家分公司、18个办事处,辐射全国大部分省市县3000多家煤矿企业。公司已通过ISO9001质量认证和CMMI3级软件企业认证,获得国家系统集成二级资质及安防一级资质,并拥有59项自主研发的煤炭行业软件著作权。  煤矿事故带来巨大经济损失,并严重危害煤矿工人的生命安全。
于刚是戴尔负责采购的前副总裁,刘峻岭是戴尔中国区前总经理。谁也没有想到,这样两个人选择的创业项目是电子商务,并且用短短三年时间,就让1号店进入了国内B2C电子商务企业前五名的行列。  “销售额平均每个月增长28%,这个数字让我们自己都觉得很恐怖。”1号店董事长于刚表示,1号店于2008年7月11日上线,当年销售达到471万元,2009年销售收入增长到4600万元,2010年销售收入则激增到8.05
2013年10月28日,中国电信集团完成了首批虚拟运营商的甄选工作。几乎与此同时,中国联通也初步筛选出14家企业,而中国移动尚未正式发布审核结果。在这些通过初步审核的企业中,部分企业是零售渠道商,部分企业从事增值业务等。2013年,工业和信息化部《移动通信转售业务试点方案(意见征求稿)》发布,随着基础电信业与互联网业的逐渐融合,传统的语音业务下滑趋势无法避免,中国电信市场“移动业务号码转售业务”在
虽然有多一半的展区的产品与苹果的各种周边设备相关,即将上映的电影《乔布斯》主人公的扮演者、好莱坞影星阿什顿·库彻(Ashton Kutcher)也现身展览会现场,但如果你仍然只把一年一度的数字世界亚洲博览会(Macworld|iWorld)当成“果粉”的聚会,那你必然会错过很多有魔力的创新产品,以及论坛中很多新鲜的观点。  数字世界亚洲博览会的主办方试图让这个博览会不只局限于与苹果及其周边设备有关
2013年可以说是智能多屏互动普及化应用元年。  谷歌曾尝试推出社交流媒体播放器Nexus Q(目前该产品已经撤出市场),三星独家研发并推出的Allshare Cast无线传输技术……都将多屏互动的概念落实在了现实生活中。移动互联网的深度普及让很多人不再满足于只用电视在家观看节目。因此,从2013年年初开始,国内众多企业都开始尝试在智能电视、手机、PC端实现多屏互动技术。  优酷土豆集团作为较早实
本报讯 近日,博通和腾达共同宣布在中国零售市场推出9款全新的无线互连产品,其中包括5款双频路由器、3款单频路由器和一款Wi-Fi Home Plug AV(PLC)扩展器。同时,两公司还将继续扩展双方的合作关系,共同在中国市场推出802.11ac/5GB Wi-Fi新品。5GB Wi-Fi是移动及视频时代所需的新一代Wi-Fi标准。博通的5GB Wi-Fi技术扩大了家庭无线网络的覆盖范围,使消费者
在计算平台上,CPU和GPU的融合早已不是新鲜事,AMD更是对其主导的异构系统架构(HSA)寄予厚望。但HSA的梦想能否照进现实呢?  继多核架构后,异构计算被广泛认为是提升处理器性能的最有效方法。开发者和软件公司通过异构编程能够实现以往CPU无法实现的处理效果,甚至扩展至全新的领域,并带来全新的用户体验,如人脸识别、高清图像防抖处理等。  AMD的做法正是将这套体系结构以一种规范的方式公开,通过