PaaS的前景如何?CaaS了?


我看目前有好多讨论PaaS的话题,想跟大家讨论下PaaS的市场前景。国内新浪的SAE、百度BAE很早就有了PaaS的服务,但是看这几年的发展也是不尽如人意。国外的Heroku等,也是无法达到EC2的体量。有很多人认为,PaaS只适合小业务,业务规模变大了还是得用IaaS,或者自己的服务器。所以PaaS真的有前景么,真得是用户想要的么?我个人认为PaaS还是对用户限制太多,而IaaS又会让用户遇到管理部署问题。或者以后会有CaaS会是一条出路。
已邀请:

郭蕾 - InfoQ主编,关注容器技术的发展。

赞同来自: Antmanler 田浩浩 firelife justasabc elesant styshoo更多 »


这个问题非常好,我也经常思考这个问题,特别是当容器流行之后,很多人开始思考是CaaS好还是PaaS好。然后我也看到有很多的Docker创业公司开始用Docker做PaaS,所以我的倾向还是说市场其实是接受PaaS的。IaaS的大风算是过去了,如果说要从云计算层面去定义IaaS、PaaS、CaaS的话,我觉得很难。随着时代的发展,他们之间的界线会越来越小。我认为如果技术发展成熟,云计算发展成熟,那IaaS应该就只是大公司、有运维能力的公司去玩的东西。更多的中小型公司会转型使用PaaS,他们不需要有运维工程师,开发工程师只要使用容器(集装箱)与PaaS交互即可。他们为什么需要用那么重的IaaS?数据库调优、备份管理,PaaS完全可以做吗,这也为啥现在很多IaaS厂商都提供PaaS功能的原因。所以不是说PaaS不被接受,而是部分不被接受。

PaaS对用户限制太多,这要看白盒还是黑盒,反过来再说,不限制你,你要做什么去又?

CaaS的发展还早,CaaS要成熟,起码需要Docker之类的容器的生态圈先成熟,比如调度、编排、监控、资源管理,现在都还没定论。CaaS和PaaS会是说不清的关系,会越来越像。SAE、BAE发展不好,我不敢贸然评价,只是想问个问题:你看看他们的界面,你觉得那是个互联网时代的产品吗?

zhijin928 - 统一运维平台创业公司云霁科技创始人

赞同来自: 石海旭 shlallen wanghaitao -无夏之年-


我认为,IAAS、PAAS、SAAS三层的模型划分,主要是在云计算初期用来普及概念的。

到今天开始做真正的实施落地的时候,这个模型已经不能用于指导实践了。

现阶段,只有IAAS的边界和含义是清晰的,大部分企业做的也是IAAS层的工作。

在IAAS层之上,应该做做成什么样,技术上有很多流派,docker之类的概念也比较火,但是大家反而不知道该去做什么。

技术是为业务服务的,真正的技术创新应该是从业务角度出发的,企业需要的是通过IT的进化实现“业务的敏捷”

现在主流的厂商做法是:“IAAS +自动化”,未来的一定是实现“IT与业务的融合”,实现“去IT化”。

所以,我觉得概念和名次不重要,关键是了解IAAS、PAAS背后的本质,然后去实现。

UlricQin

赞同来自: DockOne todaygood


PaaS的前景,或者说PaaS以后要用在哪些方向,嗯,这个问题很大,仁者见仁智者见智,不过真正玩过的人必然都思考过这个问题。

我们首先要了解什么是PaaS,我没有找到一些比较贴切的定义,也不懂怎么下定义,拿一些产品实践说事,姑且把Heroku这样的平台、CloudFoundry这样的平台称之为PaaS平台,DINP 其实就是吸取了他们的经验然后基于Docker构建的。

那我的结论如下,纯属个人瞎掰:
  • 无状态的web服务最适合部署在PaaS上
  • 后端rpc模块仍要部署在IaaS上,稍大一点的公司需要一套独享的PaaS,部署在PaaS上的web服务与部署在IaaS上的rpc服务通信交互
  • PaaS只是一个部署标准规范,如果我们已经有了一个好用的部署工具,已经形成了一套自己内部的规范,没必要再去上PaaS
  • 如果公司只是一个web服务,部署在公有PaaS上最省事(至于现在的公有PaaS有好用的么?这个不做评价)
  • 如果公司之前已经有产品跑在IaaS上了,可以迁移到PaaS的,少,可以迁又想迁的,更少


举个例子,比如公司的产品有个web服务,有android客户端和iOS客户端,有用到数据库、MQ,还有两个golang写的后端模块,相互协作提供rpc接口。很典型吧?可以用Heroku或者CloudFoundry么?不可以,因为golang写的两个后端模块是个麻烦事。可以用IaaS么?那自然没问题。这样的公司多么?多!

总结一下:个人感觉PaaS来跑一些web服务还是不错的,PaaS的思路也挺好,但是应用范围比较单一,主要适合无状态web服务,一旦服务关联关系复杂一些,PaaS就cover不住了。用PaaS的思路在IaaS上构建适合自己的发布平台是最好的出路

william - cSphere CEO

赞同来自: 石海旭 DockOne


PaaS是一套开发、运维的规范和流程,可以通过一些辅助工具将规范、流程沉淀下来。

我在几个月前写过一篇<<PaaS不是银弹>>

个人认为如果在业务环境实施了容器,再配合上ci/cd,那么对PaaS的需求确实很小。
但如果研发人员对docker不熟悉,那么基于docker的PaaS还是可以解决很多问题的。

cSphere是面向容器的运行管理平台,最终是要解决这些问题。

石海旭

赞同来自: 小璐 shlallen


个人认为

  1. 同意楼上的"IaaS,PaaS、CaaS主要是在云计算初期用来普及概念" .所谓格物致知么。 当你知道是怎么回事之后,叫什么名字也许就不那么关键了。

  2. Docker或者说容器其实还是技术,是载体。套用IaaS、PaaS、SaaS的体系,那么如果容器用来当虚机, 当计算算元,那可以说是居于容器的IAAS, 当然也可以有基于容器的PaaS, 基于容器的SaaS。

  3. 所谓CaaS,容器即服务, 较真的讲或者狭义的讲,我认为它对外提供的是以容器为单位的计算单元,它可以看成IaaS的一种,也可以是基于IaaS之上,(其实也无所谓了)。

  4. 废话预警


楼上的各种大侠从各种技术角度都讲了很多灼见。 那我们抽象的来看看。

人类即希望有选择的自由,有时候又有选择恐惧症;
人们即希望一切能够有统一的标准,又希望有多样化的选择;
异构是长期存在的,而多样性又是技术进步的源动力。
我一直觉得预测未来是没什么意义。随着技术的进步,无论是基础架构,还是开发者,等等所有的因素都会变化,事情总是会进步的,但通常不会是以我们想象的方式。

icebolt - Docker爱好者暗黑

赞同来自:


PaaS还有很长的路要走,因为没有统一化的标准和规范。在没有规范之前,市场是应该还是以IaaS为主的服务提供,一些有特点的PaaS能满足个别用户的需求,会占有一部分市场份额。
至于CaaS,个人感觉其实就是PaaS的一个种类。提供固定服务,供企业或个人项目调用。
类似CaaS的各类PaaS以后会出现更多,比如七牛云的图片、视频加工+CDN服务。

个人认为,随着云的发展,项目只存在一个云节点的机会越来越少,随着服务的增加,程序员以后的工作,更像玩乐高积木,把各种云服务拼接起来。当然拼接云服务的程序,也会慢慢从自己的服务器移向云节点。

赛拆欧

赞同来自:


PaaS难做还有一个重要原因是,他的用户是程序员,这是一个特殊的用户群体。。
PaaS提供一些标准的部署架构和流程,必然会有限制;IaaS没限制,需要用户做的事情又太多。
说到底还是PaaS都不太成熟,Docker可能是机会

icebolt - Docker爱好者暗黑

赞同来自:


”个人认为“

IaaS,PaaS,SaaS,CaaS目前来说是方便平台进行业务分类的一些概念。未来的云会越来越模糊这些概念。提供公共以及个性化服务,满足用户需求才是王道。

随着个人设备计算能力的增强,网络提升,工业4.0的发展,以后每个人的设备可能都是云节点,提供对应的服务。

去平台、去中心化,是最终的主题。网络、智能化的发展,必将与人类社会行为趋向一致。

难易 - 华为杭州研究院PaaS开发者

赞同来自:


目前Docker很火,但Docker的背后还是兼容Posix,IaaS的思想。

如果把这个问题放到计算机历史上面来看,云计算应该是服务端大规模集群的操作系统。给程序员提供新的统一的抽象层。可以想象一下原来Unix操作系统刚出来的时候应用程序员的爽:
  1. 登陆主机,用C语言实现所有程序,平台上一行命令直接编译直接跑直接出结果
  2. 所有平台上的资源都是文件,通过Posix的API调用
  3. 大部分程序通过管道可以自由组合,通讯,不需要其他任何假定的限制
  4. 所有依赖都是可见的,通过编译so组合在一起
  5. 移植到别的主机上,只要把C文件拷贝出去,重新编译一下就行
  6. 通过虚拟内存系统,应用程序看到的CPU/内存都是无限的


目前的云还没做到这种程度:

在一个大规模集群上应用程序员需要自己去处理服务调用/软件依赖/底层服务,穿越软件栈的很多层。
还要操心各种运维问题。一切都没有标准。而且问题是,这个集群上跑的应用可能是任何规模、任何资源取向、任何语言、任何通讯方式的。

IaaS也好,PaaS也好,手机操作系统也好,说到底是用来给应用程序服务的,如果能做到应用程序基本上感觉不到这个底层的存在,就算成功了。

whiteear

赞同来自:


个人浅见。
PaaS只所以推广不起来。主要是PaaS是一套规范性质的抽象。它试图解决应用在开发,部署,运行期的所有问题,甚至于业务运行的性能、状态都想管。但通常规范是有其适用范围的。有其典型的应用场景。就目前的PaaS来看,WEB类应用相对其它类型就比较成熟。另一方面,有规范就必然有限制。更进一步限制了其通用性。

对于公有服务来说,后面应该会出现各种类型的,针对不同应用场景和行业的paas服务。

docker的出现对于paas的发展是有很大的催化和促进作用。至少在运行环境和部署这块,提供了标准和统一的可能性。docker + 编排服务+服务发现和命名 + 应用监控等结合起来,就可以提供基础的运行环境paas。如果再结合业务和行业特性提供基础LIB和公共服务,就可以构建行业paas。

txworking

赞同来自:


CloudFoundry是PaaS,七牛云也算是PaaS,再远一点Hadoop YARN和Mesos也能算是提供平台服务,但是它们怎么看都不太一样嘛。

所以PaaS概念现在不是也分化了吗,又提出了aPaaS(applicaton platform as a service)和iPaaS(integration as a service)。

这说明PaaS这个概念已经开始出现局限性,对实际情况的抽象达不到大家一开始的设想。

CloudFoundry这种只适合Web应用,里面的数据库、MQ的使用和Web应用也是两套概念。
Docker的出现又算是进行了统一,Web应用、数据库等等又都成了Container,但是因为用起来还是感觉像是IaaS的延伸。
YARN和Mesos则是完全从资源管理的角度出发构建平台,但是只能针对特定集群。

所以还是不能拘泥于PaaS这个概念,从自己的业务出发选择合适的切入点构建平台才合理。

lishuping - 坚强的女人。

赞同来自:


刚入行一年,一直是模糊的概念,看了他们的分析,仿佛拨开云雾见庐山!

tonybai_cn - 关注Go、Docker和Kubernetes

赞同来自:


记得以前daocloud的创始人之一好像说过,观点是:daocloud从来不提caas,只提paas 3.0。docker等container实现让paas的底层实现机制发生了改变,对paas的支撑更加简便,降低了PaaS实现的门槛。

要回复问题请先登录注册