检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
7语言为例,函数代码需要满足如下条件。 函数有明确的接口定义,如下所示: def handler (event, context) 入口函数名(handler):入口函数名称,需和函数执行入口处用户自定义的入口函数名称一致。 执行事件(event): 函数执行界面由用户输入的执行事件参数, 格式为JSON对象。
使用FunctionGraph快速创建函数的流程如下: 图1 FunctionGraph业务流程全景图 创建用户并授权使用FunctionGraph:确保登录的用户已有“FunctionGraph Administrator”权限。 创建函数:支持“创建空白函数”、“使用函数模板创建函数”、“使
创建函数 登录函数工作流控制台,在左侧导航栏选择“总览”,单击“创建函数”进入创建函数界面。 选择“创建空白函数”,在创建函数界面配置如下信息:函数类型选择“事件函数”、输入您自定义的函数名称,此处以“access-redis-demo”为例,选择运行时“Python3.9”,最后单击创建函数。
是否配置下沉apig路由规则。 heartbeat_handler String 心跳函数函数的入口,规则:xx.xx,必须包含“. ”,只支持JAVA运行时配置。 心跳函数入口需要与函数执行入口在同一文件下。 在开启心跳函数配置时,此参数必填。 enable_class_isolation
范围1~300秒。 heartbeat_handler 否 String 心跳函数函数的入口,规则:xx.xx,必须包含“. ”,只支持JAVA运行时配置。 心跳函数入口需要与函数执行入口在同一文件下。 在开启心跳函数配置时,此参数必填。 enable_class_isolation
259200秒。 handler String 函数执行入口 规则:xx.xx,必须包含“. ” 举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。 最小长度:3
259200秒。 handler String 函数执行入口 规则:xx.xx,必须包含“. ” 举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。 最小长度:3
initializerHandler 否 是 函数初始化入口,规则:xx.xx,必须包含“. ”。 举例:对于node.js函数:myfunction.initializer,则表示函数的文件名为myfunction.js,初始化的入口函数名为initializer。 concurrentNum
259200秒。 handler String 函数执行入口 规则:xx.xx,必须包含“. ” 举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。 最小长度:3
使用快照式冷启动可能会有问题。请先提前联系客服进行确认,建议避免依赖这些变量。 当前仅支持基于x86机器开发的应用。 配置快照式冷启动 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击函数的名称,进入函数详情页。在“设置”页签下选择“高级设置”。 开启“快照式冷启动”开关。
样例代码目录如图1所示。 图1 样例代码目录 创建函数 创建函数的时候,必须选择委托包含OBS访问权限的委托,否则不能使用OBS服务。 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,进入函数列表界面。 单击“创建函数”,选择“创建空白函数”进入创建函数流程。 填写函数配置信息。
String 虚拟私有云唯一标识。配置时,agencyName必填。虚拟私有云标识请登录虚拟私有云页面查看。 subnetId False String 子网编号。配置时,agencyName必填。子网编号请登录虚拟私有云子网页面查看。 dependVersionList False List<String>
约束与限制 设置环境变量时,FunctionGraph会明文展示所有输入信息,请不要输入敏感信息(如账户密码等),以防止信息泄露。 配置环境变量 登录函数工作流控制台函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击函数的名称,进入函数详情页。 在“设置”页签下选择“环境变量”。
259200秒。 handler String 函数执行入口 规则:xx.xx,必须包含“. ” 举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。 最小长度:3
是否配置下沉apig路由规则。 heartbeat_handler String 心跳函数函数的入口,规则:xx.xx,必须包含“. ”,只支持JAVA运行时配置。 心跳函数入口需要与函数执行入口在同一文件下。在开启心跳函数配置时,此参数必填。 enable_class_isolation
剩余部分的请求将会转发给按量实例,由函数工作流自动为您分配执行环境。 预留实例在创建完成后,会自动加载该函数的代码、依赖包以及执行初始化入口函数,且预留实例会常驻环境,消除冷启动对业务的影响。 用户默认没有权限使用预留实例,如果需要使用预留实例功能,请在工单系统提交工单添加白名单。
${vars.functionName} # 函数名 handler: index.handler # 函数执行入口 memorySize: 256 # 函数消耗的内存 timeout: 30
259200秒。 handler String 函数执行入口 规则:xx.xx,必须包含“. ” 举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。 最小长度:3
发器类型,其他触发器不支持。 HTTP函数支持HTTP/1.1协议。 在函数创建页面,新增一种函数类型“HTTP函数”; HTTP函数执行入口需要设置为bootstrap,用户直接写启动命令,端口统一开放成8000; 若运行用户JAR包,bootstrap中建议增加JVM参数-Dfile
各个依赖包与代码文件之间,应避免出现同名的目录或文件。例如依赖包depends.zip中包含index.py文件,若采用在线编辑方式的编写代码,函数执行入口为index.handler,函数执行将生成名为index.py的代码文件,与依赖包内的index.py文件重名,可能导致文件覆盖或合并错误。