开工福利|免费学 2200+ 精品线上课,企业成员人人可得! 了解详情
写点什么

工业级 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:542378

评论

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

判断TikTok节点IP的纯净度高不高的几个方法

Ogcloud

tiktok运营 tiktok节点 tiktok网络 tiktok封号 tiktok代理节点

人事人才信息管理系统:2024年10大推荐系统

易成研发中心

TikTok账号封号原因有哪些?

Ogcloud

TikTok tiktok运营 TikTok养号 tiktok封号

全渠道商品计划软件:时尚鞋服企业的数字化新引擎与AI赋能

第七在线

云数仓ByteHouse的湖仓一体设计与实践

字节跳动数据平台

大数据 数据仓库 湖仓一体

探索1688阿里巴巴API接口:图片搜索商品列表(拍立淘)与店铺所有商品列表的实战应用

代码忍者

API 接口 pinduoduo API

一行代码都不改,Golang 应用链路指标日志全知道!

阿里巴巴云原生

阿里云 云原生

赣州银行新核心成功投产上线,分布式存储筑牢数字化转型根基

XSKY星辰天合

数据同步、流计算全面强化,TDengine 3.3.4.3 版本正式发布

TDengine

数据库 tdengine 时序数据库

面试官:如何设计一个高并发系统?

了不起的程序猿

Java 程序员 面试 高并发 架构设计

翻倍只是山寨币季的点火阶段:市场分歧与未来趋势

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

Spring AI Alibaba 配置管理,用 Nacos 就够了

阿里巴巴云原生

阿里云 云原生

工业公辅车间数智化节能头部企业,蘑菇物联选择 TDengine 升级 AI 云智控

TDengine

数据库 tdengine 时序数据库

作为一名普通Java程序员,每次面试后是否有必要复盘?

了不起的程序猿

微服务 高并发 架构师 java面试 八股文

YashanDB在地理信息系统(GIS)领域的关键功能和技术优势

YashanDB

yashandb 崖山数据库 地理信息系统

苹果m1能玩steam吗,苹果笔记本玩steam游戏教程

阿拉灯神丁

游戏 MacBook steam M1芯片 CrossOver Mac下载

客户案例|大模型加持智能会议,金融机构实现“写纪要”到“审纪要”的飞跃

澜舟孟子开源社区

人工智能 大模型 智能办公

从仪表盘探索 MongoDB 关键指标

巴辉特

MES系统在传统制造业中的作用与战略价值

积木链小链

mes

汽车摆臂行业生产设备数据采集及集成

万界星空科技

mes #汽车 设备数据采集 汽车摆臂行业 汽车摆臂mes

知乎启用AutoMQ替换Kafka,开辟成本优化与运维提效新纪元

AutoMQ

Java 数据库 kafka 客户案例

云桌面年终狂欢,多重福利等你来拿!

Finovy Cloud

云主机 云服务器 云桌面 云电脑

定制化NFT链游DAPP开发:一站式解决方案助力游戏创新

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

改变仿真游戏规则,Altair的AI与HPC技术创新仿真之路

Altair RapidMiner

数据分析 仿真 CAE #人工智能 altair

盘点本轮牛市币价再创新高的「老山寨」

TechubNews

AI智能体的开发流程

北京木奇移动技术有限公司

AI应用 AI智能体

牛客网最新的Java面试八股文通关手册

架构师之道

程序员 java面试

浏览器拨测:将网站护航的阵地再前推一米

阿里巴巴云原生

阿里云 云原生 云拨测

探索1688阿里巴巴API接口:揭秘商品详情与关键字搜索的奥秘

代码忍者

API 接口 pinduoduo API

在“黑天鹅”时代,如何锻造创业者的认知韧性?| 陶建辉演讲分享

TDengine

数据库 tdengine 时序数据库

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