指 Firebase ,云开发 —— 腾讯云的小 B 战略能行么?

2018-11-09 17:03:02 +08:00
 xiqingongzi

小程序推出云开发已经有一段时间了,我自己也已经深度的体验了小程序云开发,自此,写下一篇文章来谈一谈我眼中的云开发。

小程序云开发是由腾讯云和微信团队联合开发的产品。腾讯云官网上的对应产品名叫 云开发 TCB。

Parse、Firebase 以及他们的模仿者

想要了解云开发,首先要了解云开发是一个什么样的东西,其原型又是什么?

云开发为开发者提供了云存储云数据库云函数,帮助开发者快速构建一个微信小程序,是一个完善的基于云端构建可拓展应用实现的方式。

这种方式我们将其称为「 BaaS ( Backend as a Service )」。通过组合云平台内的各项能力,BaaS 为开发者提供了整个后端的能力,包括结构化数据存储的数据库和非结构化数据存储的对象存储,以及复杂逻辑运行的函数服务。

Parse 的落幕

BaaS 知道的最多的便是被 Facebook 收归旗下的 Parse 平台,这个平台能够帮助开发者完成数据存储、云端存储、云端逻辑的支持,可惜,被 Facebook 收归旗下后没多久,Parse 便停止了运行。

Parse 目前作为开源的产品,开放在 Github 上,开发者可以自行下载源码进行部署。不过,对于绝大多数开发者来说,Parse 的停止运行,让它的故事就此落幕。实际上,开发者们使用 Parse 便是为了将架构、云计算、弹性等能力交由服务商来完成,开发者专注核心逻辑。开源以后的自部署模式,已经失去了其意义。如今的 Parse 更多是以一个被研究者的身份出现在开发者的服务器当中。

Firebase 如日中天

其次,广为开发者所熟知的便是 Google 收归旗下的 Firebase 了。Firebase 原本是初创公司 Envolve 的聊天产品背后的服务,为其提供了实时数据库、API 等能力,后来,Envolve 公司发现开发者们对这种能力非常好奇,便将其开放出来,在 2012 年成立了一个独立的公司来运行 Firebase,后由在 2014 年被 Google 收购。

与 Parse 不同的是,Firebase 并没有因为被收购而消失在人们的眼中,反而是因为被 Google 收入旗下,一路前行,吃掉了 Google 原本的一些服务,比如 Andord 中类似 iOS 消息推送的服务 GCM ( Google Cloud Messageing ) 被 Firebase 收归旗下,并更名为 FCM ( Firebase Cloud Messageing )。

如今的 Firebase 整合了 Google 内部的大量的服务,打包出售给开发者们,帮助开发者们更好的实现自己的 App。Firebase 的服务被分为了应用构建( Build your app )、质量提升 ( Improve App Quality )、产品增长( Grow your Business ) ,为用户提供了接近 20 种不同的能力,帮助开发者,一站式解决所有应用的开发问题。

美味书签之后的探索者 LeanCloud

Leancloud 的故事其创始人江宏先生写了一篇博客来讲述 LeanCloud 诞生的故事,这里我就不再复述一遍了。播客的链接我放在文章末尾的延展阅读中,如果你有兴趣,不妨去看一看。简单的来说,就是原 AVCloud 的团队,为了能够更好的开发,进行了中国的落地,并更名为 LeanCloud,让原有的 AVCloud 的团队以投资人的身份加入。

不了历史,我来说一说我对于 LeanCloud 的看法。 就目前而言,LeanCloud 是市面上比较好用,用户也比较多的 BaaS 服务。不过,LeanCloud 也有其自己的问题,作为一个创业团队,LeanCloud 在技术的累积上是有缺陷的,无法满足开发者的各种各样的需求,目前所提供的服务仅有数据存储、云引擎、云缓存、即时通讯、消息推送、短信,绝大多数场景是够用了,不过,与 Firebase 一比,还是相形见绌。

> 我自己也一直很喜欢 LeanCloud 的团队,他们的团队建设、文化输出做的都非常的好。可惜自己能力不足,无法前往这样的公司就职。

声名不显 Bmob

在 LeanCloud 之前,国内其实还有另外一个提供了 BaaS 服务的服务商 —— Bmob。Bmob 上线于 2012 年 ,其团队是来自华南师范大学的何少岳。从 Bomb 的官网还可以找到 2012 年发布的新闻动态。

Bmob 我用的不多,最早在研究 APICloud 时看过,不过如今,已经很少接触了。Bmob 给我的感觉更加的贴近国人的需求,除了作为云服务的云数据库、云函数、短信服务以外,还为开发者提供了很多很简单但是很有用的业务,比如 App 的落地页,软件著作权申请等等。这些小功能或许不是很复杂,但是面对一些国内的开发者来说,还是非常有用的。

黯然退场 Willddog

在 LeanCloud 同期,还有另外一个 BaaS 云服务商也很出名 —— Wilddog 野狗云服务。

野狗云服务和 LeanCloud 不同,Leancloud 目标是提供全面的云计算能力,野狗则专注做好实时通信云服务,仅提供了实时通讯和短信两种服务。其公司花费了大量的时间来解决实时通讯的问题,其服务的质量是非常好的。

我与 Wilddog 的缘分还是源自 2016 年参加微信小程序内测,当时 Wilddog 推出其小程序 SDK,我便去试了一下,的确不错。可惜的是,今年的 3 月 16 日,其官方在公众号 ThinkWild 商发布了通知,因为资金问题停止了新用户的注册,也会在后续用户完全迁出后,停止服务。

Wilddog 的产品、服务做的都非常不错,可惜生不逢时,国内对于实时通讯方面的投入还是不够,野狗即使够野,最终也不得不黯然落幕。

抓住机遇的知晓云

知晓云是 BaaS 云服务市场的新玩家,其背后是知名科技媒体爱范儿 ,在微信小程序出现后,爱范儿就注册了微信公众号「知晓程序」,并上线了小程序商店。

不过,显然爱范儿的野心不止于此,2017 年 5 月 31 日,知晓云上线了。知晓云主打的是专为小程序提供服务的 BaaS 服务,各项服务都围绕着小程序自身的能力进行构建,最基础的数据、存储、云函数自不必说,还提供了邮件、短信、用户认证以及文章模块、支付模块等一些服务,完全针对小程序开发者进行服务,满足小程序开发者所需。

不过,作为一个科技媒体起家的团队,最终能走多远,技术是否能够跟上他们的野心?我们拭目以待。

腾讯云的 To 移动开发者云服务的探索

实际上,腾讯云为移动开发者提供云服务进行过一次又一次的探索,作为一个外人,我关注到的就三次。

再无下文 TAB

腾讯云最早的针对移动开发者提供的云服务叫 移动开发工具 TAB ( Tencent App Builder ),TAB 上线时,小程序还仅仅是有风声要提供,并未正式上线。这款服务是腾讯云和我们在上文提到过的 Leancloud 合作的产物,LeanCloud 在腾讯云的上海节点部署一套服务,这套服务由腾讯云的用户专享,此外,TAB 的数据、存储和流量也使用腾讯云的 MongoDB、COS 对象存储和 CDN 来提供服务。

当时 TAB 出现后,我一度非常激动,认为是腾讯云抓起了移动端开发者,为移动端开发者提供服务。与 LeanCloud 的合作也是非常明智的,作为国内 BaaS 首屈一指的团队,其产品质量也可以保证,合作可以让 TAB 更加强大。

不过,计划赶不上变化,没过多久,TAB 就匆匆被下掉了,我如今还能找到的,就只有网络上的一些博客,还记录着当时的一些事情,告诉人们,腾讯云曾经和 LeanCloud 合作过一款产品,名字叫 TAB。

在腾讯云官网,至今还有一个活动页面可以访问,是 TAB 上线时为用户赠送 100G 存储 和 100G 流量的页面,算是 TAB 的一个纪念吧。如果你有兴趣,可以在文章的尾部中的延展阅读中找到对应链接。

> 我猜这篇文章发出去以后,这个页面很快就要被下掉了:)

乱七八糟 Wafer

小程序上线后,腾讯云作为腾讯公司自家的云服务,自然是要抢占先机,为用户提供小程序的解决方案。便推出了 Wafer 的方案。

不过,在我看来 Wafer 算不上是一个什么好的产品,其组合形式极为奇葩,采用的是组合腾讯云内部的一系列服务,包括云服务器、云数据库、负载均衡、云缓存等业务,设计出了一套「高可用」、「高弹性」 的产品。而且,为了使用好其架构,你需要基于其提供的 Wafer SDK 来进行开发。如同带着镣铐跳舞。

虽然弹性可以辅助产品成功,但是,过早的进行架构设计以及从一开始就带着镣铐跳舞,使得这款产品从一开始就问题多多,用户使用极为困难

后续,wafer 进行了迭代,迭代出了 Wafer 2,并将其集成进入了微信小程序的开发工具当中,可惜,提前进行的过度设计使得这款产品依旧不好用。

一代新星 云开发

终于,云开发出世了。云开发出现在人们的眼中还是因为腾讯云联合微信团队推出了 「小程序 · 云开发」 产品,并免费提供给开发者们使用。

云开发这一次的设计就显得成熟了许多,不再整合传统的云服务器、负载均衡等产品,而是直接使用云函数,并辅以 MongoDB、对象存储,通过封装后为用户提供服务,让开发者可以更加容易的完成自己的开发工作。

同时,由于都是腾讯旗下的,云开发还可以使用微信的一些私有 API,使得小程序的开发比传统的服务端开发更加的容易,可以预见到,云开发会携小程序之威,呼啸山林。

从其官网可以看到,云开发目前提供的小程序 SDK 是其整个体系的一部分,后续,还会为开发者提供更多的服务,除了文件管理、数据管理、函数服务、静态服务以外,还会逐渐提供触发器、用户管理、统计分析、信道服务、消息服务、AI 服务等。

在未来,云开发会成为腾讯云的 Firebase。

为什么我看好云开发

1. 合乎趋势

云开发的推出带来是对独立开发者、独立产品人的开发环境的优化,云开发的推出让更多的开发者可以独立完成一个项目,而不在受限于团队规模不足,找人难也不再是问题。

长期来看,大的企业形态会逐渐变少,小而美的开发团队足以做成很大的事情,云开发的这种模式,正适合小的团队来完成项目:一个产品、一个开发、一个设计、一个市场,足以推出一款产品,找到自己的用户。

2. 开发者友好

云开发采用的是 Serverless 中的 FaaS ( Functions as a service ) 模式,这种模式的特性是以函数为弹性的单元,在面临流量波动时,可以更加容易的完成弹性的操作。

和 Wafer 相比,云开发的模式显然对开发者更加的友好,开发者无需关注背后复杂的架构,花费更多的时间在实际的项目上,研究产品的核心代码,为用户提供更好的服务。

3. 大公司的赛道

BaaS 看起来,似乎并没有什么大公司在做,但实际上,BaaS 是属于大公司的赛道。对于小公司来说,只能够在自己所能做到的点上,做到最好,让大公司也无法比拟。

但是,在产品的丰富度上,小公司是无法比拟的。比如,我使用的小程序的统计 SDK 是腾讯的另外一款产品,MTA 提供的,如果将其整合进入云开发,云开发的能力边界将再一次拓展。Firebase 为开发者提供了接近 20 项产品,这些产品大多是 Google Cloud 其他产品能力的封装带来的,这种模式是小公司所无法实现的,只有大公司有足够的场景和团队来进行整合。

在 BaaS 这条赛道上,小公司也可以跑,大公司也可以跑,但是,想要跑的好,还是要看大公司。

云开发对于腾讯云意味着什么

对于腾讯云,新的 CSIG 中的一员来说,云开发可能是下一个有力的增长点。

从流量的角度来看,小程序开发工具的内置和官方文档的集成,使得云开发从一开始就占据了流量的优势。小程序的火爆,会让云开发一同火爆。

从产品的角度来看,更加简单的开发与接入的方式,与原有开发模式并不冲突的开发方式,让云开发更加容易被开发者们所接受

从现金流的角度来看,云开发的产品对于平台的依赖性极高,不会轻易被迁出,只要让用户养成了开发习惯,后续的收入是可以预见会越来越好的

从社会趋势来看,云开发对于小团队、外包团队十分友好,可以快速的开发、上线一款新的应用,小程序开放的主体转移也为此提供了土壤,在未来,小程序的兴起会带着云开发一起,一飞冲天

从对手来看,云开发的对手只有 Firebase,云开发未来的完全体,也会是 Firebase。LeanCloud、Bmob、知晓云之类的可以做的小而美,但是,大公司能够开放出来的底蕴,确实是小公司无法比拟的

延展阅读

2506 次点击
所在节点    云计算
2 条回复
hanmiao
2018-11-09 17:46:23 +08:00
看着不错,去官网看看
xiqingongzi
2018-11-09 18:07:05 +08:00
标题应该是 「剑指 Firebase。。。」

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/506198

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX