普及小程序-Serverless-云开发-【一】

magic
2024-03-21 / 0 评论 / 8,824 阅读 / 正在检测是否收录...

普及小程序 Serverless 云开发 【一】

什么是小程序 Serverless ?

之前跟大家介绍过Serverless由Baas+Faas 组成,听着很高深,其实很好理解。可以理解为为你提供了开发过程中后端服务+自定义后端服务。你不需要去管什么后端语言,什么后端数据库,什么后端攻击,什么后端架构,什么后端维护等,只要做好客户端UI,连接上后端就好了。

Bmob 作为国内第一家Serverless服务商,提供移动后端云服务。在这块已经服务了大量APP很多年。

这里解释下之前叫Baas 为啥现在叫Serverless,这是因为大家对Serverless的形式有不一样的认可,一部分人认为Serverless = Faas+各种服务。 一部分人认为Serverless+Baas。

大家的共同认知都是无服务器计算。未来不再需要去购买任何服务器去提供API,也不需要操作关心任何并发维护等问题。

由于不需要写后端,不需要购买服务器,这块在APP领域,可操作性极高。我们从13年成立,就有大量APP开发者使用我们服务,到今天,已经接近30w开发者,涉及各行各业。 客户服务展现形式也是非常丰富,单片机、智能家居、智能手表、无人售货机柜、商场资讯地图引导柜机,机器人,共享单车、游戏,APP,小程序等等客户。

除了Bmob Serverless外,国内2大云厂商也建立自己Serverless体系

阿里云的Serverless就是 Faas+各种服务(数据库、网关、负载均衡等等)从Faas 里面调用各种服务,通过官网暴露给客户端。

腾讯云的Serverless偏向于Baas+Faas 可以看下腾讯云Serverless的相关文章http://www.cnblogs.com/qcloud1001/p/9486751.html

所以这也出现了2个例子:

阿里Serverless开发一个微信红包小程序应用教程

https://blog.csdn.net/zhoushuntian/article/details/79289215

腾讯出的小程序云开发一个小程序教程

https://zhuanlan.zhihu.com/p/42327375

在熟悉Faas情况下,阿里的比传统小程序PHP API开发,在运维上与硬件成本上,有着明显优势。

由于大家理念不同,腾讯小程序云,他是直接建立了一套Baas与小程序结合,跟Bmob后端云一样,即使你完全不懂Faas,也能开发大部分常用的小程序。 明显这种方式更简单实用。

为什么是常用的应用可以用Baas做,而不是所有,因为有些特别应用,需要一些特别操作。

例子一:

小程序.png

http://www.91ud.com/app/15895.html

这个基于Serverless开发的一个例子,是基于Bmob后端云小程序,开发的一个小程序,叫趣猫。他的业务是一个淘宝客的业务,搜索跟推荐分成是他主要的功能, 其中搜索,如果不配合Faas,是没法实现, 因为他的搜索,其实是搜索淘宝客API的数据,整个淘宝推广的商品都可以搜索出来,有token授权,需要Faas访问淘宝API,返回数据给小程序客户端。

例子2:

纸塘

第二个基于Serverless开发的一个例子,小程序纸塘壁纸最近增加了一个功能,壁纸更新提醒通知,当后台有壁纸更新了, 会自动发送一条模板消息给我。这个也是基于Faas,单纯的Baas是没法实现这个功能。 当然,Bmob之前的Baas服务是包含了Faas服务,只是这2年Faas比较炒作的比较火。大家都把他(Faas)单独领了出来,作为Serverless架构的核心。我们则认为Baas与Faas同样重要。

之前我有文章写过,阿里的Faas 推广力度,与体验领先于腾讯的Faas , 由于阿里与腾讯的理解不一样,这次在Serverless领域,个人认为腾讯云一定会超过阿里的Serverless。

阿里云的Serverless就是 Faas+各种服务,不是玩微服务这个领域的人,很多人都不知道阿里的Serverless怎么结合到自己业务上。腾讯云理解为Baas+Faas,Baas有客户端的存在,更容易落地。大家理解的Serverless不一致,做的事情也不一致。

像阿里Faas+各种服务(今天去看阿里官方还不断在给Faas增加可调用的服务,到目前阿里Faas几乎可以操作阿里云的大部分产品,数据库,redis,云存储等等服务),并不断在宣传Faas是如何去调用这些服务。

腾讯云的行动告诉你什么叫Serverless(Baas+Faas),这次推出小程序云,以产品的形式告诉大家他眼中的Serverless服务。

image.png

按照2018年7月份微信小程序官方公布的数据,目前注册开发者以及到达了150W+,这150w的开发者,大部分是一些小的cp厂商,这些小的CP厂商,大有可能接下来新开发的小程序都基于Serverless开发,而整个Serverless 市场,会比目前大很多倍。

Serverless虽然好用,按照阿里的策略,很多人是看不懂无服务函数是干嘛的,为什么我要用它,而不是用云主机。因为设置太复杂了,概念很多,甚至好多人到今天还没搞懂计费原理。

腾讯云的策略,由于有了小程序Baas与客户端打通,大部分情况不用自己去Faas里面写接口,使用非常简单,在Serverless这块领域,很快腾讯云就会超过阿里云,由于很多初级开发者都不会用,很难推广开来,这次小程序云对国内整个行业来说,都是一个很好的教育。算得上是国内推广Serverless行业的又一次里程碑,未来Serverless会像目前云主机一样普及。

到底怎么使用?

有些前端对Serverless与小程序云的关系可能不太能理解,我下面用小程序云来代替Serverless这个词。

前期准备:

  1. 申请公测资格 网址:
  2. 下载bate版开发工具

控制台操作:

  1. 打开小程序云控制台,在bate版小程序开发工具上传的左侧有个按钮。

  1. 点开后,看到一个类似这样的界面

image.png

  1. 点击数据库,创建一个自己前端想显示的数据结构。例如这里建个team表

image.png

代码操作:

我们把这条数据在小程序内显示? 这里我跟Bmob后端云做个对比

  1. 初始化

    微信

wx.cloud.init({
  env: 'test-x1dzi'
})

Bmob后端云

app.js 引入

var Bmob = require('../dist/Bmob-1.0.1.min.js');
wx.Bmob.initialize("你的Application ID", "你的REST API Key", "你的MasterKey");

2.第二步,查team表,打印出返回的数据

微信

db.collection('team').get().then(res => {
  // res.data 是一个包含集合中有权限访问的所有记录的数据,不超过 20 条
  console.log(res.data)
})

Bmob后端云

//构建team表对象
const query = Bmob.Query("team");
//查询数据
query.find().then(res => {
    //res 集合中所有数据,默认100条
    console.log(res)
});

可以看到,除了需要引入SDK , 2个在使用上几乎一致。小程序云开发与使用Bmob开发几乎雷同。

文档地址:

https://bmob.github.io/hydrogen-js-sdk/#/?id=%E5%AE%89%E8%A3%85%E4%BD%BF%E7%94%A8-1

关于定价:

腾讯云,最低版本

API 3w 天

数据库 1G

存储 5G

目前还不知道腾讯云的最低基础版上线是否收费,如果免费,那就很赞了。按照经验,这个额度大部分小应用都够了。

Bmob小程序云 最低版本(免费)

API 100w 月

数据库 表行 10w

存储 免费20G

流量 每月送20G

这个套餐免费,基本够用,收费套餐,大部分小程序都很难用得完。

目前小程序云还缺乏解决2个问题:

1.关于更好的功能实用性:

目前小程序云暂时比不上,Bmob后端云,像导入导出,生成小程序二维码、解密手机号,运动步数,支付,退款,短信,这些基础Baas服务端封装,小程序云暂时都还没有。然后就是数据安全与稳定性了,目前暂时没看到有任何关于备份的介绍,应用受到CC、DDOS 等攻击,这个费用是谁来承担,腾讯云之前的业务是客户自己解决,Bmob等 Baas 都是无需用户去承担这个费用的。

2.服务售后

我们都知道Baas 跟业务有深度关系,不像传统的云主机,我只保证云主机不死机就好了。基本卖出去就等着收月租。Baas领域开发者会遇到各种问题,你可以说你平台是标准的,文档都有,那么多技术人员在用,可开发者技术能力,理解能力参差不齐,就很难解决一些问题。 所以在传统的Baas 服务,都很重视问题反馈,像Bmob 就有几十个QQ解答群,加上工单。其他所有的Baas几乎没有哪家没工单服务的,有些工单还收几百块/月,大量工单,技术人员有限,这是没办法的,很多人问的问题,明显是技术基础不过关,对自己业务逻辑理解不够,就使劲提工单,而有些业务与Baas结合问题工单比较难形容,不知道Baas是否可以实现,所以有时候就用上了即时通讯,QQ,微信等来协助开发者解决问题。 所以这也是腾讯小程序云待解决的问题。

总结:

目前小程序云刚出来,还需要完善,对国内Serverless 市场来说,是一次里程碑式的意义。有望让中小企业普及Serverless 技术。

11

评论 (0)

取消