ITBEAR科技资讯
网站首页 科技资讯 财经资讯 分享好友

智汇华云 | 初识 Serverless

时间:2022-11-02 17:00:46来源:互联网编辑:茹茹

背景

从部署物理机到虚拟机过程中,云计算通过虚拟化的方式对算力资源进行了更高效的分配。为了更细粒度的分配,容器在云计算发展浪潮中诞生了。那有没有可能再进一步,将一次业务执行作为单元进行算力分配呢?每当执行的时候才分配一次资源,否则不消耗。

答案就是 Serverless

什么是 Serverless

Serverless (无服务器架构)并不是严格意义上的无服务器,因为无论如何抽象或者封装底层设备,程序总是要有一个服务器作为物理载体才能运行。Serverless 的概念更加强调计算资源的自由扩展,无需手动人工配置。

Serverless 是由事件驱动的全托管计算服务。用户无需管理服务器等基础设施,只需要编写代码和选择触发器(比如 RPC 请求,定时器等)并上传。其余的工作(如实例选择,扩缩容、监控、日志、容灾、部署等)全部由 Serverless 系统托管。

Serverless 通常包含了两个领域 BaaS和 FaaS,其中 BaaS 可以理解成特定类型的托管服务,例如数据库服务、对象存储服务、日志服务等等,而 FaaS 即为云函数计算服务,提供核心的逻辑处理。

Serverless 实践

基于 Kubernetes 的 Serverless framework 有很多,例如 Knative、OpenFaaS、OpenWhisk 等等,这里以 OpenFaaS 为例。

OpenFaaS 部署

OpenFaaS 可以通过 arkade、helm3 以及 manifests yaml 等方式部署,部署后共有以下组件:

为了方便后续函数管理,这里也一并部署了 faas-cli,并配置了 Gateway Service 暴露的入口地址:

OpenFaaS 工作流程

OpenFaaS Gateway

Gateway作为请求网关,当要部署或者调用一个函数的时候,Gateway会将请求转发给Provider(faas-netes),同时会将监控指标发给Prometheus。alertManager会根据需求,调用API自动伸缩函数。

Prometheus & alertManager

收集 Gateway 的 auto-scaling 指标,结合实际情况,自动伸缩函数的规模。

NATS Streaming

NATS Streaming 是由 NATS 驱动的数据流系统,在保证吞吐量和时延的基础上,解决了Nats消息投递一致性的问题。在 OpenFaaS 中作为处理函数调用的低延迟队列。

faas-netes

faas-netes 是faas-provider 的官方实现。

faas-provider 中定义了一些基本的 faas handler规范,如下所示:

OpenFaaS 使用

OpenFaaS 创建函数可以通过 REST API,faas-cli 或者 GateWay UI 三种方式创建,这里以 faas-cli 为例:

下载模版

首先下载官方提供的语言模版,模版支持 go,java11,python2(3),php7(8),ruby 等诸多语言

生成应用

通过 faas-cli new 创建一个 go 应用,修改 handler 函数,简单模拟一个计算服务(计算入参的和):

#FormatImgID_10#

构建镜像

#FormatImgID_11#

部署应用

#FormatImgID_12#

服务访问

#FormatImgID_13#

也可以通过界面访问或者部署服务

#FormatImgID_14#

自动扩缩容

#FormatImgID_15#

可以通过 label 的配置,将服务默认为0副本,当请求到达时,会根据副本范围、缓冲期,扩缩模式等规格自动扩容,请求结束后,并自动缩容。

OpenFaaS 自动扩缩容源码分析

Prometheus将监控指标发给alertManager之后,alertManager会调用 /system/alert接口,这个接口的handler是由handlers.MakealertHandler方法生成。MakealertHandler方法接收的参数是ServiceQuery。ServiceQuery是一个接口,它有两个函数,用来获取或者设置最大的副本数。

MakealertHandler的函数主要是从http.Request中读取body,然后反序列化成Prometheusalert对象:该对象是一个数组类型,支持对多个函数进行缩放。反序列化之后,调用handlealerts方法,而handlealerts对alerts进行遍历,针对每个alerts调用了scaleService方法。scaleService才是真正处理伸缩服务的函数。

Serverless 使用场景

在了解 Serverless 的应用场景之前,首先总结一下它的技术特点:

快速迭代与部署

高并发、高弹性

稳定、可靠、安全

运维与成本控制

如果应用复杂有显著的波峰波谷、对快速迭代有强烈诉求,Serverless 就可以发挥显著的作用。

但是,由于Serverless 的无状态性,状态管理和共享仍然很困难,因此在使用场景下也具有局限性。

综合而言,Serverless 比较适合以下场景:

机器学习及 AI 模型处理

图片处理、文件处理以及流处理

IoT 后端及移动后端

Serverless 的价值

无服务器管理

无需预置或维护任何服务器。无需安装、维护或管理任何软件或运行时。

灵活扩展

应用程序可自动扩展,或通过切换占用资源(如吞吐量、内存)的单位数(而不是切换单个服务器的单位数)来调整容量,从而实现扩展。

按价值付费

为一致的吞吐量或执行持续时间(而不是服务器单元)付费。

自动化的高可用

无服务器应用程序提供内置可用性和容错功能。无需构建这些功能,因为运行此应用程序的服务在默认情况下会提供这些功能。

Serverless 现阶段的不足

状态管理

要想实现自由的缩放,应用的无状态是必须的,而对于有状态的服务而言,使用 Serverless 就丧失了灵活性,有状态服务需要与存储交互就不可避免的增加了延迟和复杂性。

延迟

应用程序中不同组件的访问延迟是一个大问题,传统架构中可以通过专有的网络协议、RPC 调用、实例拓扑等方面优化,而 Serverless 应用程序是高度分布式、低耦合的,这就意味着延迟将始终是一个问题,单纯使用 Serverless 的应用程序是不太现实的。

结语

Serverless 的出现能够解决备份容灾、计费方式、弹性伸缩、资源分配的等棘手问题,尽管现阶段 Serverless 架构存在很多不足,但是诸多的优良特性决定它是大势所趋。随着Serverless 生态圈多样化发展,它无疑是非常令人期待并且前景光明的方向。

更多热门内容
2025上半年营收破百亿,九号公司靠智能两轮车杀出重围
九号公司2025半年报一出来,我注意到一个很有意思的点:公司上半年在研发上的投入达到5.22亿元,同比大涨49.5%。在行业竞争越来越激烈的情况下,能这么大幅加码研发,说明九号是真的在靠技术拉开差距。截至期末,九号公司全球专利总数已经达到5982项,产品也在不断创新

2025-08-03

联想集团AI赋能广东省超,科技助力“全民快乐足球”
8月3日,广东省足球超级联赛(下称广东省超)2025赛季启动发布会在广州举办,正式宣布联想集团成为“广东省超联赛官方AI技术合作伙伴”。业内分析认为,具有蓬勃活力与高涨参与热情的民间赛事与全球领先AI科技企业携手践行“足球,AI就玩了”的快乐足球理念,为这场覆盖广

2025-08-03

TCL携全场景电竞显示产品与智慧终端亮相2025ChinaJoy展会
8月1日,全球数字娱乐盛会ChinaJoy2025在上海新国际博览中心盛大开幕。TCL科技与TCL实业两大产业集团联合策展,由TCL华星携手三星、联想、华硕、AOC、飞利浦、iQOO、Acer、MSI、LG、雷鸟等品牌合作伙伴联合参展,全面展示TCL华星在电竞显示领域创新与TCL实业在智能终端

2025-08-02

一加高调亮相 2025 ChinaJoy,四大游戏体验区燃炸全场
8 月 1 日,2025 年中国国际数码互动娱乐展览会(ChinaJoy)盛大开幕。一加手机以“上车 MVP,当场换新机”为活动主题,携三大性能旗舰产品一加 13、一加 Ace 5 和一加 13T 强势亮相骁龙主题馆,并在展会现场设置四大游戏主题体验区,搭载骁龙 8 至尊版和一加独家自研芯片

2025-08-02

BLACKPINK出道九周年 网易云音乐成巡演快闪独家合作音乐平台
2025年8月2日,全球顶级艺人BLACKPINK官宣入驻网易云音乐,并通过独家中文笔记向平台乐迷分享了最新动态。YG娱乐联合CASTER STAR、网易云音乐在中国开展BLACKPINK WORLD TOUR POP-UP STORE(全球巡演中国快闪)活动。作为本次快闪的独家合作音乐平台,网易云音乐倾力打造

2025-08-02

创想三维亮相 ChinaJoy, 3D打印赋能动漫次元
8 月 1 日,2025 ChinaJoy 在上海新国际博览中心盛大开幕。全球消费级3D打印生态领创者创想三维携手京东打造3D打印展区,携全品类设备强势登陆,以 “科技赋能娱乐” 为核心,给观众带来一场融合 3D 打印、动漫与互动体验的创意盛宴。作为中国乃至全球数字娱乐产业的风

2025-08-02

2025按摩椅十大品牌排名最新榜单深度解析
面对市面上琳琅满目的按摩椅品牌,从国产到进口,价格从几千到上万,哪些品牌才是真正专业高品质,什么样的按摩椅才是真按得舒服?下面将基于市场认可度和用户口碑,解析2025年按摩椅品牌排行榜前十名,为消费者避开营销迷雾,助您做出明智选择。2025年十大按摩椅品牌:

2025-08-02

开源大模型史上最高分!阿里千问3性能全球第三
8月2日凌晨,国际权威大模型评测 Chatbot Arena更新了最新一期的大模型榜单,上周新鲜开源的阿里千问3新模型斩获1433分,超越顶尖闭源模型Grok4、Claude4,位列所有闭源及开源模型的全球总榜第三,是全球最强非推理(non-thinking)模型,并创下全球开源模型和国产模型的

2025-08-02

蚂蚁数科 Agentar 企业级智能体开发平台:五大支撑驱动金融新质生产力可信跃迁
蚂蚁数科的 Agentar 企业级全栈智能体平台,通过五大核心支撑构建起金融领域智能应用的可信底座,既突破了金融场景的专业性、复杂性壁垒,又确保了技术应用的合规性与可靠性,最终推动金融新质生产力实现跃迁。支撑一:企业级全栈智能体平台,夯实技术底座平台以 “1000

2025-08-02

蚂蚁 Agentar-Fin-R1:以大模型能力重构企业级智能体开发平台全栈范式
在智能化开发转型的深水区,全栈开发能力已成为智能体规模化落地的核心竞争力。蚂蚁集团推出的 Agentar-Fin-R1 金融大语言模型,通过与 Agentar 企业级智能体开发平台的深度耦合,实现了从数据治理、模型训练到应用落地的全流程赋能,重新定义了金融智能体开发的效率、

2025-08-02