未来已来:从信通院 Serverless 标准,看无服务器发展趋势

共 5623字,需浏览 12分钟

 ·

2021-08-04 18:27

无服务器架构(Serverless)是一种将应用与基础设施彻底分离的架构理念,开发人员无需关心基础设施的运维工作,只需专注于应用逻辑的开发,真正实现了弹性伸缩与按需付费。当前各大云服务商和头部互联网企业的内部业务 Serverless 化升级改造已经开始小范围试水;中小企业基于 Serverless 的业务应用也初见端倪,已然可见初具规模的企业级应用,未来可期。Serverless 生态已初具规模,可以预见,Serverless 将成为下一代云计算服务形态的趋势。


在此背景下,云函数(SCF)、弹性微服务(TEM)和弹性容器服务(EKS)联合其他相关产品,在 2021 年 Serverless 平台技术能力评估中,共同获得国内首批 Serverless 平台技术能力最高先进级认证。


今年 7 月,在中国信息通信研究院、中国通信标准化协会联合主办的 “2021 可信云大会” 上,腾讯云拿下了 5 项大奖和 10 项可信云认证,在云存储、Serverless 等各细分领域评测中,获得 54 项可信云认证,数量位居中国云厂商第一腾讯云云函数(SCF)、弹性微服务(TEM)和弹性容器服务(EKS)深度参与了此次 Serverless 标准制定和实施过程,腾讯云的 Serverless 产品矩阵所提供的平台技术能力也得到了同行的一致认可。


Serverless 发展趋势解读


通过本次 Serverless 标准,为大家带来以下几方面关于 Serverless 发展趋势的解读:

趋势一:从计算层向 Serverless 应用延伸

Serverless 是一种免运维、按量计费、弹性伸缩的理念,企业对于 Serverless 的关注点不仅仅局限于 FaaS 等形态的计算层产品,在构建完整的 Serverless 应用时,除了计算层之外还需要考虑文件系统、数据库、中间件、网关等多种产品,在构建稍具规模的 Serverless 应用时,这些产品或多或少都需要涉及到,虽然产品不同但是用户对于免运维、弹性伸缩、按量计费的诉求是一致的。

当我们把 Serverless 理念和这些产品结合时,Serverless 化的文件系统(CFS)、数据库(TDSQL-C)、网关(API Gatgeway)和中间件(TDMQ)等可大幅度降低 Serverless 应用的开发和运维成本,让开发者真正聚焦于业务的核心能力,把核心的研发力量和IT投资最大化企业的核心差异化竞争力。通过最终的需求驱动,我们可以预见到,各个云服务产品的 Serverless 化或许是未来云计算发展的必经之路。

趋势二:Serverless 应用形态和落地场景进一步丰富

过去场景化的 FaaS 是 Serverless 较为主流的应用形态,落地案例也以轻量级的站点、SSR 和云上“云上粘合剂”居多。在本次 Serverless 标准制定过程中,对于如何评估企业实际的 Serverless 落地形式大家展开了丰富的讨论和交流。我们认为 Serverless 的应用形态可以是 FaaS、微服务甚至是单体应用;运行环境可以是原生的运行时,也可以是容器镜像;具体落地时,可以用来对外提供 API 接口,也可以用来运行 音视频转码、直播推流 等计算任务,还可以用来完成 站点压测、AI 推理 等任务。

但是现有存量系统的 Serverless 化无法一蹴而就,这是一个不断设计和矫正的过程,应用 Serverless 化也需要经历迁移、优化和云原生架构改造的几个阶段,不同阶段之间需要有一个较为平滑的切换过程,借助于云函数的 Web Function 的功能可以让迁移过程更加平滑,只有实际负载运行在 Serverless 上之后,才能基于生产环境的实际运行结果、采集定量的指标持续进行 Serverless 应用的优化和云原生改造,进一步发挥出 Serverless 的价值。

趋势三:Serverless 应用的开发者体验在持续提升

当构建应用所依赖的服务逐渐向云上迁移的时候,开发环境也进一步“云”化,和本地开发相比也面临一些新的挑战,比如代码生效时间、本地测试、远程调试和离线开发等等,这些都是影响开发者效率的关键环节。在本次的 「Serverless 平台技术能力」标准中,单独把对于工具链的支持作为衡量 Serverless 平台技术能力的重要维度之一。一个成熟的 Serverless 开发者平台需要能够提供比较友好的IDE支持,让开发者使用熟悉的开发工具进行 Serverless 应用的开发,降低开发者的切换成本;除此之外从本地或者远程测试的时候,需要有良好的工具支持,可以方便地发起调用,触发应用执行并快速返回结果,当结果不符合预期的时候也需要有一系列监控、日志等排障手段帮助开发者快速定位问题。

作为 Serverless 社区最流行的一站式开发者工具, Serverless Framework 拥有百万级别的活跃应用程序以及 50000+ 的日下载量。Serverless Framework 早在 2019 年就已经和腾讯达成了大中华区独家的战略合作,和腾讯云的云函数等 Serverless 产品深度集成,同时社区也有大量开箱即用的插件和模板,帮助开发者快速上手 Serverless 应用开发。除此之外,云开发也是国内最大的微信小程序应用开发平台,四川天府健康通、深圳机场智慧航旅服务等小程序应用都是运行在腾讯云的 Serverless 平台之上。

本次参选的产品介绍


1. 云函数 SCF :函数即服务

云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码。只需编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。

优势亮点

  • Web Function
只需简单修改监听端口,即可将目前流行的 Node.js 框架直接部署上云,享受 Serverless 技术带来的免运维、低成本、按需扩缩容的众多优势。
  • 异步长时
突破传统 FaaS 形态产品的执行时长的限制,首家支持运行长达 24 小时的长时任务的 FaaS 产品,支持体积较大的音视频文件处理、直播推流、数据分析等多种场景。
  • 大规格函数实例
业界首发支持分配 120GB(122,880MB) 大内存环境,可以更加轻松地处理具有更高内存或更密集计算需求的工作负载,如音视频处理、大数据分析等。

应用场景

  • Serverless 建站
通过 Web Function、容器化镜像等方式平滑把应用迁移至云函数之上,支持托管 H5 页面、API、SSR 应用、小程序等多种形态的应用形式,缩短研发周期,快速收集市场反馈从而加速产品迭代。
  • Serverless 音视频处理
无需运维虚拟机或者其他计算集群,利用云函数提供的极致弹性、按量计费等特性,高效、低成本地进行音视频的录制、转码、混流、剪辑和推流等操作,让企业聚焦于音视频处理逻辑本身,从而不断提升内容质量,优化视听体验。
  • 云服务触发器
可以通过触发器连接其他的云服务,如对象存储(COS)、日志服务(CLS)等其他服务,当上游的数据发送变化的时候自动触发函数执行计算逻辑,典型的使用场景包括:CDN 刷新和预热、中间件消息转存、文件备份等。
  • Serverless 数据处理
支持定时、消息队列等多种形式触发函数执行输出处理逻辑,进行数据采集、数据清洗、ETL 等数据处理操作,处理之后的数据可以直接存储至下游的数据仓库、业务数据库或者 BI 分析系统等。

2. TEM:微服务 Serverless 化

腾讯云弹性微服务 (Tencent Cloud Elastic Microservice, TEM) 是面向微服务应用的 Serverless PaaS 平台,实现 Serverless 与微服务的完美结合,应用零改造上云,按量付费,免运维,提供开箱即用的微服务应用托管服务。
弹性微服务拥抱开源,支持 Spring Cloud 等微服务应用零改造上云,提供应用运行托管、服务注册发现、微服务治理、多维度监控等能力,满足 Consul、Eureka 等多种注册中心需求。弹性微服务帮助您创建和管理云资源,并提供秒级弹性伸缩,您可按需使用、按量付费,极大降低资源和运维成本,让您充分聚焦企业核心业务逻辑,助力业务成功。

优势亮点

  • 免运维
  • 按量付费
  • 极致弹性
  • 快速交付


应用场景

  • 微服务应用托管
弹性微服务通过应用托管、服务注册与发现、服务治理、调用链与多维度监控等功能力,为客户提供开箱即用的微服务解决方案。帮助企业用户快速构建微服务应用,大幅提升运维效率,降低服务治理的复杂度与技术门槛,让企业聚焦核心业务本身,助力客户成功。
  • 突发、潮汐流量
在业务呈现潮汐特性、突发流量等场景下,容易出现访问响应超时、错误率提升等问题。腾讯云弹性微服务提供秒级弹性伸缩能力,帮助企业客户轻松应对流量高峰。
  • 快速迭代
腾讯云弹性微服务帮助客户持续集成与交付,实现微服务应用快速迭代。从代码开发到应用交付,弹性微服务提供 IDE 插件、灰度发布等多发布策略的能力,助力企业客户快速验证业务价值。

3. EKS:原生 K8s 的 Serverless 化

弹性容器服务 EKS(Elastic Kubernetes Service)是腾讯云容器团队的推出的 Serverless 化 Kubernetes 服务,无须用户购买节点,直接部署工作负载。其完全兼容原生 Kubernetes,支持使用原生方式购买及管理资源,按照容器真实使用的资源量计费。
无论是自建 K8s 集群,还是腾讯云 TKE 托管集群,只要网络互通,即可通过部署 EKS 虚拟节点的方式,几乎无成本扩展集群资源池。在扩容 Pod 时可自动或手动快速将 Pod 调度到「虚拟节点」对应的腾讯云公有云资源上。
  • 自建 K8s 集群,手动部署 EKS 虚拟节点:https://github.com/tkestack/charts/tree/main/incubator/tke-resilience

  • TKE集群,可直接通过产品化能力部署;

优势亮点

  • 秒级伸缩

相比传统的通过扩缩服务器去调度资源(流程重,耗时久),虚拟节点提供一种直接调度 Pod 的能力,可以更快、更高效的弹性。

  • 节省成本
  • 按需使用,减少集群预留 buffer,将集群的节点维护在资源利用率更高、使用和预留更合理的水平。
  • 更快、更高效的弹性能力,降低提前预留资源的计费周期。
  • 免去维护服务器的运维成本,


应用场景

  • 微服务场景
使用弹性容器服务 EKS 来运行微服务,免除用户对计算节点的运维工作。服务可根据负载情况自动伸缩,使用最合理的资源量来承载应用,降低资源使用成本。
  • 离线计算场景
使用弹性容器服务 EKS 运行离线计算任务,只需准备容器镜像,即可快速部署任务负载。另外,弹性容器服务 EKS 仅收取任务真实运行时间所使用算力的费用,任务结束 Pod 自动释放即结束计费。
  • 在线推理场景
弹性容器服务 EKS 支持使用 CPU、GPU 以及 vGPU 来运行在线推理服务,丰富的资源规格和弹性伸缩的负载,使运行服务更高效、更经济。


免费体验馆

消息队列CKafka

分布式、高吞吐量、高可扩展性的消息服务,具备数据压缩、同时支持离线和实时数据处理等优点。

扫码即可免费体验

免费体验路径:云产品体验->基础->消息队列CKafka


消息队列TDMQ

一款基于 Apache 顶级开源项目 Pulsar 自研的金融级分布式消息中间件。其计算与存储分离的架构设计,使得它具备极好的云原生和 Serverless 特性,用户按量使用,无需关心底层资源。

扫码点击“立即使用”,即可免费体验


微服务平台TSF

稳定、高性能的技术中台。一个围绕着应用和微服务的 PaaS 平台,提供应用全生命周期管理、数据化运营、立体化监控和服务治理等功能。TSF 拥抱 Spring Cloud 、Service Mesh 微服务框架,帮助企业客户解决传统集中式架构转型的困难,打造大规模高可用的分布式系统架构,实现业务、产品的快速落地。

扫码点击“免费体验”,即可免费体验


微服务引擎TSE

灵活、轻量级、可插拔的组件化微服务解决方案,主要包括三大部分:注册中心、配置中心和服务治理中心。作为一款组件化的产品,每个部分的能力都可以单独使用。适用于微服务架构中的服务注册发现、分布式配置、分布式协调、服务治理等场景

扫码点击“立即申请”,即可免费体验


弹性微服务TEM

面向微服务应用的 Serverless PaaS 平台,实现资源 Serverless 化与微服务架构的完美结合,提供一整套开箱即用的微服务解决方案。弹性微服务帮助用户创建和管理云资源,并提供秒级弹性伸缩,用户可按需使用、按量付费,极大程度上帮用户节约运维和资源成本。让用户充分聚焦企业核心业务本身,助力业务成功。

扫码点击“立即申请”,即可免费体验



往期

推荐


《“0”代码改动,半小时迁移商城业务上微服务平台TSF》

《服务器又崩了?深度解析高可用架构的挑战和实践》

《Kratos技术系列|从Kratos设计看Go微服务工程实践》





扫描下方二维码关注本公众号,

了解更多微服务、消息队列的相关信息!

解锁超多鹅厂周边!


戳原文,了解更多弹性微服务TEM的相关信息


浏览 37
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报