NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

别再纠结后端了,小程序开发这么做

  • 2019-10-12
  • 本文字数:3311 字

    阅读完需:约 11 分钟

别再纠结后端了,小程序开发这么做

2017 年,微信小程序上线。通过「无需安装、用完即走」的轻便形态,小程序可以快速解决用户的实际需求。在互联网人口红利见顶的大背景下,小程序成为移动互联网从业者们的布局重点。


2018 年 9 月,小程序·云开发正式上线,打通了小程序前端与云资源的链路,省去运维成本,帮助开发者快速上线和迭代小程序。这也标志着 Serverless 理念开始在国内有了大规模的应用落地。

疯狂的一年

回望这一年,小程序·云开发团队收到最多的反馈就是:“为什么 XXX 功能还没上,为什么 XXX 还不能支持。”不断涌现的客户需求推着团队快速向前。


2019 年 1 月,上线监控告警能力,提升产品保障性;


2019 年 4 月,上线云调用能力,进一步降低开发小程序门槛,提升研发效率;


2019 年 5 月,新增智能客服解决方案,与即速等服务商开展合作;


2019 年 7 月,上线预付费能力,正式成为商用产品;


2019 年 8 月,上线实时推送能力,切入小游戏引擎市场;


2019 年 9 月,上线代金券和新套餐,支持企业用户灵活购买;


……


伴随着高频率的功能上新,小程序·云开发的技术逐渐成熟。


云开发为开发者提供完整的原生云端支持和微信服务支持,弱化后端和运维概念,无需搭建服务器,使用平台提供的 API 进行核心业务开发,即可实现快速上线和迭代,同时这一能力,与开发者已经使用的云服务相互兼容,并不互斥。


那么,小程序·云开发如何让前端开发者无需考虑后端实现,专注于业务开发呢?这就不得不提到小程序·云开发提供的两大能力:基础能力及腾讯云基于小程序·云开发输出的增值能力



小程序·云开发的基础能力是依托微信生态,深度定制高频云产品组件,提供便捷的、一体化的小程序原生基础产品能力,目前包括云函数、云数据库、云存储、云调用等服务。


  • 云函数:一段运行在云端的代码,无需管理服务器,在开发工具内编写、一键上传部署即可运行后端代码。小程序内提供了专门用于云函数调用的 API。开发者可以在云函数内获取到每次调用的上下文(appid、openid 等),无需维护复杂的鉴权机制,即可获取天然可信任的用户登录态(openid)。并在开放了运用 Node.js 等框架编写“后端”业务逻辑后,直接可以部署在云平台下,不需要去考虑域名、服务器、打包发布、运维等琐事。

  • 云数据库:既可以在小程序前端操作,也能在云函数中读写的 JSON 数据库,不再受限于关系型数据库复杂的操作模式构建,数据管理上非常简洁。最近,小程序云开发新上线数据库实时推送能力,它可以优化升级诸如聊天、棋牌类游戏、订单状态同步等等很多长连接、实时交互场景下的开发体验,可以说,数据库实时推送能力对于小程序的功能完善上来说,有非常重要的意义。

  • 云存储:云开发提供了一块文件存储空间,提供了上传文件到云端、带权限管理的云端下载能力,开发者可以在小程序端和云函数端通过 API 使用云文件存储功能。同时具备默认配置域名、无需自建 CDN 的特点。

  • 云调用:打通云函数来简化鉴权,腾讯云和微信两边有打通鉴权的功能,把鉴权的工作自动化。


而腾讯云基于小程序·云开发输出的增值能力,核心为打通云开发与公有云服务链路,提供丰富小程序应用场景,并整合图像识别、音视频以及其它腾讯云基础产品的能力,通过模块化一键部署至云函数,不需要后台开发,后续只需要调用函数即可实现功能。


不仅如此,腾讯云基于小程序·云开发输出的增值能力在进一步减少小程序开发技术需求的同时,以业务场景为入口,借助云开发能力,不断降低新技术的使用门槛。其中,开发者们最为期待的当属 AI 与小程序的结合。

AI 场景中落地

当下,AI 技术浪潮正改变我们生活的方方面面,很多开发者都有过在自己项目中使用 AI 技术的想法。然而由于入门 AI 的难度比较大,并且上手时间较长,许多开发者在小程序研发筹备期就放弃了。而在近日,小程序·云开发上线 AI 增值服务,通过文档或者代码的形式,降低小程序 AI 使用门槛,让开发者在研发中轻松调用 AI 服务,满足不同小程序业务场景的个性化需求。


在要求实时性较强的 AI 场景下,因为依赖强计算力,如果将原有的技术方案直接在小程序本端运行,就会出现一些性能上的问题。那么,针对此类问题,小程序·云开发又是如何解决的呢?


首先,团队会对项目进行技术评估,确保在微信小程序框架下具可行性;其次应用测试中对性能进行评估,适配不同机型、不同设备上的内存限制以及 CPU 限制;最后在代码层面上通过编译等手段使用单一数据类型,减少运行时类型推断与隐式转换,加快执行效率。同时采用手动控制内存的方式,防止内存频繁开辟回收引起的性能与资源问题。


目前,腾讯云基于小程序·云开发输出的增值能力已全面开放了增值服务 AI 智能图像能力,其借助了腾讯云人脸识别、人脸核身和人脸融合功能,通过云开发的云函数和存储,简化素材存储、配置拉取和服务调用 image-node-sdk 等功能,并为企业提供定制化的解决方案,满足不同企业对于小程序功能的不同需求。


以“杰尼亚何谓当代男士小程序”为例。对于为奢侈品牌的定制化需求,在以往开发的过程中,D1M(第一秒)电商科技总会为每个品牌搭建独立的环境,部署整套代码,由于定制开发居多,相对而言代码复用率不高。如何在小程序开发的过程中,以敏捷高效的方式实现具有趣味性的互动,成为 D1M 在开发该小程序初期所面临的最大痛点。在此背景下,D1M 借助腾讯云基于小程序·云开发输出的“AI 滤镜”增值服务,为杰尼亚打造小程序,并将继续推进“人脸融合”功能上线。

应用场景一:新品 T 恤上线明星代言试穿,引导用户滤镜自拍并分享

在微信小程序中每张中等质量的图像原始数据量都在 2M 左右,受限于移动设备与运行环境算力和其他资源,如在小程序本地处理即时对图像进行计算处理及渲染,小程序性能及稳定性将面临巨大挑战。


这时,云开发首先将独有的图像处理算法移植到小程序平台,实现了图像的本地处理,减少上传与下载网络消耗。再加之云开发在性能与系统资源管控方面的优化,AI 滤镜增值能力可使小程序在 20-30ms 内,完成一张 480P 分辨率的图象处理和渲染,这也是腾讯云基于小程序·云开发输出的极具代表性的增值技术能力。



图片来自编辑实测杰尼亚何谓当代男士小程序截屏


基于 AI 滤镜增值能力优越的性能,其不仅可以像传统滤镜服务一样实现照片的处理,还可以在拍摄过程中实现实时的滤镜效果预览。AI 滤镜技术对核心图像处理 API 与集成自定义组件两部分进行插件封装。其中,集成自定义组件基于微信官方组件,封装初始化、监听、处理、渲染、读取等能力,做到了开箱即用。细节上在微信官方组件的回调中,小程序会对摄像头像数据以 30FPS 的帧率进行实时读取,之后结合原始 API 中封装的优图 X-lab 滤镜算法,对像素帧数据进行矩阵运算,最终渲染到 webgl 画布中,屏幕中呈现用户带有滤镜效果的自拍图像。

应用场景二:模特试穿照片与用户自拍的人脸融合(即将上线)

小程序·云开发的另一项 AI 增值能力——人脸融合,封装了腾讯云 AI 团队已有的人脸融合技术能力,在实现函数内免鉴权调用的同时,对两张人像进行脸部融合,进而输出融合图像。但如何获取合适的 【图像主体】 内容,成为人脸融合面临的一大挑战。


面对人脸融合场景难点,人工进行预处理是万无一失的办法,但面对数据巨大的内容信息,基于可直接部署并使用的云函数,并借助腾讯云基于小程序·云开发输出的 AI 人脸特征分析与检测能力,就可以得到图像宽高像素数量,以及图像中人脸的位置、大小、分析属性、质量等信息,根据这些信息就可以准确裁剪。而在云函数的接入过程中,其庞大集群的快速扩容能力,也足以 hold 住百万级,甚至千万级的高并发使用场景。

开发者论道

从以上我们可以看出,小程序·云开发凭借灵活、快速等诸多优点,不仅让应用触手可得,为越来越多的用户带来便利,也成为连接线上与线下、虚拟与现实的利器,承载大量开发者与各个产业进行连接的使命。


为了加强与开发者的沟通,10 月 19 日,微信小程序和腾讯云团队将联合举办首次「小程序·云开发」技术峰会


届时,微信小程序团队和腾讯云团队将联袂解读「小程序·云开发」的最新能力,为小程序开发者升级工具箱;顶级技术大牛将讲解前端技术最新的发展趋势,帮助开发者拓展技术视野;腾讯内外部的技术团队,也将分享基于「小程序·云开发」高效打造小程序的实战经验。



公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-10-12 15:172164
用户头像

发布了 35 篇内容, 共 21.9 次阅读, 收获喜欢 43 次。

关注

评论

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

苹果电脑pdf文档大小压缩推荐 PDF Squeezer激活中文最新版

胖墩儿不胖y

Mac软件 pdf编辑器 pdf处理工具

What's new in Pika v3.5.1

apache/dubbo-go

redis redis sentinel Pika

探索古彝文AI识别技术:助力中国传统文化的传承与发扬

颜淡慕潇

人工智能 算法 AI识别技术 前言技术

支持信创系统的数据库审计系统有哪些?用哪家好?

行云管家

数据库 信创 数据安全 国产化 数据库审计

供应链透明度的代币开发

区块链软件开发推广运营

交易所开发 dapp开发 区块链开发 NFT开发

打造香港最安全便捷的银行,众安银行发布首份技术白皮书

ZA技术社区

科技 众安保险 ZA Bank 虚拟银行

得物API元数据中心探索与思考

得物技术

API管理 元数据中心 自动解析

[分组聚合]基于Lucene8进行多值字段分组聚合(多属性字段)

alexgaoyh

lucene Spring Boot 分组聚合 单字段 多属性

如何用装饰者模式代理final方法

程序员万金游

spring aop #java #程序员 #Spring #后端

前端首屏优化 | 提升首屏的 8 个很简单的手段

Yestodorrow

可观测性 网站性能

DApp区块链公链智能合约质押挖矿系统开发

l8l259l3365

长沙企业采购云管平台选哪家厂商?联系电话多少?

行云管家

云计算 云服务 云管理平台 云管平台

全面解读 SQL 优化 - 统计信息

KaiwuDB

sql 优化 KaiwuDB

DxO PureRAW for Mac(RAW照片处理器)v3.6.0永久激活版

mac

苹果mac Windows软件 DxO PureRAW raw智能照片处理工具

“开放原子开源大赛”来袭, inBuilder低代码开发创新赛火热报名中!

inBuilder低代码平台

Spring Boot 中常见且必备的注解解析

Liam

Java 程序员 Spring Boot 后端 注解

EOS系统合约链账户介绍

BSN研习社

DxO FilmPack 6 for Mac(胶片模拟效果滤镜软件) 6.15.0完美激活版

mac

图像处理软件 苹果mac Windows软件 DxO FilmPack 6

ARTS-week7(23.9.25-23.9.30)

EchoZhou

牵引数字经济重要增长极,天翼云智能边缘云助力元宇宙加速发展!

天翼云开发者社区

云计算

4点策略调优!智能外呼助力汽车行业盘活客户价值

中关村科金

智能外呼系统

华秋DFM新功能丨可焊性检查再次升级,抢先体验!

华秋电子

什么是API商品数据接口?该怎么使用?

Noah

API 安全 API 文档 API 开发

深圳华秋电子有限公司与共熵服务中心缔结战略合作伙伴关系

华秋电子

合作伙伴

关于 TDengine 的论文资料都在这里了,等你来取!

TDengine

时序数据库 国产数据库 ​TDengine

文心一言 VS 讯飞星火 VS chatgpt (102)-- 算法导论9.3 8题

福大大架构师每日一题

福大大架构师每日一题

三个要点,掌握Spring Boot单元测试

互联网工科生

Spring Boot 分层架构 单元测试 JUnit Mockito

WIFI7-802.11be/EHT-IPQ9574-IPQ9554-QCN9274-QCN6274 support-320/240MHz and Multi-RU technology

wifi6-yiyi

WiFi7 ipq9554 802.11be

强强联合!天翼云与神州信息共助银行数字化转型升级!

天翼云开发者社区

数据库 云计算

专业强大的字体管理软件:RightFont 直装激活最新版

mac大玩家j

字体设置 Mac软件 字体设计 字体管理工具

KubeCon China 2023 | 以开源促进智能世界底座共建,给世界提供更好选择

新消费日报

别再纠结后端了,小程序开发这么做_语言 & 开发_一点小小苏_InfoQ精选文章