《五天玩转EMAS Serverless》——第一节 初识EMAS Serverless【中】

本文涉及的产品
移动研发平台 EMAS,开发者版免费套餐
简介: 本文整理自EMAS Serverless讲师柳色在《5天玩转EMAS Serverless训练营》的分享。本篇内容主要分为四个部分:1.EMAS Serverless使用场景2.EMAS Serverless产品能力 3.云函数是怎样工作的4.控制台功能演示

接上篇:

https://developer.aliyun.com/article/1224201?spm=a2c6h.13148508.setting.14.4f394f0em1x0Jq


三、 云函数是怎样工作的

image.png

接下来,讲一下EMAS Serverless云函数的工作原理。

 

如上图所示,左侧是用户操作部分。开发人员编写业务代码,把业务代码打包上传到EMAS Serverless的控制台并点击部署按钮即可。

 

小程序用户可以通过三种方式运行云函数:

 

1. 通过集成EMAS Serverless SDK调用云函数。它是一种同步调用,会把云函数的运行结果返回给用户。这是最常用的集成方式,用在小程序中和后端处理业务数据。

2. 用户也可以通过配置http触发功能,通过http请求调用云函数。

3. 开发者可以通过配置定任务时触发运行云函数。

 

当云函数运行之后会产生一个日志方便用户调试。通过日志系统,开发者可以在控制台查看日志确认函数是否运行成功。

 image.png

当EMAS Serverless收到一个运行请求要运行云函数。

 

首先系统进入系统冷启动阶段。冷启动主要包括后端调度一个实例容器,下载代码并解压以及启动实例。

 

然后当实例完成冷启动后,实例进入到运行阶段。首先会运行一个初始化函数。然后开始执index函数。当函数运行完成后进入实例释放时间。

 

如上图所示,假设在t3之前,EMAS Serverless收到了第二个请求EMAS Serverless会直接跳到执行函数阶段。

 

当第二个请求执行完成,EMAS Serverless会重新计算实例释放时间当没有新的请求进入后,这个实例会被回收。

 

此时,如果EMAS Serverless收到了第三个请求由于实例已经回收EMAS Serverless会重新进入系统冷启动阶段。

image.png

接下来,我们实战运行一个云函数。

 

首先,选中一个项目空间进入云函数控制台并新建一个云函数TwoNumberSum。

 

在本地电脑上新建文件index.js,并输入以下代码:


module.exports = async ctx => {

const x = ctx.args.x

const y = ctx.args.y

const sum = x + y

ctx.logger.info('first num: %d', x)

ctx.logger.info('second num: %d', y)

return sum

};

将该文件打包成zip文件。

image.png

进入函数开发页面,上传更新js包上传代码包,然后点击代码部署。

image.png

代码部署成功之后,在EMAS Serverless控制台,输入参数{"x": 1, "y": 2}运行云函数。

image.png

点击日志页面,即可查询函数的运行日志。

image.png

接下来,看看怎样在小程序里使用云函数。

 

打开支付宝的小程序开发工具。关键代码为serverless.function.invoke('twoNumberSum', {num1, num2})。即可完成云函数调用。invoke接收两个参数,分别是函数名字和函数入参对象。


接下篇:

https://developer.aliyun.com/article/1224193?groupCode=emas

 

相关文章
|
2月前
|
缓存 前端开发 JavaScript
|
6月前
|
Serverless PyTorch 文件存储
EMAS Serverless文件存储问题之上传视频真机报错如何解决
在进行Serverless应用开发和部署时,开发者可能会遇到不同类型的报错信息;本合集着重收录了Serverless环境中常见的报错问题及其解决策略,以助于开发者迅速诊断和解决问题,保证服务的连续性和可用性。
435 1
|
存储 小程序 IDE
EMAS Serverless搭建《私人云相册》小程序
基于EMAS Serverless的云函数、云数据库、云存储等云服务能力一站式快速开发一个小程序。
EMAS Serverless搭建《私人云相册》小程序
|
开发框架 Serverless 文件存储
EMAS Serverless文件存储的uploadFile方法
EMAS Serverless文件存储的uploadFile方法
159 1
|
2月前
|
人工智能 自然语言处理 Serverless
阿里云函数计算 x NVIDIA 加速企业 AI 应用落地
阿里云函数计算与 NVIDIA TensorRT/TensorRT-LLM 展开合作,通过结合阿里云的无缝计算体验和 NVIDIA 的高性能推理库,开发者能够以更低的成本、更高的效率完成复杂的 AI 任务,加速技术落地和应用创新。
149 13
|
3月前
|
机器学习/深度学习 机器人 Serverless
FaaS 的应用场景
FaaS 的应用场景
|
3月前
|
Serverless API 异构计算
函数计算产品使用问题之修改SD模版应用的运行环境
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
3月前
|
运维 Serverless 网络安全
函数计算产品使用问题之通过仓库导入应用时无法配置域名外网访问,该如何排查
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
16天前
|
运维 Serverless 数据处理
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
51 1
|
20天前
|
运维 监控 Serverless
Serverless架构在图像处理等计算密集型应用中展现了显著的优势
Serverless架构在图像处理等计算密集型应用中展现了显著的优势
30 1

热门文章

最新文章

相关产品

  • 移动研发平台