写点什么

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:4519311
用户头像

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

关注

评论

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

40亿条/秒!Flink流批一体在阿里双11首次落地的背后

Apache Flink

flink 流计算

light-rtc: 理念与实践

阿里云CloudImagine

架构 音视频 WebRTC RTC

基于GaussDB(DWS)的全文检索特性,了解一下?

华为云开发者联盟

数据库 数据仓库 数据

引起故障的原因

jorden wang

免费下载来自阿里巴巴 双11 的《云原生大规模应用落地指南》

阿里巴巴云原生

阿里巴巴 阿里云 开发者 云原生 k8s

干货|原来IPFS是这样存储文件的

QTech

区块链技术 IPFS 星际文件系统

主从哨兵集群终于给你说明白了

moon聊技术

数据库 redis

优化了MYSQL大量写入问题,老板奖励了1000块给我

华为云开发者联盟

MySQL sql 写入

架构师训练营第六周作业

zamkai

移动设备管理平台的搭建(基于STF/ATXServer2)

行者AI

人工智能

软件测试--前后端数据交互

测试人生路

软件测试

打造新一代企业数据驱动体系

StarRocks

数据库 大数据 数据分析 数字化转型 OLAP

2020年不容错过的10本大咖之作 | 你最Pick哪一本?

博文视点Broadview

LeetCode题解:264. 丑数 II,三指针,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

“区块链+有机蔬菜”农产品溯源项目落地

CECBC

农业发展 农业

内存分页不就够了?为什么还要分段?还有段页式?

yes

操作系统 内存管理

Flink 双流 Join 的3种操作示例

Apache Flink

flink 流计算

阿里拆中台?从架构师角度解读中台

javaba韩老师

架构 中台战略 TOGAF 中台的前世今生 中台的由来

面试软件测试所需要掌握的7个技能

华为云开发者联盟

sql 面试 测试

如何通过 Serverless 轻松识别验证码?

阿里巴巴云原生

人工智能 阿里云 Serverless 云原生 数据采集

敏捷与安全不可兼得吗?看完这篇文章后,我想说:未必!

华为云开发者联盟

敏捷 安全 开发

Flink SQL 实战:HBase 的结合应用

Apache Flink

flink

「每日一题」抖音面试题:请阐述vue数据绑定的实现原理

Java架构师迁哥

如何利用状态同步开发一款游戏

Isa 婷婷

node.js 游戏开发 24小时自助游戏厅 联机游戏

Spring Cloud Gateway (六) 自定义 Global Filter

Java 网关 SpringcloudGateway

数字化浪潮下 哪些银行业务或“生变”

CECBC

金融科技

基于 Flink+Iceberg 构建企业级实时数据湖

Apache Flink

大数据 flink 流计算

深层互联带领自动旅游讲解耳麦进入“非入耳”时代

DT极客

干了三年的Java,你竟然还不会MySQL性能优化

华为云开发者联盟

Java MySQL sql

字节内部MySQL宝典意外流出!极致经典,堪称数据库的天花板

比伯

Java 编程 架构 面试 技术宅

2021 第一份唠嗑

大头虾

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