检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
API或者云服务事件源触发函数执行。 根据客户端是否需要等待函数的处理结果,函数的调用可分为同步调用和异步调用两种方式。 约束与限制 同步调用场景下,函数最大运行时长限制为15分钟。 异步调用场景下,函数最大运行时长限制为12小时(通过白名单配置)。 如果函数执行端到端时延超过90s,建议使用异步
配置函数的异步调用策略 在异步调用函数的场景下,FunctionGraph会将请求排队,不等待函数的执行结果,直接向客户端返回响应,这种情况下客户端无法实时感知函数的执行结果。如果需要设置异步请求失败重试或者获取异步请求的结果通知,可以通过设置异步配置实现。 失败重试:用户代码异
处理图片 图片上传至your-bucket-input桶,使用工具模拟客户端触发函数流运行,将上传图片旋转180°,并以流数据返回给客户端。 上传图片 登录对象存储服务控制台,进入your-bucket-input桶对象界面,上传image.jpeg图片如图1,上传完成后如图2所示。
配置函数的别名 FunctionGraph支持为函数创建别名,并关联指定版本的函数。客户端通过别名调用函数时,即可调用到指定版本的函数。在实际业务场景下,可以通过修改在别名上配置的版本,实现函数版本的更新和回滚,客户端无感知。 一个别名支持配置最多两个函数版本,并为两个版本分配不同的权重,实现灰度发布。
准备 创建IoTDA 转发规则前,需要先创建IoTDA实例,在正常的使用中还需要创建产品,设备。在本案例中仅进行测试,只需要先创建IoTDA实例。 创建IoTDA IoT实例 登录IoTDA控制台,左侧导航栏选择“IoTDA实例”,进入选择界面。 在“IoTDA实例”界面右侧,单击“购买实例
进阶使用:使用API模式访问应用 通过应用中心部署的Stable Diffusion应用默认未启用API访问,可以通过配置函数环境变量的方式启用。 使用API模式访问应用 进入Stable Diffusion应用详情页,在“资源”列表中找到逻辑名称为“stable_diffusi
使用容器镜像创建并执行事件函数 本章节将以使用容器镜像方式创建事件函数为例,介绍容器镜像函数的创建及测试过程。用户需要在镜像中实现一个http server,并监听8000端口接收请求。其中,请求路径/init 默认为函数初始化入口,请根据需要实现该接口。请求路径/invoke为
FunctionGraph函数模型 介绍FunctionGraph函数模型的返回字段。 函数模型 FunctionGraph函数模型如下。 { "functions": [ { "func_urn": "urn:fss:xxxxxx
使用空白模板创建并执行函数 本章节介绍如何在函数工作流控制台使用空白模板快速开发一个简单的Hello World函数。该章节以创建HelloWorld事件函数为例,介绍函数的创建及测试过程,供您快速体验FunctionGraph函数的基本功能。 准备工作 注册华为账号并实名认证。
案例概述 场景介绍 FunctionGraph支持在函数内访问客户的Redis数据库。本文介绍如何使用FunctionGraph和Redis客户端的能力,实现一个高可定制、高可靠、高可观测的最佳实践。 实现流程 表1 使用FunctionGraph函数访问Redis数据实现流程 序号 步骤
js文件,引入express框架,接收POST请求,打印请求Body到标准输出并返回Hello FunctionGraph, method POST给客户端。 const express = require('express'); const PORT = 8000; const app
安全认证:此处为方便测试,配置“None”,实际业务请选择更安全的认证方式,例如IAM认证等。 请求协议:选择“HTTPS”。 后端超时(毫秒):默认5000毫秒。 端到端测试 在本地创建app.log文件,内容自定义,此处简单举例: start something run stop all 以curl工具为例(curl
配置函数的环境变量 FunctionGraph支持为函数设置环境变量,可以在不修改代码的情况下,将动态参数传递到函数,调整函数的执行行为。 环境变量在函数中适用于以下场景: 区分多环境:相同的函数逻辑,可根据部署环境的不同,配置不同的环境变量以区分。例如,通过环境变量给测试和开发环境配置不同的数据库。
配置函数的版本 函数在开发、测试、生产过程中,可以发布一个或多个版本,实现对函数代码的管理。版本相当于函数的快照,可对应代码里的Tag,每个函数版本都会有对应的函数代码、配置等。 函数版本发布后,您可以根据实际需要修改版本配置信息,但版本的代码无法更新,以保证版本的稳定性和可追溯性。
附录:CodeArts IDE Online使用方法 用户在编辑函数代码时支持类似工程方式的管理,可以创建文件、文件夹并对其进行编辑。使用函数工作流控制台中的在线代码编辑器,可以在线编写函数代码,如果代码是上传zip包的方式,则前端进行相应解压展示,并支持在线编辑修改。同时,在线
Initializer能力,通过该能力能在函数初始化阶段完成Redis客户端的创建,在调用handler处理请求时能够使用该Redis客户端复用连接,相比在handler处理请求时每次都创建Redis客户端,减少了资源消耗并且性能更优。 请勿在函数初始化入口捕获异常,否则会导致F
安全认证:此处为方便测试,配置“None”,实际业务请选择更安全的认证方式,例如IAM认证等。 请求协议:选择“HTTPS”。 后端超时(毫秒):默认5000毫秒。 端到端测试 以curl工具为例(curl -F的方式主要用的是linux环境),您也可以选择postman等其他工具,在本地创建app.log文件,内容自定义,此处简单举例:
Redis健康检查 配置Redis定时健康检查 Redis健康检查的作用是判断Redis服务端是否正常工作,使用health_check_interval配置对Redis进行定时健康检查,该配置单位为秒,默认值为0不进行健康检查,代码如下: retry = Retry(ExponentialBackoff()
添加事件源 创建LTS触发器 选择准备中创建的日志组和日志主题,创建LTS触发器。LTS触发器配置如图1所示。 LTS日志服务的消费端在日志累积大小或日志累积时间满足条件时消费LTS日志数据,并根据订阅该组LTS日志数据的函数URN触发函数执行。 图1 创建LTS触发器 父主题:
创建LTS触发器 选择准备中创建的日志组和日志流,创建LTS触发器,LTS触发器配置如图1所示。 图1 创建LTS触发器 云日志服务LTS的消费端在日志累积大小或日志累积时间满足条件时消费LTS日志数据,并根据订阅该组LTS日志数据的函数URN触发函数执行。 父主题: 使用Functi