牛透社2017年10月30日的文章《总算有人把PaaS讲明白了》发布后,小伙伴们的反馈很多,很多人希望从不同角度继续了解PaaS,最终搞懂PaaS,明白它未来往哪个方向走。
本期文章,我们将深入解析企业级PaaS,从数据能力/流程能力、从平台/生态的维度勾画它。
本文内容来源于牛透社与炎黄盈动CEO刘金柱的访谈。
牛透社:对于PaaS,10个人可能有10种理解。你是怎么看待PaaS的?
刘金柱:的确,现在很多人对PaaS还是雾里观花。但PaaS只是看似复杂,只要找对方法,大家就能轻松认识它。
现在,我举两个生活中的例子,帮助大家理解什么是IaaS、PaaS、SaaS,以及它们有什么区别。
例1:做汉堡
本地部署,就是你准备餐桌、烤箱、面团、奶酪等所有物品,在家自己做汉堡;
IaaS,就是你准备餐桌、烤箱,厂商负责披萨面团、奶酪等物品,你买材料回家做;
PaaS,就是你准备餐桌,厂商负责烤箱、面团、奶酪等物品并烤好披萨,你叫外卖;
SaaS,就是厂商负责餐桌、烤箱、面团、奶酪等所有物品并烤好披萨,你去披萨店吃。
越往上,需要厂商做的事越多,吃到嘴的汉堡也越快。为什么还要有PaaS这一层呢,因为你可能要提高生活质量、你要活得与众不同,而且还要把这件事做得低成本、高效率,大家能消费得起。
做汉堡只是个很简单的场景,要想比较全面地了解PaaS,我们还需要第二个例子。
例2:造飞机
造飞机=把N多零部件组装成一架飞机?显然不是。
造飞机=飞机设计+飞机制造+空管系统+机场调度+地面维护+技术升级+飞机退役,跟飞机相关的交付链条,都要磨合打通才能造出一架合格的飞机、一架有人敢坐的飞机。
PaaS就是这样一个系统工程,它要为交付一个上层应用提供一组能力的集合,还要能够纳入社会的专业分工。至于做汉堡还是造飞机,道理是一样的。
牛透社:这两个例子的确很形象地描述了PaaS的内涵。那么,近几年PaaS发展得怎么样?
刘金柱:PaaS从诞生到现在,大约有十年时间了。如果用一句话来概括这十年PaaS的发展变化,“星星之火,终成燎原之势”或许最恰当。
* PaaS发源于2007年,这一年,Salesforce发布了第一个商业PaaS,即force.com;Heroku发布了支持Ruby编程语言的heroku。
* 2008年,Google公布GAE预览版,开始宣传它的PaaS。
* 此后两年,PaaS就热闹起来了,更多国际巨头开始布局PaaS——这两年也是早期教育阶段,PaaS跑得很快但基础环境跟不上,结果就是左脚迈出去了,右脚还在门内,大家都摔了跟头。
包括早期谷歌GAE、微软Azure在内,在云计算大战中选择从PaaS弯道超车,由于底层IaaS开放性和商业化不足,在上层构建的PaaS多为面向开发者的技术PaaS,缺乏直接的商业转换价值,企业用户不怎么买单。
* 2011年,PaaS进入迸发期。亚马逊发布Beanstalk;VMWare发布Cloud Foundry,VM Instance;红帽发布Openshift,VM Instance。PaaS的成熟度不断提高。
* 2012-2015年,全球PaaS市场全面开花,早期CloudBees 发布企业版Java PaaS,炎黄盈动发布企业级App Container内核,Docker发布容器虚拟化技术,EMC&Vmware发布企业版PaaS,微软Azure进入中国,IBM公布Bluemix PaaS,Oracle 提供企业云PaaS平台,Rocket发布容器虚拟化技术,Google发布容器编排技术。PaaS上升为多家厂商的发展战略。
* 2016年以后,基于开源kubernetes的容器型开发者PaaS和企业PaaS技术开始成熟,PaaS成为一部分数字化转型企业的赋能平台。
整体来看,各路厂商都将PaaS视为未来的发展方向,所以,目前市场上有各种纯PaaS厂商,也有一些IaaS和SaaS厂商提供PaaS服务。从阵营上,大致可以分为三类:
-
一是为开发者提供服务的PaaS,比如Kubernetes、Cloud Foundry,关注编程交付的流水线;
-
二是为企业提供服务的PaaS,比如force.com、还有我们的AWS PaaS,关注的是低代码业务驱动的交付流水线;
-
三是一些场景能力非常强的PaaS,比如融云的IM PaaS、工业互联网PaaS。
牛透社:这么多厂商做出这么多PaaS,它们都应用在什么领域呢?
刘金柱:大家都知道,在十多年前的应用软件市场里,中间件(Middleware)是一个生命力特别旺盛的领域,有各种各样的中间件产品,到今天依然非常重要。
PaaS就是在云计算和新技术环境下,将这些复杂能力抽象成即需即用的一组服务,一种云计算场景化的中间件。Gartner对PaaS的定义包括了应用、集成、业务流程、移动和数据库服务等细分领域。
但是,围绕PaaS的概念定义主要集中在全集合的aPaaS(Application PaaS)。明白这个前提后,我们就可以对PaaS的领域进行细分了:
-
aPaaS——应用平台即服务;
-
bpmPaaS——流程管理平台即服务;
-
dbPaaS——数据库和存储即服务;
-
baPaaS——商业分析即服务;
-
MBaaS/BaaS——移动/后端即服务;
-
iPaaS——集成服务;
-
MFT PaaS——文件管理和传输服务等等。
给大家看张图,PaaS应用领域就更加地一目了然。
PaaS的应用领域很多,这也从侧面显示出没有一个PaaS能够满足所有应用场景的需求。
我的个人观点是,能力集约会是未来PaaS的主流趋势,无论是DevOps的开发者PaaS还是Low-Code的低代码企业PaaS。它与单点PaaS最大的区别在于,别人干一件事,你要聚焦在一个完整场景把三件事干漂亮。如果你的PaaS应用场景可以做到低成本、高效率、高体验的能力组合,企业用户一定会更感兴趣。
牛透社:PaaS家族的成员太多了,用户顺着什么样的主线去辨别它们、选择产品呢?
刘金柱:应用场景不同,PaaS的设计思想、功能定位也不同。所以,用户要想选对产品,必须先明确PaaS的应用场景,了解它的分类。
我们可以从2B(Business)、2D(Developer)两条线来辨别PaaS。
2B的PaaS为企业应用场景提供服务,比如快速构建HR、CRM、SCM和个性化业务,买单的是企业或者软件厂商。
2D的PaaS为开发者提供服务,比如通过DevOps提高开发到运维的效率,构建云原生应用的场景也更广泛、更灵活,买单的是开发者或者企业技术团队。这里的2B PaaS就是企业PaaS。
从历史角度来看,企业PaaS和开发者PaaS是同时萌芽的,都发源于2007年。近十年来,它们你追我赶,齐头并进,各自衍生出一大派系。
过去二十年,我们国内各行各业完成了跨越式发展,粗放式管理让很多企业希望通过导入有先进管理思想的ERP实现再造,国内的软件厂商也是疲于追赶。
到了2010年前后,在全球范围内,云计算、移动互联网等颠覆传统软件架构的技术开始成熟,中国企业对运营过程的精细化管理也有了深刻理解。
这个时候,企业的传统IT系统面临一个历史性的拐点,是继续每年花出一笔昂贵开销维护那些老系统,还是基于新的架构平台重建下一代应用。
在这个拐点上,我要说,我们国内软件厂商机会和优势更明显。
牛透社:能否给我们讲讲企业级PaaS和开发者PaaS的特性?
刘金柱:我平时关注企业级PaaS比较多,所以今天着重谈谈企业级PaaS,同时兼顾开发者PaaS。
对于这个问题,我自己是这样理解的:
企业级PaaS是一个点、线、面的立体化平台。
点是上层一个个的应用,线是贯穿企业内外的端到端流程,面是支撑应用和流程不断交织、演进的平台基础服务。
企业PaaS的核心特征主要体现在两方面,一是对应用生命周期的管理,一是对构建企业应用场景的支持。
现在,我们先看企业PaaS的第一个特征:覆盖应用生命周期。
覆盖应用生命周期,就意味着PaaS要做好五个阶段的工作:
第一阶段是构建应用,包括工具和可视化,快速开发,自动化测试;
第二阶段是部署应用,包括分发、自动化部署、多租户下的版本差异受管;
第三阶段是运维,包括计算资源的弹性伸缩和监控调度、日志审计等,也会包括日常的运行维护,比如组织权限、业务异常干预、处理应用级问题;
第四阶段是进化应用,包括应用的版本管理和配置更新、升级和降级;
第五阶段是卸载应用,包括应用程序和数据清除、计算资源释放。概括地说,就是支撑应用从无到有,再到无。这个和造飞机、调度飞机、维护飞机、退役飞机是一个道理。
再来看企业PaaS的第二个特征:对应用场景的支持。
在这里,要回答的不是你做了什么,而是你能做什么?也要回答,哪些是你不擅长的。
流程、数据、集成、移动等是构建企业应用场景中频率最高最头痛的事,需求厘不清、业务变化快也是现实中遇到最多的问题。
能造民航客机、直升机还是无人机,不同的飞机类型,展示出不同的场景能力,这些能力的集约化程度,也决定了造飞机的成本和效率。
与企业级PaaS相比,云原生的交付流水线是开发者PaaS的主要设计目标,在新一代云架构中提高开发到运维的软件工程效率。
开发者PaaS不仅可以开发企业级应用,还可以开发网站、游戏、IoT、AI等新型应用。
但是,由于开发者PaaS不会提供抽象领域模型,遇到企业级应用中高频出现的场景时,成本、效率和质量就会大打折扣,因为仅仅提升编程和运维效率是解决不了这些问题的。
讲完企业级PaaS和开发者PaaS的特征,大家有没有看出它们的差异?
敲黑板:一段段的2C商业场景和偏技术的微服务非常适合开发者PaaS,而企业级的商业场景是流程端到端、高频变化的,更适合在一个统一的企业PaaS平台上,来构建和运维数十数百个微应用。
牛透社:企业级PaaS和开发者PaaS是两条平行线吗,有没有交叉、重叠的地方?若有,那么在交叉、重叠的区域,它们各有什么优劣?
刘金柱:多数情况下,企业级PaaS和开发者PaaS各司其职,谁有谁的地盘。我干不好你的活儿,你也干不好我的活儿。
比如,DevOps这种开发者PaaS解决的是用户高体验、模式不固定的一些应用产品,包括信用卡系统、特别需要有创造性的业务系统、特别需要独立松耦合的微服务,如果让它解决企业运营管理之类应用场景,它可能就完全hold不住。
企业级PaaS更适用于操作相对标准化的系统,把原来的大系统解构成一个个小应用,但是如果让它构建科幻的太空飞船,它照样hold不住。
少数情况下,企业级PaaS和开发者PaaS能解决共同的问题,但两者解决问题的路径、效率和成本可能不一样,投入产出比也会存在较大差异。
比如,一个5人内的DevOps团队,可能在第4周已经裁剪、熟悉和驾驭了新的开发架构,幸运的话已经发布了第一个典型应用功能。
如果是企业PaaS,在几天内就可以上线典型的企业应用功能。在一个足够细分的领域做比较,两者投入产出比的差异是巨大的。
牛透社:企业应用太复杂了,怎么考虑企业级PaaS的成本和效率?
刘金柱:通常大家会经常说,搞企业应用太复杂。我认为这里的复杂有这么几层含义:
首先,界面交互、规则和权限复杂且多变;
第二,数据间关系和控制复杂;
第三,没有冷启动的信息化建设,引入一个新应用,存在大量异构、要集成的系统,同时又增加了一个系统孤岛;
第四,流程可能简单也可能复杂,但企业和企业间流程的差异程度非常高;
第五,不希望被固化的应用拖住企业的创新,希望应用能快速调整和创建,支持管理和业务上的创新。
所以,我认为,回答这个问题的本质,是企业PaaS能否做到最低的成本、最优的效率、可持续地解决这些问题。
牛透社:说到这里,PaaS和企业级PaaS都很清晰了。最后,能否谈谈企业级PaaS未来往哪个方向走?
刘金柱:企业级PaaS不仅仅考验厂商的产品能力,更重要的是做平台、做生态。
就像刚才说过的飞机案例,企业级PaaS相当于不仅交付给你一条条飞机生产线,还要提供适合的机场跑道、空管调度、地面维护等一系列的专业配套设施,不仅要提高技术能力服务,更要与社会化分工提供整合价值。
所以说,PaaS的竞争,归根结底是平台成熟度、开放性和生态的竞争。
要想做平台、做生态,企业级PaaS厂商就必须有整合相关行业的资源、相关伙伴的专业能力和信誉度,比如金融、制造、汽车等行业,以及开发伙伴、渠道伙伴和实施伙伴等,慢慢形成一个价值闭环的生态圈。
在中国的企业级软件市场,已经进入到PaaS赋能的新时代。
这是一个老市场的里程碑拐点,前半场的IaaS已经就绪,在有了PaaS的下半场,会以更快的速度爆发出形式各样的商业应用,应用交付模式将从刀耕火种的原始社会切换到专业化分工的现代社会。
未来,PaaS厂商不会出现一家独大,但也不会有太多玩家。企业PaaS的综合门槛会越来越高,一些小玩家没有厚实的基础去覆盖产品和生态体系,就很难玩起来。