PaaS是Platform-as-a-Service的缩写,意思是平台即服务。

Paas - 概述

计算机技术

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

  全称:(Platform as a service)

  中文: 平台即服务 PaaS的优势(1张)

  所谓PaaS实际上是指将软件研发的平台(计世资讯定义为业务基础平台)作为一种服务,以SaaS的模式提交给用户。因此,PaaS也是SaaS模式的一种应用。但是,PaaS的出现可以加快SaaS的发展,尤其是加快SaaS应用的开发速度。在2007年国内外SaaS厂商先后推出自己的PAAS平台。

  PAAS之所以能够推进SaaS的发展,主要在于它能够提供企业进行定制化研发的中间件平台,同时涵盖数据库和应用服务器等。PAAS可以提高在Web平台上利用的资源数量。例如,可通过远程Web服务使用数据即服务(Data-as-a-Service:数据即服务),还可以使用可视化的API,甚至像800app的PAAS平台还允许你混合并匹配适合你应用的其他平台。用户或者厂商基于PaaS平台可以快速开发自己所需要的应用和产品。同时,PaaS平台开发的应用能更好地搭建基于SOA架构的企业应用。

  此外,PAAS对于SaaS运营商来说,可以帮助他进行产品多元化和产品定制化。例如 Salesforce的PAAS平台让更多的ISV成为其平台的客户,从而开发出基于他们平台的多种SaaS应用,使其成为多元化软件服务供货商(Multi Application Vendor),而不再只是一家CRM随选服务提供商。而国内的SaaS厂商800app通过PAAS平台,改变了仅是CRM供应商的市场定位,实现了 BTO(Built to order:按订单生产),和在线交付流程。使用800app的PAAS开发平台,用户不再需要任何编程即可开发包括CRM、OA、HR、SCM、进销存管理等任何企业管理软件,而且不需要使用其他软件开发工具并立即在线运行。

  面向个人的EC站点(electronic commerce site)的巨头公司 Amazon,把最初为了自己公司的运营用的构筑起来的系统平台,进行出租,用户可以自由选择操作系统和中间软件,以这样的方式提供硬件以及软件平台作为服务,最初被海外以一些冒险事业的企业所使用。从2006年开始 [Amazon EC] [Amazon S3]开始作为服务推向市场。   还有现代软件业霸主同时又是次时代计算的先驱的Google,大家都知道在世界上构筑以及运行了非常多的数据中心。以搜索引擎以及新的广告模式而闻名。他们使用便宜的计算机和强有力的中间件,以及自己的技术装备出了世界上最强大的数据中心,以及超高性能的并行计算群。 2008年4月发表的PaaS服务[Google App Engine]和Amazon 的 EC2,S3,SimpleDB等服务拥有相似的功能。这些稳定的平台上同样搜索引擎,GMail等服务也在运行。同样以ASP~SaaS成功的Salesforce,2007年开始用于提供SaaS的系统基盘对外公开,用Force这个名称开始进入PaaS业务。他所提供的PaaS服务里采用Java类似的语言Apex以及Eclipse开发平台,整合的开发环境也作为服务进行提供(Development as a Service)。Google/Amazon/Salesforce这三个软件巨头非常的重视PaaS这种新的商业模式,Amazon的PaaS服务为了用户可以自由的组合服务提供了更多的自由度,Google的话提供了更多的服务使用户能够方便的使用,去掉了一些繁琐的作业。Google/Salesforce的PaaS不仅是基础硬件的提供开发环境的同样被提供属于真正的平台作为一种服务(PaaS)

Paas - APaaS和IPaaS

简单的说,PaaS平台就是指云环境中的应用基础设施服务,也可以说是中间件即服务。PaaS平台在云架构中位于中间层,其上层是SaaS,其下层是IaaS。在传统On-Premise部署方式下,应用基础设施即中间件的种类非常多, 有应用服务器,数据库,ESBs, BPM, Portal, 消息中间件,远程对象调用中间件等等。对于PaaS平台,Gartner把它们分为两类,一类是应用部署和运行平台APaaS(application platform as a service),另一类是集成平台IPaaS(integration as a service)。 人们经常说的PaaS平台基本上是指APaaS,如Force.com和Google App Engine。

Paas - 公有云PaaS平台和企业级PaaS平台

云计算起源于大型互联网企业。对于互联网企业,成本压力和指数级的业务增长压力使他们关注于物理资源的利用率和应用的可扩展性。在应用服务器这层,通过Cluster Session来实现水平扩展;在数据存储这层,采用基于BASE模型的NOSQL数据存储来实现扩展。目前互联网企业主导面向公众服务的公有云PaaS平台,如Google App Engine和Amazon Beanstalk。对于公有云PaaS平台,PaaS就是云环境下的应用部署平台。
(1)基于商业软件的部署方式:Application - Framework/Libs - Websphere/Weblogic + RMBMS
(2)基于开源软件的部署方式:Application - Frameworks/Libs - Tomcat/JBoss + RDBMS
(3)云环境下的部署方式:Application - Frameworks/Libs - PaaS(Goole App Engine, Amazon)
  这种情况下,PaaS实质上就是一个预先装好的Web Container和一组公共服务,如数据存储服务(不一定是关系型数据库)、消息队列、集中式session及cache等等。对于个人用户或者简单应用来说,公有云PaaS平台使得开发人员仅关注应用逻辑开发本身,不用把精力花费在基础实施和应用的扩展和维护上。
  所谓企业级PaaS平台,主要包含两类,一是大型企业内部的私有云PaaS平台,另一类是面向ISV厂商的PaaS平台。然而对于企业级PaaS平台,PaaS不仅仅是云环境下的应用部署平台。 抛开安全问题不讲,私有云PaaS平台和公有云PaaS有如下核心区别:
(1)复杂的多租户模型:对于公有云PaaS平台,其租户模型是 (用户-> 应用 -> 应用实例),一个用户可以部署多个应用,每个应用可以有多个运行时实例,应用实例共享资源池。对于一个大型企业,一个大部门可能是一个租户,大部门下面的子部门也是一个租户;或者一个SaaS应用系统的一个实例就是一个租户。对于租户的资源使用,大部门租户是共享资源池里面的资源,也可能某些关键租户需要独占一些资源以保证安全。
(2)已有应用的兼容:企业的历史应用都是基于关系型数据库的,某些PaaS平台不支持关系型数据存储,即使是简单的已有应用都无法迁移到PaaS平台上。
(3)复合应用的构建: 企业On-Premise应用在很长一段时间内都是要存在的,私有云PaaS平台要成为On-Premise和公有云之间的桥梁。私有云PaaS平台除了是应用部署平台外,还需要提供集成和方便构建复合应用的能力,就是Gartner所提的iPaaS能力。
    企业级PaaS平台不仅仅是应用部署平台,而且是复杂多租户环境和复杂应用环境下的共享基础设施平台,是On-Premise部署通往公有云部署的必经之路。
    CloudTao PaaS平台是国内第一个企业级PaaS平台,其构建原则是:
(1)开放、简单、一致、轻量的架构 - 构建平台的核心是标准,aPaaS的核心是应用运行时环境及数据存储服务,标准是Servlet和SQL,但PaaS平台需要的是 这两个标准的轻量级实现。
(2)细粒度的资源隔离 - 在多租户的实现方面,介于基于虚拟机的隔离与共享一切资源之间,在资源利用率、安全、可扩展性几个方面中取得平衡。
(3)真正的跨平台及分布式架构 - CloudTao只依赖于JVM,无单点故障,可实现水平线性扩展。
(4)对历史应用的兼容 - 已有应用无需改动或者极少改动即可迁移至PaaS平台,从而共享PaaS平台资源并可以容易的扩展。
    CloudTao PaaS平台的主要技术特性是:
(1)多层次的多租户实现 - 多层次的多租户能够满足不同的应用场景,能够满足各种不同的企业/ISV需求。
(2)支持不同类型的数据存储 - 支持关系型数据库及NOSQL数据存储。对于关系型数据库,能够实现轻量级多租户关系型数据库系统至传统关系型数据库的平滑迁移。
(3)开发SDK - 基于Maven的本地开发SDK,提供自定义插件方便开发人员部署和调试应用。
(4)统一监控及计量 - 监控应用的运行情况,JVM运行时信息,系统资源消耗,日志及HTTP请求处理统计等。

云计算之 PaaS详解的更多相关文章

  1. 云计算---OpenStack Neutron详解

    简介: neutron是openstack核心项目之一,提供云计算环境下的虚拟网络功能 OpenStack网络(neutron)管理OpenStack环境中所有虚拟网络基础设施(VNI),物理网络基础 ...

  2. [书目20140902]实战Windows Azure——微软云计算平台技术详解 --徐子岩

    目录第1章  云计算技术简介    1.1  云计算所要解决的问题    1.2  云计算平台的分类    1.3  微软云计算平台Windows Azure        1.3.1  高可用性   ...

  3. 云计算:Linux运维核心管理命令详解

    云计算:Linux运维核心管理命令详解 想做好运维工作,人先要学会勤快: 居安而思危,勤记而补拙,方可不断提高: 别人资料不论你用着再如何爽那也是别人的: 自己总结东西是你自身特有的一种思想与理念的展 ...

  4. OpenStack知识点详解

    一:云计算     一.起源 1. 云计算这个概念首次在2006年8月的搜索引擎会议上提出,成为了继互联网.计算机后信息时代的又一种革新(互联网第三次革命). 2. 云计算的核心是将资源协调在一起,使 ...

  5. java中的io系统详解 - ilibaba的专栏 - 博客频道 - CSDN.NET

    java中的io系统详解 - ilibaba的专栏 - 博客频道 - CSDN.NET 亲,“社区之星”已经一周岁了!      社区福利快来领取免费参加MDCC大会机会哦    Tag功能介绍—我们 ...

  6. ORACLE PL/SQL编程详解

    ORACLE PL/SQL编程详解 编程详解 SQL语言只是访问.操作数据库的语言,并不是一种具有流程控制的程序设计语言,而只有程序设计语言才能用于应用软件的开发.PL /SQL是一种高级数据库程序设 ...

  7. CentOS网络配置详解

    转载于CentOS中文站:http://www.centoscn.com/CentOS/2015/0507/5376.html一.配置文件详解 在RHEL或者CentOS等Redhat系的Linux系 ...

  8. 日志分析工具ELK配置详解

    日志分析工具ELK配置详解 一.ELK介绍 1.1 elasticsearch 1.1.1 elasticsearch介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分 ...

  9. SSH 概念及使用详解

    注意:转载请注明出处:http://www.programfish.com/blog/?p=124 SSH 基本概念 SSH 英文全称是secure shell,字面意思:安全的shell. SSH协 ...

随机推荐

  1. python语言中的数据类型之列表

    数据类型及内置方法 列表: list    可变类型,有序 用途:用来记录多个值(同属性) 定义方式:在[  ]内用逗号分隔开多个任意类型的值 l=['a','b','c'] #l=list(['a' ...

  2. Linux命令:chmod

    https://baijiahao.baidu.com/s?id=1616750933810368135&wfr=spider&for=pc

  3. 【387】Python format 格式化函数

    参考:Python format 格式化函数 # 保留小数点后两位 f'{3.1415926:.2f}' # 带符号保留小数点后两位 f'{3.1415926:+.2f}' f'{-1:+.2f}' ...

  4. Mysql数据库如何创建用户

    创建test用户,密码是1234. MySQL u root -p CREATE USER 'test'@'localhost'  IDENTIFIED BY '1234'; #本地登录 CREATE ...

  5. 最邻近算法(KNN)识别数字验证码

    应用场景   对于简单的数字型验证码的自动识别.前期已经完成的工作是通过切割将验证码图片切割成一个一个的单个数字的图片,并按照对应的数字表征类别进行分类(即哪些图片表示数字7,哪些表示8),将各种数字 ...

  6. SQL Server 数据库中的几个常见的临界值

    本文出处:http://www.cnblogs.com/wy123/p/6709520.html 1,SQL语句或者存储过程的最大长度(SQL字符串容量)是多少? 经常有人问,我的SQL语句是拼凑出来 ...

  7. semver 版本号命名法

    https://semver.org/lang/zh-CN/ 版本格式:主版本号.次版本号.修订号,版本号递增规则如下: 主版本号:当你做了不兼容的 API 修改, 次版本号:当你做了向下兼容的功能性 ...

  8. 论Ubuntu下的docker多难搭建

    慷慨一下: 上周四开始打算在Ubuntu系统下面熟悉操作一下docker,所以深知在本地的虚拟机上搭建一个docker非常的easy. 但是,要下载一个镜像,真是太难了.基本可以说是下载不了的.于是乎 ...

  9. 11.14java课堂测试

    源代码: import java.*; import java.util.*; import java.io.File; import java.io.FileInputStream; import ...

  10. War3编辑器

    [War3编辑器] 1.英雄在商店买东西叫“任意单位 出售物品”,英雄卖东西给商店叫“抵押物品”. 2.触发器中的一级窗口包含: 1)设置事件窗口. 2)设置条件窗口. 3)设置动作窗口. 3.二级设 ...