2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

工业级 Serverless 平台,需要具备这些能力

  • 2020-04-24
  • 本文字数:3101 字

    阅读完需:约 10 分钟

工业级 Serverless 平台,需要具备这些能力

Serverless(无服务器运算) 是云计算的一种模型,也被称为云计算未来的方向。因其降低开发成本、按需自动扩缩容、免运维等诸多优势,被越来越多的公司用来构建云上应用。国内外此类型产品,有诸如 腾讯云云开发、AWS Lambda、Microsoft Azure Functions 等。


Serverless 相关技术的普及影响前端开发者的现有能力和定位,同时前后端架构和工程体系也随其发展而产生变化,那么 Serverless 如何走工程化道路?在 GMTC 北京 2020,我们邀请到了腾讯高级工程师周俊鹏老师来分享《面向全栈的工业级 Serverless 平台成型之路》。我们有幸在会前采访了腾讯云云开发团队的周老师,聊聊 Serverless 给前端带来的挑战和机遇,以及面向全栈的 Serverless 平台应该具备哪些能力。


InfoQ:请介绍下你自己。


周俊鹏: 我的从业经历比较复杂,最初的工作以 CSS 和动画为主,随后一段时间专注于前端工程效率即所谓的前端工程化,然后有两年半时间专攻图形编程(Canvas/SVG/WebGL)。目前就职于腾讯云云开发 Cloudbase 团队,负责云开发 Cloudbase 相关研发和生态建设工作。团队的主要产品云开发是支持多端开发(一云多端)的 Serverless 应用开发平台,小程序·云开发就是我们团队的主要产品,现在我们已布局小程序、 Web 和移动应用开发领域。


InfoQ:你是怎么看待 Severless 发展的?


周俊鹏: 其实在参加工作至今的六年时间里,之所以每份工作的技术侧重点有很大差异,是想尽量摸清前端开发技术的广度和深度,以便确定最终的从业方向。所以有宏观到全栈的工程化,也有微观到像素的 WebGL 编程。


在充分熟悉了这些技术之后,我个人认为前端在未来的核心发展方向主要有两个:数据可视化和全栈开发数据可视化 对数学和算法的要求很高,同时可以与多线程、WebAssembly 等新技术结合,充分压榨浏览器的性能,考验的是技术深度,其价值体现在疑难问题的攻坚上。全栈开发 指的是从底层到应用层的全链路闭环开发,当然事无巨细不现实,所以要依托一些技术、工具或平台,而目前来看,Serverless 是最有可能支撑全栈开发落地的指导思想之一。


InfoQ:团队是在什么契机下,引入 Serverless 的?


周俊鹏: 团队的主要产品云开发 Cloudbase 是一个基于 Serverless 架构(FaaS+BaaS) 构建的一站式后端云服务平台,作为一款 ToB 产品,它以生产工具角色为开发者提供价值。2018 年在微信小程序落地“小程序·云开发”之后得到了不错的反馈和增长,而 Serverless 理念的亮点之一便是并没有限定应用场景,所以我们团队目前在微信小程序之后继续布局多端平台,目的是尽量帮助开发者解决业务逻辑之外的琐碎事,提高生产力。


InfoQ:现在团队内部的 Serverless 平台发展现状怎么样?


周俊鹏:Serverless 思想是贯彻在我们产品全局设计和功能设计上的。


在产品矩阵方面,云开发 Cloudbase 除了提供函数、文件存储、数据库等基础服务以外,还融合微信生态的云调用能力,开发者可以免鉴权快速调用微信开放能力。同时,场景化需求,提供静态托管、扩展能力等综合解决方案。


在功能细节上,不仅在计算服务上我们提供函数服务,在数据库上我们更是联合微信团队共同打造了业界真正的 “Serverless for NoSQL”,Serverless 模式下的数据库服务,开发者在云 + 端上可以原生地使用微信 SDK 操作数据;特别是端上的数据操作,这种 Serverless 模式下的数据库可以更有效地利用端的计算能力,从而节省用户的底层资源成本。此外,微信内部的数据通路让整个链路也更安全稳定可靠。


在多端布局方面,云开发 Cloudbase 与多端和跨端开发技术相结合,在微信小程序、QQ 小程序、Web、移动应用 (Flutter) 均已落地。


在开发者量级方面,已经有超过 50 多万开发者在使用,API 日均调用量超过 7 亿次。


InfoQ:你认为工业级 Serverless 平台应该具备哪些能力?


周俊鹏: 一门新兴技术或理念如果想令开发者摆脱玩一玩的心态,转变为真正接受它的工业价值,有很长的路要走,ToB 平台的路程则更加艰辛。而云开发 Cloudbase 作为一个结合新技术理念的 ToB 平台,这条路的艰辛程度更甚。以我个人的理解,工业级 Serverless 平台有一个非常重要的基调需要在确定迭代方向之前完成,即明确用户群体。


以云开发 Cloudbase 为例,用户的基本诉求虽然大体上均是在保证服务稳定性的前提下追求高生产效率,但是对平台能力的具体需求上,按照颗粒度可以大致分为两类:一类用户偏重完整、闭环,对平台能力的需求以高度封装的 API 为主;另一类用户偏重定制化、可组合甚至二次开发,对平台能力的需求以细粒度的 API 为主。所以我个人认为工业级的 Serverless 平台既要有高度封装的全能型能力,也要具备细粒度可组合的定制能力。以此为基调,我们团队在制定云开发 Cloudbase 迭代路线时,即提供函数、存储、数据库这类细粒度能力,又提供扩展能力、应用服务托管这类高度封装的解决方案。


InfoQ:全栈架构如何升级?


周俊鹏: 我们讲全栈开发并非是令一个开发者负责技术架构的所有环节和细节,而是令开发者只关注业务逻辑本身,而不必关心业务逻辑之外的繁杂事。比如 Web 服务器支持业务逻辑正常运行的背后是硬件、网络、操作系统等与业务无关的事,我所期待的全栈开发理想形态是将这些工作从开发者的关注清单中删除,只剩业务逻辑本身。以目前的技术发展状况看,Serverless 是最有可能实现这种全栈架构的技术模式之一。


InfoQ:如何打造适合自身发展的工程模型?


周俊鹏: 打造工程模型的基本前提是紧密结合团队自身的技术架构和组织架构,其中技术架构又往往取决于组织架构。以前端工程化为例,前后端分工模式决定前端架构的定型,进而才能建立工程体系。回顾前端技术的发展历程,从最初的静态网页到如今的大前端,技术的演进推动技术架构和组织架构的调整,工程模型也随之改变。Serverless 提供了全栈开发的可能性,前端技术架构进化为全栈架构后,工程模型从以前只覆盖前端范畴进化为全链路闭环体系是必然的趋势。


InfoQ:你认为 Serverless 应当如何与端应用开发技术相结合?


周俊鹏:Serverless 相关的技术本身隶属云计算领域,与应用端开发其实并没有太深的联系,而跟云计算之前的技术(比如:IaaS、PaaS、SaaS)相比,Serverless 之所以在前端领域大热,根本原因在于:它比 IaaS、PaaS 更加接近应用层。回顾云计算技术的发展,其实是自底向上一步步解放生产力的过程,而 Serverless 是目前云计算领域最接近应用层的技术模式。但是这并不意味这没有沟壑,Serverless 距离端的“最后一公里”至今仍没有绝对统一的解决方案,云开发 Cloudbase 也只是率先提出了一种相对合理且接受度较高的方案而已。


我们解决 Serverless 对端问题上坚持一云多端的理念,服务本身是平台无关的,在应用端的支持上有两种可选方案:一是提供封装能力的端 SDK;二是提供平台无关的 HTTP API。用户可以根据自身的需求选择任意一种。SDK 的优点是高度封装,并且我们有一些跨端的 SDK,比如:JavaScript SDK、Flutter SDK、React Native SDK 等等;HTTP API 的优点是粒度更细,可组合性和可定制性更高,但是对开发者的技术能力要求相对高一点。


嘉宾介绍


周俊鹏,腾讯高级工程师,就职于腾讯云云开发 CloudBase 团队,负责云开发 Cloudbase 相关技术研发工作。QCon 2017 讲师,GMTC 2018/2019 出品人,主要研究方向是前端图形编程、工程化和 Web 应用层架构。著有《前端工程化:体系设计与实践》《前端技术架构与工程》。


活动推荐


Serverless 呼声越来越高,也有人称其是云计算未来的发展方向,如何将其落地,如何走工程化道路,将架构持续升级?GMTC 北京2020设置“大前端工程化”及“Serverless 实战专场”,一线大厂技术专家将深度解析,详情请点击GMTC北京2020官网


2020-04-24 11:543176

评论

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

云电脑对硬件配置有没有要求?

青椒云云电脑

云电脑 云电脑平台

Python 遍历字典的这6种方法,你都掌握了吗

我再BUG界嘎嘎乱杀

Python 后端 字典

精彩回顾!AI赋能下的自动化攻防分享

云起无垠

OpenHarmony开发者大会2024致谢项目群捐赠人,多家单位参与现场授牌

极客天地

Vue.js条件渲染与列表渲染指南 _

不在线第一只蜗牛

vue.js 前端

XSKY CTO 在英特尔存储技术峰会的演讲:LLM 存储,架构至关重要

XSKY星辰天合

分布式存储 大语言模型 XSKY 星辰天合 高带宽存储

半导体存储品牌企业江波龙加入龙蜥社区,完成与 Anolis OS 适配

OpenAnolis小助手

龙蜥社区 龙蜥社区生态伙伴 江波龙

兼职福音!API信息录入员火热招募中

幂简集成

API 兼职 招募

第53期|GPTSecurity周报

云起无垠

#人工智能 LLM模型

桌面云服务器价格怎么样?

青椒云云电脑

桌面云

AutoMQ 生态集成 MinIO

AutoMQ

Java 云计算 云原生

训练效率提升 40%丨多云架构下高效存储策略详解

焱融科技

多云架构 大模型训练 高性能存储

小白入门必备!计算机科学教程的Python精要参考PDF开放下载!

我再BUG界嘎嘎乱杀

Python 后端 入门 零基础

QAnything 1.4.1 中的文档解析

有道技术团队

rag 知识库问答

全方位质量保障!龙蜥在内核、软件包、容器镜像、三方模块的 CI 工程实践

OpenAnolis小助手

ci 质量保证 龙蜥社区

龙蜥开发者说:夏日编码奇遇,中国科学院大学学子的开源世界探索记 | 第 27 期

OpenAnolis小助手

龙蜥开发者说

满帮集团 Eureka 和 ZooKeeper 的上云实践

阿里巴巴云原生

阿里云 微服务 云原生

云教室如何促进优质资源共享

青椒云云电脑

云教室 云教室厂商 云教室解决方案

桌面云服务器是什么?有哪些操作系统

青椒云云电脑

桌面云 桌面云服务器

报名倒计时!「飞天技术沙龙-CentOS 迁移替换专场」参会指南

OpenAnolis小助手

操作系统 CentOS 停服 CentOS 迁移最佳选择 CentOS迁移

# 使用RAG-GPT集成智谱AI、DeepSeek快速搭建OpenAI Cookbook智能客服

Geek_1ef48b

安全厂商第一站!OASA 走进绿盟科技圆满结束

OpenAnolis小助手

龙蜥社区 龙蜥社区安全联盟

检测 CSS 中的 JavaScript 支持

伤感汤姆布利柏

桌面云服务器有哪些配置?

青椒云云电脑

云服务器 桌面云

Web3 游戏周报(5.19 - 5.25)

Footprint Analytics

链游

工业级 Serverless 平台,需要具备这些能力_GMTC_叶兰_InfoQ精选文章