检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
yml中的所有语法转换为华为云部署管理的配置模板。 提供商插件解析serverless.yml配置并转换为华为云资源。 然后将函数的代码打包到目录中,压缩并上传到部署桶中。 资源部署完成。 建议在CI/CD系统中使用此方法,因为它是最安全的部署方法。 有关所有详细信息和选项,请查看deploy命令文档。 父主题:
hashicorp.com/terraform/downloads)。 下面以Linux CentOS (系统需要有访问公网权限)为例指导安装Terraform。 使用root用户登录系统,新建目录/home/Terraform,cd到Terraform目录执行如下命令: sudo yum
开发Python函数步骤如下。 以下示例使用的Python 2.7版本。 创建函数工程。 编写打印helloworld的代码。 打开文本编辑器,编写helloworld函数,代码如下,文件命名为helloworld.py,保存文件。 1 2 def printhello(): print
平台遥测:日志、指标和跟踪,描述与执行环境运行时生命周期、扩展生命周期和函数调用相关的事件和错误。 函数日志:FunctionGraph函数代码生成的自定义日志。 扩展日志:FunctionGraph扩展代码生成的自定义日志。 如何在扩展中使用OpenTelemetry API 注册OpenTelemetry API
4.18/rtsp/nodejs/bin/node:表示nodejs编译环境所在路径。 $RUNTIME_CODE_ROOT:系统变量,表示容器中项目代码存放路径/opt/function/code。 index.js:项目入口文件,可自定义名称。 目前支持的Nodejs语言和对应的路径请参见表1。
使用函数访问Redis数据库 案例概述 准备 创建依赖包 创建函数 示例代码 FunctionGraph监控告警 日志告警 调试函数
安全 责任共担 资产识别与管理 身份认证与访问控制 数据保护技术 审计与日志 服务韧性 监控安全风险 认证证书 代码签名
return "ok"; } public String dmsTest(DMSTriggerEvent event, Context context){ System.out.println(event); return "ok";
通过独立函数方式改造微服务。 直接函数化改造,是将微服务业务代码迁移到云函数内,基于spring框架的微服务需要剥离spring才能将微服务改造成serverless函数。 新建一个全新的maven工程,如图13所示。 图13 新建maven工程 业务代码迁移。 将原项目代码迁移至新项目,文件目录与原项目相
/MyCsharpPro”下的Program.cs代码文件中创建入口执行函数。其中input为客户端请求的body数据,context为FunctionGraph函数服务提供的运行时上下文对象,具体提供的属性可以参考属性接口。代码如下: 1 2 3 4 5 6 7
运行时:选择用来编写函数的语言,默认“Node.js 16.17”,支持用户选择其他运行时语言。 图1 基本信息配置 配置代码源,复制如下代码至代码窗,单击“部署”。 样例代码实现的功能是:获取测试事件,打印测试事件信息。 exports.handler = function (event
幂等性,则需要通过函数逻辑设计来正确处理重复的事件。 幂等函数逻辑有助于减少以下问题: 不必要的 API 调用 代码处理时间 数据不一致 限制 延迟 请确保您的函数代码可以多次处理相同的事件,而不会导致重复的事务或其他不必要的副作用。如果函数不满足幂等性要求,则当函数调用异常,客
codeType: zip # 函数代码类型 dependVersionList: # 依赖包,取依赖包的ID - xxx-xxx code: # 本地代码地址
在函数详情页,选择函数版本。 在“代码”页签下,单击“测试”,弹出“配置测试事件”对话框。 填写如下表1所示测试信息后,单击“保存”。 表1 测试参数 参数 说明 配置测试事件 可创建新的测试事件,也可编辑已有的测试事件。 选择默认值:“创建新的测试事件”。 事件模板 选择“空白”模板,代码请参见EG示例事件中“云服务事件源”。
code_type String 函数代码类型,取值有5种。 inline: UI在线编辑代码。 zip: 函数代码为zip包。 obs: 函数代码来源于obs存储。 jar: 函数代码为jar包,主要针对Java函数。 Custom-Image-Swr: 函数代码来源于SWR自定义镜像。 枚举值:
应用示例 示例1:创建函数和Timer触发器实现定时从OBS桶中下载文件 示例2:创建函数和APIG触发器获取静态页面 示例3:上传代码到OBS桶,并使用OBS链接创建函数 示例4:函数互调
codeType: zip # 函数代码类型 dependVersionList: # 依赖包,取依赖包的ID - xxx-xxx code: # 本地代码地址
else { fmt.Println(err) } } 更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。 状态码 状态码 描述 200 ok 400 Bad Request 请求错误。 401 Unauthorized
ver地址和端口限制为127.0.0.1:8081 ~ 127.0.0.1:8090,且每个扩展的端口不可重复。 主体参数 不做解析 响应代码 200 - 响应正文包含函数名称、函数版本和处理程序名称。 其他为错误请求 示例响应正文 { "functionName": "helloWorld"
函数创建完成后进入详情页面,选择“代码”页签,选择“上传自 > Zip文件”。 图1 上传zip文件 选择之前打包的“nextjs-func-code.zip”文件,然后单击“确定”。 添加依赖包 在Nextjs-app函数详情页面,选择“代码”页签,页面滚动至最下方,单击“添加依赖包”,配置如下信息: