摘要:以“原生蓄力,云领未来”为主题的2021年云原生产业大会上,华为云Serverless函数服务产品经理分享了“华为云Serverless函数服务,让开发上云极简高效”的主题演讲。

5月26日,以“原生蓄力,云领未来”为主题的2021年云原生产业大会在北京启幕,华为云Serverless函数工作流(FunctionGraph)通过了基础能力要求、平台可观测能力、服务性能、服务安全和服务计量准确性等五大类、20+项测试,以稳定、可靠、高效的服务能力荣获可信云函数即服务能力认证。同时,在云原生2.0分论坛环节,华为云Serverless函数服务产品经理分享了“华为云Serverless函数服务,让开发上云极简高效”的主题演讲。

华为云FunctionGraph 荣获可信云函数即服务能力认证

Serverless作为云原生技术发展重要力量之一,开启了应用架构的“无服务器”时代,为架构设计、开发者编程带来了全新的思路。Serverless技术的兴起,极大简化了云计算的编程模型,让开发人员无需关注服务器,聚焦应用创新。

应用架构不断演进 Serverless 2.0 全方位承载高效应用开发

应用复杂度的提升和云计算的发展不断推动应用架构、编程方式的持续演进。从最初的单体架构前期开发简单、快速,随着系统规模增大,因为架构耦合导致的无法独立升级、演进等问题持续放大。架构开始朝着微服务演进并逐渐成为主流,应用按照微服务粒度进行拆分,接口标准化,环境标准化,可以按天或周进行升级发布,帮助应用实现了快速迭代。服务架构给开发者带来了便利,但也带来了复杂度,用户依然需要关注服务器配置、后端服务管等运维工作,无法享受云带来的最大便利。

Serverless架构是在微服务架构基础上的进一步延伸,按照业界通常的定义,Serverless = FaaS(Function as a Service) + BaaS(Backend as a Service)。相比微服务,FaaS将资源调度的粒度缩小到函数,针对无状态、短时处理任务,通过函数式编程方式,进一步降低了应用开发门槛,缩短了应用上线周期。 但当前的FaaS,通常不适合用于长时任务、大数据处理等工作,函数间通信时延性能较低,被称之为Serverless 1.0阶段。

到了Serverless 2.0阶段,将在此基础上大大扩展其应用范围,全场景支持各种应用负载。其典型特征包括:可以支持长时运行的任务;内置数据系统,可以支持有状态函数,支持大数据处理;内置通信系统,函数间可以通过总线进行高性能通信。

华为云Serverless函数工作流FunctionGraph,让开发聚焦应用创新

华为云在Serverless技术的研究和实践过程中提出: Serverless作为云计算下半场的计算范式,需要解决通用应用开发、原有应用系统无缝对接、支持异构硬件等问题,并且有完备的工具链、云服务,才能让更多的开发者享受Serverless带来的红利。

华为云Serverless函数工作流FunctionGraph是一款带编排能力的函数计算服务,提供了界面化管理、一站式的函数开发上线功能,支持6大类语言、支持10+类的函数触发器类型;拥有丰富的触发器类型,通过事件触发集成多种云服务,满足不同场景需求;根据请求的并发数量自动调度资源运行函数,实现按需极速弹性;函数运行实例出现异常,系统会启动新的实例处理后续的请求,实现秒级故障自愈。

基于华为云Serverless的多场景应用与实践落地

Serverless架构所具有的IT资源可根据需求弹性伸缩的特点,从场景上大致可分为以下几类:

类型一:单用途无状态类,典型的应用有小程序后端、Web后端、三方服务商对接等。这类应用使用函数编程可以极大简化开发流程,做到小时级交付。

类型二:事件驱动类,如实时的图片处理、实时的数据流处理、IoT的事件处理等。这是Serverless最典型的一类应用,特点是事件驱动+计算胶水层,计算胶水层的逻辑通过函数来实现。

类型三:弹性伸缩类应用,如视频转码、视频直播、热点事件推送等,这类应用的特征是通常无法预知流量大小,需要基础设施能够做到底层资源无感,自动的快速弹缩而不影响业务层的处理。

在华为云Serverless场景落地方面,已全面实现了在移动端的应用实践。比如:在2020年疫情期间,华为负一屏基于Serverless架构实现了“新型肺炎疫情实时播报”应用一天上线,极大提升了应用开发的敏捷性。

另外一个典型应用场景是关于视频处理中的Serverless实践,此场景中同一个视频直播流里需要插入多个AI特效渲染函数,函数间需要传递大量数据,在现有函数架构下需要经过多次外部存储读写,而通用采用状态内置的函数技术,将一次读写的访问耗时从200ms降低到5ms,从而满足端到端业务时延要求。

在2019年伯克利发布的《Cloud Programming Simplified》展望中,提出Serverless将成为云计算的下一代默认计算范式。 对于云计算应用架构来说,“无服务器”时代的Serverless技术必将引领云计算下一个阶段,华为云亦将聚焦客户价值,聚力云原生2.0 Serverless解决方案,大幕开启,创造无限可能!

点击关注,第一时间了解华为云新鲜技术~

应用架构步入“无服务器”时代 Serverless技术迎来新发展的更多相关文章

  1. 5G 时代,云计算迎来新风口

    云计算是对传统IT模式从底层硬件到业务模式的颠覆,传统IT市场具备万亿级市场空间,目前云计算收入占IT支出占比尚小,渗透率较低,未来空间较大. 短期受到宏观经济等因素影响,云巨头资本开支增速有所波动, ...

  2. 5分钟Serverless实践:构建无服务器的图片分类系统

    前言 在过去“5分钟Serverless实践”系列文章中,我们介绍了如何构建无服务器API和Web应用,从本质上来说,它们都属于基于APIG触发器对外提供一个无服务器API的场景.现在本文将介绍一种新 ...

  3. 开放下载 | 《Knative 云原生应用开发指南》开启云原生时代 Serverless 之门

    点击下载<Knative 云原生应用开发指南> 自 2018 年 Knative 项目开源后,就得到了广大开发者的密切关注.Knative 在 Kubernetes 之上提供了一套完整的应 ...

  4. 由浅入深SCF无服务器云函数实践

    欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:陈杰,腾讯云架构平台部技术专家 近年来,互联网服务从一开始的物理服务器托管,虚拟机,容器,发展到现在的云函数,逐步无服务器化,如下表所示. ...

  5. 无服务器架构(Faas/Serverless)

    摘要无服务器架构(Faas/Serverless),是软件架构领域的热门话题. AWS,Google Cloud和Azure - 在无服务器上投入了大量资金,已经在看到了大量专门针对Faas/Serv ...

  6. Serverless无服务器架构详解

    本文对Serverless架构的基础概念.具体产品.应用场景.工作原理进行详细解析. 基础概念 Serverless: 无服务器架构,即在无需管理服务器等底层资源的情况下完成应用的开发和运行,是云原生 ...

  7. 你有了解过无服务器架构(Serverless)数据库吗?

    你有了解过无服务器架构(Serverless)数据库吗? 什么是Serverless呢?简单理解,Serverless 分为  FaaS 和 BaaS 两个部分,其中 FaaS 指的是函数即服务,Ba ...

  8. 专访阿里云 Serverless 负责人:无服务器不会让后端失业

    2012 年,云基础设施服务提供商 Iron.io 的副总裁 Ken 谈到软件开发行业的未来,首次提出了 Serverless 的概念,为云中运行的应用程序描述了一种全新的系统体系架构.此后,以 AW ...

  9. 5分钟Serverless实践 | 构建无服务器的敏感词过滤后端系统

    前言 在上一篇“5分钟Serverless实践”系列文章中,我们介绍了什么是Serverless,以及如何构建一个无服务器的图片鉴黄Web应用,本文将延续这个话题,以敏感词过滤为例,介绍如何构建一个无 ...

  10. 5分钟Serverless实践 | 构建无服务器图片鉴黄Web应用

    Serverless是什么 Serverless中文译为“无服务器”,最早可以追溯到2012年Ken Fromm发表的<Why The Future Of Software And Apps I ...

随机推荐

  1. MAC安装pwntools记录

    1.使用python3安装pwntools pip3 install pwntools 2.安装成功后测试 测试不成功提示安装 binutils pwnlib.exception.PwnlibExce ...

  2. mybatis plus很好,但是我被它坑了!

    作者今天在开发一个后台发送消息的功能时,由于需要给多个用户发送消息,于是使用了 mybatis plus 提供的 saveBatch() 方法,在测试环境测试通过上预发布后,测试反应发送消息接口很慢得 ...

  3. HTML DOM 之一:访问、修改、删除HTML内容

    什么是 DOM? DOM 是 W3C(万维网联盟)的标准. DOM 定义了访问 HTML 和 XML 文档的标准: "W3C 文档对象模型 (DOM) 是中立于平台和语言的接口,它允许程序和 ...

  4. Java中Synchronized的用法(转)

    原文:http://blog.csdn.net/luoweifu/article/details/46613015 作者:luoweifu 转载请标名出处 <编程思想之多线程与多进程(1)--以 ...

  5. 浅析KV存储之长尾时延解决办法

    本文分享自华为云社区<浅析KV存储之长尾时延问题,华为云 GeminiDB Redis 探寻行业更优解决方案!>,作者:华为云数据库GaussDB NoSQL团队. 目前,KV存储的广泛使 ...

  6. Kubernetes:kube-apiserver 之准入

    kubernetes:kube-apiserver 系列文章: Kubernetes:kube-apiserver 之 scheme(一) Kubernetes:kube-apiserver 之 sc ...

  7. AcWing 456. 车站分级

    原题链接AcWing 456. 车站分级 抽象出题意,停靠过的车站的等级一定严格大于为停靠过的车站的等级,且不存在环,例如车站\(A\)等级大于车站\(B\),则\(A >= B + 1\),不 ...

  8. JuiceFS 用户必备的 6 个技巧

    随着大数据.AI 技术的发展,越来越多的企业.团队和个人开始使用 JuiceFS,本文整理了 6 个超实用的 JuiceFS 技巧,帮助大家提升 JuiceFS 的管理效率. 一.查看已挂载的文件系统 ...

  9. 关于git 解决分支冲突问题(具体操作,包含截图,教你一步一步解决冲突问题)

    当在Git中有多个开发者在同一个分支上工作时,可能会发生分支冲突.分支冲突指的是多个开发者在同一时间修改相同的代码文件,导致Git无法自动合并这些更改. 比如说:我在github上进行了md文件的修改 ...

  10. [ABC309Ex] Simple Path Counting Problem

    Problem Statement We have a grid with $N$ rows and $M$ columns. We denote by $(i,j)$ the cell in the ...