整理|孙溥茜
“前端的魔爪已经伸到后端了,颤抖吧后端!”11月29日,前端开发领袖黄希彤在腾讯「小程序·云开发」技术峰会上如此放言到,现场一片笑声。
这次峰会上腾讯搞了什么事情?腾讯向外界发布三个讯息:
-
全面升级小程序·云开发能力
-
依托微信生态,发布具有腾讯特色的低代码平台
-
联合中国电子技术标准化研究院,宣布共同启动《云开发通用技术要求》标准编制工作
从单点云开发转向全面云开发,云开发能力升级
“小程序云开发”是腾讯云联合微信小程序团队推出的一个多端应用开发平台,采用 Serverless 开发模式,为开发者提供云原生一体化的后端云服务。
小程序云开发的使用者增长迅速,今年使用小程序云开发的开发者数量达到了100万,比2019年数字翻了一倍多。越来越多的小程序开发者开始使用云开发。据官方数据显示,每天活跃的开发中,云开发的开发者占比还在逐步攀升。
会上,微信小程序及云开发创始团队核心负责人林超介绍了今年云开发三项重要能力的拓展,从过往的小程序单点云开发转向全面云开发。
接口能力拓展
云开发的接口能力从单一的支持小程序开发,拓展到支持微信公众号网页,即Web开发。同时也支持微信生态其他能力接口,如微信支付,使用云开发提供的微信支付原生 API,由于请求免鉴权,开发者也不需要下载和部署微信支付的 API 证书。同时可以通过云函数来接受支付结果回调,开发者不需要额外购买域名、也不需要申请 HTTPS 证书。
支持场景拓展
云开发从今年开始,通过对环境共享、静态网站托管、内容管理CMS等原生能力的支持,使得原来以小程序为核心的原生场景拓展到支持小程序对小程序、小程序对公众号、小程序对Web端的数据共享。未来微信会把这种向多端共享的能力进一步拓展,实现小程序向全场景的开放。
服务能力拓展
云开发在全面开发的模式下,拓展到云托管,支持更多的语言和模式。同时也从对个人与企业开发者的支持拓展到了对服务商的支持。
云开发可无缝接入多种语言,让开发者快速体会到云开发所提供的微信原生能力,降低开发速度与难度。面服务商,云开发也提供了各种批处理的能力,一定程度降低服务端的成本。
「云开发低码」,降低小程序开发门槛
企业在数字化转型的过程中都有这样的通病:费时费力定制化软件的开发。公司里懂业务的业务人员不懂代码,懂代码的研发人员对业务理解不深,软件开发生命周期中有将近一半的时间浪费在业务沟通和理解上。实际投入产出比低,代码质量参差不齐。软件开发生产力日益跟不上企业日益增长的业务需求。
会上,腾讯云云开发产品中心副总监王倩对「云开发低码」做了介绍,依托微信生态优势,该低码平台有三个特点:
微信原生
腾讯云开发低码延续了云开发优势,具有云端一体、微信端内私有化链路安全保障性好、 Serverless 自动扩缩容和高可用等优势。
高扩展性
通过框架规范三方可自助接入自有组件和模板,形成行业解决方案,内部或者对外开放使用,让用户使用门槛更低;以及集成现有系统业务,不重复造轮子。
精准营销
最具有腾讯特征的莫过于第三条的“精准营销”,我们知道,用户增长是所有企业的核心诉求,依托腾讯的生态特点,低代码平台可以帮助用户在应用生命周期内从用户获取、行为分析、营销获客三个阶段全流程关注用户与营收增长。
(图片来源:腾讯官方)
以上三点云开发的能力的更新,与低代码的产品发布不难看出,后端资源封装是大势所趋。许多开发者关注后端运维的话题,因为后端运维通常会消耗大量时间精力,前端业务代码还没开始写,就已经精疲力尽了。那么一直所讲的“帮助前端开发者升级为全栈开发者”的云开发,如何应对这个难题的呢?
开源框架CloudBase Framework实现一键部署
前边说过了云开发可以为用户提供自动扩缩容、免运维等能力,但实际上用户在迁移和托管已有的传统应用时便会遇到如改造适配成本高、依赖资源编排等等问题。
针对这样的痛点,腾讯云高级前端开发工程师赵兵在会上介绍了腾讯自研开源框架 —— CloudBase Framework。
CloudBase Framework 是一款基于Serverless 架构的前后端一体化部署工具,无需改动代码,从而降低应用程序部署为云原生应用的门槛。
CloudBase Framework 可以将一个云原生应用简化为下面的模型公式:
应用代码 + 声明式应用配置 + 不同环境配置信息 = 云开发云原生应用
-
应用代码 Code:包含前后端代码
-
声明式应用配置 cloudbase:包含插件配置、依赖资源(MySQL/CFS)、生命周期 Hooks 编排
-
不同环境的配置信息 Environments:应用在不同环境 (预发布、生产环境、开发环境)的配置信息
云开发云原生应用可以采用标准化的流程自动化配置和部署,一键部署在 Serverless 化的计算平台上,实现持续交付和快速扩展,更加节省资源。这是云开发 CloudBase Framework 的部分里程碑,自推出以来经过云开发平台众多企业用户和开发者的实践,团队协作和持续的迭代,目前功能已日渐完善和稳定。
截止目前,已经有 1000+ 应用使用CloudBase Framework 来部署,例如:
-
企业微信通过 CloudBase Framework 来降低开发第三方应用的门槛
-
云开发低代码平台使用 CloudBase Framework 来实现应用的快速部署
-
腾讯直播团队使用 CloudBase Framework 搭建基于 Dart 的Flutter云端一体化的开发模式
云托管,解决当下云函数应用限制
云开发的一大主要优势是通过云函数,利用弹性扩缩容这样的特点,为使用者解决资源浪费的问题。
但是传统模式转换到云函数模式的过程中,也面临一些问题:有一定的改造成本、一定程度上受到语言及框架的限制,且云函数目前暂不支持服务常驻。
为此腾讯微信云开发生态产品经理董娜利介绍了小程序云开发推出的云开发模式—云托管 CloudBase Run(Tencent CloudBase Run,TCBR)
云托管是什么
云托管是由云开发提供的新一代云原生应用引擎(App Engine 2.0),支持托管任意语言和框架编写的容器化应用。和云开发的其他产品(云函数、云数据库、云存储、扩展应用、HTTP 访问服务、静态网站托管等)一起为用户提供云原生一体化开发环境和工具平台,
云托管最大的特征是不限语言不限框架,且兼容kanative标准。开发者使用云托管,无需改变编程习惯,改造成本极低,只需3步就可将存量业务迁移到云开发上。
云托管的技术架构
那么云托管背后的技术架构是怎样的呢?董娜利对这个问题进行了深入解读:
云托管在K8S的基础上提供了云调用、弹性扩缩、日志监控告警、流量灰度等能力,内置Jenkins、docker镜像构建等CICD工具,支持现有的所有语言。
云托管可以支持到0.25core规格的超细粒度资源管控。在突发业务的情况下,可以达到20s快速扩容,支持实例副本数缩容到0,即如果用户在业务没有流量的时候,无需支付任何费用,可以做到真正的0成本。
以上简单总结了云开发开源框架 CloudBase Framework 与云托管的技术架构。不难看出,虽然云原生应用的仍有许多技术上的挑战,但是它带给开发者的便利,在未来会让云开发是更多开发者的选择。
云开发实际使用案例
2019年在上海有一家新成立的电商公司,公司有两条小程序产品线,从创立伊始便使用云开发模式。
今年9月这家初创公司第一次进行了推广,流量瞬间涌入,两个小程序一下承载了数十万的访问流量,云函数自动扩容机制快速反应扩容应对了大流量,让这次推广活动顺利完成。活动结束后,访问量也逐步恢复平日水平,这时候自动缩容机制再次启动,关闭闲置的云函数资源,减少服务器成本。
这家初创公司的CTO讲到:“按我在之前工作的经验看,同样的服务量如果用传统的云服务器,每个月至少需要2W-3W的服务器成本。而采用云服务,云开发服务器的成本目前每个月还没有超过一千元。”
对于初创公司,这样的成本是非常具有吸引力的。创业不易,每一分钱都需要花到刀刃上。
结语
另外,值得一提的是,在会上,腾讯宣布了PaaS服务标准《云开发服务通用技术要求》的立项启动。标准建设的启动,助力云开发产业建立共识,为客户提供云原生一体化开发环境和工具,相信会对云计算的生态打造影响深远。
技术的进步让开发者独立做的事情越来越多,前端开发者不再是“页面仔”,云开发等技术赋能其成长为全栈工程师。展望前端工程师未来,黄希彤说道:
“在云开发下做创新需要的计算、存储、分发各种资源唾手可得。有很多像我一样的前端工程师,正在尝试朝这个方向拓展自己的能力边界,让自己变成一个更全能的开发者,在云上更自在地释放创意。可能还有更多的还没有看到这个新机会的前端,那我希望通过今天的分享可以让你知道,我们前端的能力边界正在发生新的变化。”
更多精彩推荐
☞GAN模型生成山水画,骗过半数观察者,普林斯顿大学本科生出品
☞AWS新品直指微软,它会是改变数据库的“Game Changer”吗?
☞常年“盘踞”数据库前五的 MongoDB,在中国有哪些新动向?
☞开发者实测 M1 芯片报告:除了大型应用程序启动慢点,整体性能优秀
点分享 点点赞 点在看
文章评论