写点什么

BaaS 服务的定义、发展以及未来

  • 2015-01-28
  • 本文字数:2720 字

    阅读完需:约 9 分钟

BaaS(Backend as a Service)是一种新型的云服务,旨在为移动和 Web 应用提供后端云服务,包括云端数据 / 文件存储、账户管理、消息推送、社交媒体整合等。BaaS 是垂直领域的云服务,随着移动互联网的持续火热,BaaS 也受到越来越多的开发者的亲睐。它作为应用开发的新模型,可以降低开发者成本,让开发者只需专注于具体的开发工作。

BaaS 是移动中间件的替代品(或者说备选方案),它使用统一的API 和SDK 来连接移动应用到后端云存储,传统的移动中间件通过本地的物理服务把后端服务集成到应用中。而BaaS 通过云来集成后端服务。中间件和BaaS 的最大不同是它们是否包含或者提供云的服务,BaaS 可以说是PaaS 平台在移动垂直领域的延伸,更可以说是移动中间件和云的融合。而现在它们都在以不同的形式来存在,云的优势很明显,那就是简单、成本低廉,中间件的优势是数据安全、易于扩展。所以从现在的趋势来看,它们不存在明显的取代关系,只不过可能以后BaaS 的体量会更大。移动中间件将更多的被有能力的企业使用,同时也会有越来越多的中小型企业、开发者选择使用BaaS。

虽然BaaS 属于PaaS 的范畴,但两者也有区别。 Quora 上有人简要描述了二者的不同,BaaS 简化了应用开发流程,而 PaaS 简化了应用部署流程。PaaS 是一个执行代码以及管理应用运行环境的开发平台,用户通过 SVN 或者 Git 之类的代码版本管理工具与平台交互,对于开发者来说,PaaS 就像是一个容器,输入是代码和配置文件,输出是一个可访问应用的 URL。而 BaaS 平台进一步将用户需求进行了抽象,比如用户管理,开发者希望创建用户数据库表(模型)后,客户端就可以通过 Restful 接口直接操作对应的模型,所有的操作都可以被抽象为 CRUD。之前,开发者需要创建表、写接口、写校验,而在 BaaS 平台中,开发者只需要定义模型,平台就会自动生成对应的接口,这可以让开发者更加专注具体的客户端代码。专门针对手机端的 BaaS 服务称为 MBaaS,目前大多的 BaaS 平台都属于这一类。

随着移动互联网的发展,移动行业的分工也会像其它行业一样逐渐细化,后端服务就是这样被抽象出来,它统一向开发者提供文件存储、数据存储、推送服务等实现难度较高的功能,以帮助开发者快速开发移动应用。在国外,BaaS 服务已经受到巨头的重视,2013 年 4 月,Facebook 收购 Parse;2014 年 6 月,苹果发布了 CloudKit;2014 年 10 月,Google 收购了 Firebase。 Parse、CloudKit、Filrebase 都是国外知名的 BaaS 类产品,苹果和谷歌通过 BaaS 服务可以更好的完善其生态圈,Parse 也可以帮助 Facebook 建立它在移动端的地位,从巨头们在 BaaS 方面的布局也可以看出 BaaS 的价值。总体来说, BaaS 平台的优势包括(来自搜狗百科):

  • 提高效率:减少移动 APP 开发中各个环节的成本,提高效率。
  • 缩短上市时间:减少从构思到制作过程中的阻碍,并降低上线后的运营成本。
  • 减少交付 APP 所需的资源:BaaS 需要的开发者和 IT 资源更少。
  • 针对手机和平板优化:BaaS 供应商在优化移动 APP 数据和网络上花费了大量时间和资源,减少了跨平台和移动终端的碎片化的问题。
  • 安全和弹性的基础设施:BaaS 提供捆绑的基础设施,解决了弹性、安全性和性能等运营难题,让开发者专注开发。
  • 大量的常用 API 资源:BaaS 将常用和必要的第三方 API 资源汇总,省去开发者单独收集的麻烦。

在国内,提供 BaaS 服务的厂商也有很多,典型的代表有 APICloud Bmob 友盟,主要提供的功能包括社会化媒体集成、数据 / 文件存储、数据分析、消息推送、支付。以 APICloud 为例,它们主要提供的服务包括:

  • 数据存储。用户可以通过可视化的界面设计数据库,包括创建 Class、定义字段、录入数据等。同时,BaaS 平台可以自动生成对应的 Restful API,用户可以通过任何语言操作已有的 API,另外,平台也内置用户系统、角色系统、文件系统、权限控制等模块。
  • 数据推送。结合 APP 中的标签设置,针对不同属性的用户推送差异化信息,包括定时推送、离线推送等。
  • 版本管理。支持 iOS 及 Android 版本的同步或异步管理,在控制台内流程化进行开发和版本管理。支持增量更新,终端用户可在应用内进行更新。
  • 数据统计。平台可以查看应用的新增用户以及活跃用户数据,并支持自定义事件统计。

从功能上看,国内的 BaaS 厂商(特指能够提供完整的平台能力的厂商)提供的功能大同小异,大都集中在推送、存储、统计方面。值得注意的是,这几个重点功能又有相应的厂商在做,比如文件存储的七牛和又拍、推送服务的极光推送、统计服务的友盟、及时聊天的环信,所以随着这块市场的成熟,BaaS 平台在功能方面的重心应该是整合其它垂直云服务的能力。

从盈利模式看,都是向少部分用户收费。纵观目前面向开发者的公司,它们的盈利模式大多是部分服务收费或者部分用户收费,现在的这几家 BaaS 厂商基本都是对部分高端用户收费。但是从云的发展趋势来看,接下来会有更多的中小型公司会使用 BaaS 服务,所以新一年 BaaS 平台也许会面向企业提供差异化的服务。

从竞争角度来看,由于 BaaS 在国内的整体份额都比较小,所以目前各个厂商都在全力扩展自己的用户基数,直接的竞争还谈不上。不过,目前市场的几家厂商侧重点也不一样,比如 APICloud 提供的是端和云的能力,用户可以通过 SDK 开发跨平台的应用。

分析机构 MarketsandMarkets 报告 BaaS 市场到 2017 年将会达到 77 亿美元,而 2012 年仅为 2.165 亿美元,年增长率达到了 104%。预计在 2015 年 BaaS 服务会受到更多用户的亲睐,BaaS 的发展趋势总体来看可以总结为如下几个方面:

  • 出现更多的垂直云服务:随着技术的发展与市场需求,整个移动互联网行业发展的特点是更加的垂直、细分和专业,所以也会出现更多的垂直领域的 BaaS 服务提供商。
  • API 云服务蓬勃发展:随着云和大数据的结合,业务层跟数据层结合的越来越紧密,移动 APP 更侧重界面的逻辑和表现,而 APP 所需的数据与服务都需要通过 API 的形式从云端获取,所以能够提供数据存储和 App 逻辑业务相关的 API 输出的数据云 BaaS 服务将会有更多的需求和发展。
  • 满足自定义功能扩展:BaaS 在提供标准服务的基础上,让开发者可以根据自己的产品和业务特点,通过在线配置和上传代码的功能来扩展自定义的功能,满中个性化需求。
  • 成为行业移动化解决方案:随着移动互联网和越来越多的行业结合,BaaS 服务以其简洁、高效、灵活、专业的特点,也会应用到各种行业的解决方案中,成为行业移动化解决方案中云端的支撑服务。

随着 BaaS 服务的成熟和稳定,基础服务功能使用专业的 BaaS 服务已经成为了移动应用开发中的常规选择,被越来越多的客户接受,2015 年 BaaS 服务有更好发展。

以上内容由 InfoQ 编辑对 APICloud CTO 邹达的采访整理而成,如文中所述, APICloud 是一家移动应用云服务提供商。

2015-01-28 03:4518515
用户头像

发布了 219 篇内容, 共 139.8 次阅读, 收获喜欢 191 次。

关注

评论

发布
暂无评论
发现更多内容

基于 OPLG 从 0 到 1 构建统一可观测平台实践

阿里巴巴云原生

阿里云 分布式 云原生 可观测 全链路

站在数字经济浪尖:360视觉云探路中小微企业数智转型

脑极体

MySQL存储引擎

武师叔

8月月更

Github Actions 实现 Node.js 项目的 CICD 环境搭建

昆吾kw

nginx CI/CD Node Express Github Actions

Web网页端IM产品RainbowChat-Web的v4.1版已发布

JackJiang

html5 前端 websocket 即时通讯 IM

兆骑科创双创服务平台,创新创业高层次人才引进,投融资对接

兆骑科创凤阁

Kubernetes日常故障解决

CTO技术共享

开源 签约计划第三季 8月月更

深入浅出边缘云 | 5. 运行时控制

俞凡

架构 边缘计算 网络 深入浅出边缘云

Spring(二、配置文件)

开源 bean Spring JPA 8月月更

阿里巴巴2022全新出品亿级并发设计速成宝典(系统拆分,缓存,MQ,读写分离,分布分表,ES扩容应有尽有)

程序员小毕

Java 程序员 面试 后端 高并发

阿里内部高并发核心编程笔记:多线程、锁、JMM、JUC、设计模式

冉然学Java

JMM 设计模式 java; 多线程高并发

JOIN查询时,我为什么建议你将小表放在前面?(NLJ,SNL,BNL算法全面解析)

董哥的黑板报

MySQL 数据库 后端 服务端 db

一个可以提前结项的敏捷项目

Bruce Talk

敏捷 Agile 敏捷项目

兆骑科创创新创业大赛承办,线上直播路演,企业孵化

兆骑科创凤阁

1500字简述 Apache ZooKeeper 的基本原理

wljslmz

Apache zookeeper 分布式 8月月更

迄今为止见过最详细的零拷贝技术讲解

C++后台开发

后端开发 零拷贝 Linux服务器开发 C/C++后台开发 C/C++开发

阿里架构师力推jvm架构解析文档,把JVM调优实战讲的明明白白

Java工程师

Java JVM GC

从 VLAN 到 IPVLAN: 聊聊虚拟网络设备及其在云原生中的应用

阿里巴巴云原生

Linux 阿里云 云原生 容器服务 IPVLAN

大算力时代已经到来

吴脑的键客

计算

架构实战营复盘

Fan

#架构实战营

原型链中的函数和对象

掘金安东尼

JavaScript 前端 8月月更

Kubernetes 集群 Ingress 网关

CTO技术共享

开源 签约计划第三季 8月月更

4K详解Linux内核——环境搭建

了不起的程序猿

数据库 程序员 系统 linux security

STM32+果云GA6-GPRSGSM模块+MQTT+HTTP协议连接中移OneNet上传GPS数据定位

DS小龙哥

8月月更

设备树

贾献华

8月月更

阿里技术大牛亲自编写,将高难度的Java高并发知识讲解得浅显易懂

了不起的程序猿

六千字梳理 Node.js 的多进程模型和项目部署流程

昆吾kw

Node Express NGIN pm2

开源一夏 | 自从我使用HiFlow场景连接器后,在也不用担心成为“落汤鸡”了

叶秋学长

开源 8月月更 Hiflow

阿里SpringCloudAlibaba实战小抄(第五版)GitHub独家首发开源

冉然学Java

GitHub 开源 springcloudAlibaba spring-boot

来学习开源模块化前端框架—Layui【Layui极致轻量前端框架】

恒山其若陋兮

开源 前端框架 签约计划第三季 8月月更

超强力推!阿里全新微服务突击手册,把所有操作都写出来了|超清PDF

冉然学Java

架构 微服务 java; 消息中间件 微服务框架

BaaS服务的定义、发展以及未来_移动_小盖_InfoQ精选文章