Serverless 架构在前端应用领域的价值|学习笔记

简介: 快速学习 Serverless 架构在前端应用领域的价值

开发者学堂课程【Serverless 架构在前端应用领域的价值:Serverless 架构在前端应用领域的价值】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/845/detail/14015


Serverless 架构在前端应用领域的价值

l 前端发展史简介

l 前端的诞生

1990 年,第一个 Web 浏览器诞生,1991 年万维网诞生,标志着前端技术的开始。

l 前端的应用场景变迁

l 前端开发语言能力的变化

l Serverless 又给前端带来了什么?

思考三个问题:

Serverless 跟前端的关联在什么地方?

Serverless 跟做客户端开发的有没有关系?

Serverless 带给 web 开发的改变是什么?

 

l Serverless跟前端的关联

Javascript、python 这类解析执行型的语言,天然对 Serverless 冷启动有着友好的支持,成为 Serverless 语言开发的主力。

58% 的用户使用 Python , Node.js 则占据了 31% 的份额,Java、Go、.NET Core和 Ruby 的份额均未超过 10%。

小型的 lambda 运行环境中,Nodejs 份额高于 Python,企业级组织中,Python 的使用频率则是 Nodejs 的4倍。

l 站在 Serverless 肩上

前端工程师构建服务的能力无限加强

前端工程师的生产力也大幅提高。

快速交付

u 不用再搭建服务器,不用为保障高可用,安全编写非业务代码,可以大幅缩短项目交付的时间

运维无忧

u Serverless 服务可以完成自动扩缩容,不用担心大规模流量冲击完备的监控告警体系和链路追踪能力方便故障定位

成本降低

u 用完即走的特性可以帮助避免计算资源的浪费

l Serverless跟做客户端开发的有没有关系?

图片8.png

传统的客户端想操作服务器上的数据库必须经过服务端。

图片9.png

客户端跟网关的通道建成后,可以透明化对服务逻辑的调用,可以让客户端看起来可以直接操作数据库,文件存储,登录注册等服务端的功能。

l Serverless 带来新的客户端访问服务端形式

Serverless 让通用的服务端能力形态沉淀成 BAAS,再通过 graphql 建立数据通道来让不同的客户端直接访问,可以进一步提升前端应用的开发效率,这也会成未来端侧访问服务的新形态。


l Serverless 带给 web 开发的改变是什么?

传统的 web 站点的开发流程:

图片10.png

l 传统 web 站点开发的问题

1. 耗时长:从设计开发测试部署上线往往经历数周甚至数月才能有上线。

2. 访问体验一般:SEO,站点加速等都需要单独专项做,一般新手不太容易搞定。

3. 更新迭代慢:每次更新重新部署上线的周期长,更新内容如果是动态的研发时间也会比较长。

 

l 现代化Web 站点构建介绍

l 建站演示

准备工作:

1. 进入 Serverless devs官网,下载桌面开发工具 Serverless Desktop (支持windows 和 mac 版)。

2. 申请注册阿里云账号,并开通阿里云函数计算产品(免费开通)。

创建演示步骤:

打开 start—jamstack,点击下载,在本地选择一个合适目录,填写预置参数时写用户自定义域名确认配置,点击执行,启动应用,回到工作空间,点击应用信息部分的域名,站点创建完毕。

打开基本信息面板,点击图标,使用任意 IDE 打开项目,进入 serverlessdevs-website 项目下进行应用安装,启动会自动打开一个预览环境,然后在源代码目录下做一次源代码更新,对当前源代码进行构建,生成一个静态的目录。回到配置信息面板,再执行一次部署,可以看到应用已经完成一次更新。

动态编程操作:

站点是纯静态的怎么具备一些动态能力?

打开代码,contributor 目录,在命令行输入

scli kv put contributor.json_kv/contributor.json  现在已经成功把 contributor 的内容做了一次上传,而 contributor.Json 这个名字有一个可以直接访问的能力。具体怎么通过站点去访问 contributor 的内容呢?官方提供了一个固定的路径

就可以访问到刚才上传上去的内容。

l 端云调试

调试始终是 Serverless 应用的最棘手的部分,我们开发的应用是在本地,部署的应用是在线上。并且线上的环境跟本地开发环境有着巨大的差异,通常我们只能通过在线打印输出,然后还得通过日志平台查看日志判断问题,再回来本地修改代码,一来一回耗时非常巨大,而且效果也不好。Serverless Devs 提供了自己的解决方案,我们巧妙的设计了一个在线的辅助函数,辅助函数完整复刻线上代码,然后通过本地跟辅助函数建设通道实现本地的代码调试效果。

基于这样的能力我们再来看看具体怎么在 Serverless Hub 实施的, 本次演示使用的是 Serverless Desktop, 大家可以尝试跟着我的操作步骤进行使用:

1. 新建一个 Serverless 应用,并把它部署到线上

我们可以通过 Serverless Desktop 的应用市场搜索 xxx 应用模板,然后加载到本地,然后通过可视化配置部分修改相应的服务和函数内容,进行部署。

2. 进入工作空间->应用管理->应用详情->端云调试

按照提示准备好前置条件,比如安装docker demon 指定调试端口,启动资源准备,这个时候会创建辅助函数,同时构建 vscode 的 debug 文件。

启动好之后,使用 vscode 打开工程目录,查看debug配置文件.vscode/launch.json

以这个启动 debug 模式

3、发起调用

切换到"本地调试配置"面板,点击"发起调用"

可以发现  vscode 触发调试

调试结束回到 Serverless Desktop 页面,我们可以看到输出效果:

这里我们发起调用是向这个服务的根目录发起,如果我们想向其他的路由地址发起调用该怎么操作呢?我们可以复制发起调用后输出的基础地址。

然后贴到 postman, 再往后拼接上我们的测试路由地址,比如,想访问"/appCenter/getSpecial",可以拼接成"<基础地址>/appCenter/getSpecial"然后"Send"这个请求。

通过这样的方式我们可以深入细节知道每一行代码的调用问题到底出在哪里,极大的提高了我们的开发效率。

4、清空环境

调试结束后不要忘了清楚调试环境,包括关闭本地的容器地址,以及清理线上的函数。

综上我们完成了一次完整的调试过程。


l 总结

新一代的 web 研发范式:

1. 研发阶段:按需的动态化

站点保持静态化可以有很多优势,诸如安全,访问快速,搜索引擎友好等。但动态化是不可避免的,只不过动态数据可以按需设定,并非纯粹API。

2. 部署阶段:动静态部署分离

最大化的利用云服务的优势静态资源存储到 OSS 上,并借由 CDN 加速实现极致访问,动态接口则托管到 Serverless 平台,最大限度的利用其单性伸缩,安全容错的优势。

3. 上线交付阶段:交付优先,极致体验

站点可以快速提供线上预览能力,上线后,访问性能,安全,搜索优化等都需要具备。

4. 持续集成:敏捷开发,迭代快速

功能的开发到更新优化实现流程自动化,需使用。

相关实践学习
【玩转ComfyUI】基于函数计算一键部署AI生图平台ComfyUI
本次实验将带大家通过使用阿里云产品函数计算FC,快速使用ComfyUI实现更高质量的图像生成。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
9月前
|
人工智能 运维 Kubernetes
Serverless 应用引擎 SAE:为传统应用托底,为 AI 创新加速
在容器技术持续演进与 AI 全面爆发的当下,企业既要稳健托管传统业务,又要高效落地 AI 创新,如何在复杂的基础设施与频繁的版本变化中保持敏捷、稳定与低成本,成了所有技术团队的共同挑战。阿里云 Serverless 应用引擎(SAE)正是为应对这一时代挑战而生的破局者,SAE 以“免运维、强稳定、极致降本”为核心,通过一站式的应用级托管能力,同时支撑传统应用与 AI 应用,让企业把更多精力投入到业务创新。
876 30
|
10月前
|
存储 人工智能 Serverless
函数计算进化之路:AI 应用运行时的状态剖析
AI应用正从“请求-响应”迈向“对话式智能体”,推动Serverless架构向“会话原生”演进。阿里云函数计算引领云上 AI 应用 Serverless 运行时技术创新,实现性能、隔离与成本平衡,开启Serverless AI新范式。
931 12
|
SQL 分布式计算 Serverless
鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用
鹰角网络为应对游戏业务高频活动带来的数据潮汐、资源弹性及稳定性需求,采用阿里云 EMR Serverless Spark 替代原有架构。迁移后实现研发效率提升,支持业务快速发展、计算效率提升,增强SLA保障,稳定性提升,降低运维成本,并支撑全球化数据架构部署。
1494 56
鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用
|
12月前
|
数据采集 人工智能 安全
开源赋能双碳:MyEMS 能源管理系统的架构与实践价值
在全球碳中和趋势与“双碳”目标推动下,能源管理趋向精细化与智能化。MyEMS是一款基于Python开发的开源能源管理系统,具备灵活适配、功能全面的优势,覆盖工厂、建筑、数据中心等多元场景。系统支持能源数据采集、分析、可视化及设备管理、故障诊断、AI优化控制等功能,提供“监测-分析-优化”闭环解决方案。遵循“国家+省级+接入端”三级架构,MyEMS在重点用能单位能耗监测中发挥关键作用,助力实现能源效率提升与政策合规。开源模式降低了技术门槛,推动“双碳”目标落地。
409 0
|
存储 编解码 Serverless
Serverless架构下的OSS应用:函数计算FC自动处理图片/视频转码(演示水印添加+缩略图生成流水线)
本文介绍基于阿里云函数计算(FC)和对象存储(OSS)构建Serverless媒体处理流水线,解决传统方案资源利用率低、运维复杂、成本高等问题。通过事件驱动机制实现图片水印添加、多规格缩略图生成及视频转码优化,支持毫秒级弹性伸缩与精确计费,提升处理效率并降低成本,适用于高并发媒体处理场景。
1686 0
|
10月前
|
人工智能 运维 安全
聚焦 AI 应用基础设施,云栖大会 Serverless AI 全回顾
2025 年 9 月 26 日,为期三天的云栖大会在杭州云栖小镇圆满闭幕。随着大模型技术的飞速发展,我们正从云原生时代迈向一个全新的 AI 原生应用时代。为了解决企业在 AI 应用落地中面临的高成本、高复杂度和高风险等核心挑战,阿里云基于函数计算 FC 发布一系列重磅服务。本文将对云栖大会期间 Serverless+AI 基础设施相关内容进行全面总结。
|
10月前
|
人工智能 Serverless API
函数计算的云上计费演进:从请求驱动到价值驱动,助力企业走向 AI 时代
函数计算计费方式历经三阶段演进:从按请求计费,到按活跃时长毫秒级计费,再到按实际资源消耗分层计费。背后是资源调度、安全隔离与开发体验的持续优化。尤其在AI时代,低负载减免、会话亲和等技术让计费更贴近真实价值,推动Serverless向“按需使用、按量付费”终极目标迈进。
|
10月前
|
前端开发 JavaScript 应用服务中间件
在Docker部署的前端应用中使用动态环境变量
以上步骤展示了如何在 Docker 配置过程中处理并注入环墨遁形成可执行操作流程,并确保最终用户能够无缝地与之交互而无须关心背后复杂性。
544 13
|
10月前
|
人工智能 Serverless API
函数计算的云上计费演进:从请求驱动到价值驱动,助力企业走向 AI 时代
在 AI 时代,函数计算一直坚持走向“让开发者只关心业务逻辑,云厂商自动完成一切资源管理与调度”的愿景,最终让计算像水、电一样随时可得、按实际使用价值付费。
|
10月前
|
人工智能 Kubernetes 安全
重塑云上 AI 应用“运行时”,函数计算进化之路
回顾历史,电网的修建,深刻地改变了世界的经济地理和创新格局。今天,一个 AI 原生的云端运行时的进化,其意义也远不止于技术本身。这是一次设计哲学的升华:从“让应用适应平台”到“让平台主动理解和适应智能应用”的转变。当一个强大、易用、经济且安全的 AI 运行时成为像水电一样的基础设施时,它将极大地降低创新的门槛。一个独立的开发者、一个小型创业团队,将有能力去创造和部署世界级的 AI 应用。这才是技术平权的真谛,是激发全社会创新潜能的关键。

热门文章

最新文章

相关产品

  • 函数计算