检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
code_type String 函数代码类型,取值有5种。 inline: UI在线编辑代码。 zip: 函数代码为zip包。 obs: 函数代码来源于obs存储。 jar: 函数代码为jar包,主要针对Java函数。
另外,某些第三方库中可能会包含测试用例源代码、无用的二进制文件和数据文件等,删除无用文件可以降低函数代码下载和解压时间。 公共依赖包加速 在编写应用程序时,往往会引入第三方依赖库,尤其是Python语言。在冷启动过程中会下载所需的依赖包,若依赖包太大会直接增加启动时间。
图1 函数使用流程 功能简介 ①编写代码 用户编写业务代码,目前支持Node.js、Python、Java、Go、C#、PHP、Cangjie等语言,详情请参考开发指南。 ②上传代码 目前支持在线编辑、上传ZIP或JAR包,从OBS引用ZIP包等,详情请参考代码上传方式说明。
请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
请参见如何制作函数依赖包,将依赖的第三方库打包成zip包。 在函数平台,请参见如何在函数平台创建依赖包,完成依赖包创建。 进入待配置依赖包的函数配置详情页,在“代码”页签下,请参见如何为函数添加依赖包,添加制作成功的私有依赖包。在函数代码中即可使用其功能。 父主题: 依赖包管理
操作步骤 设置FunctionGraph函数的加密配置和环境变量,无需对代码进行任何更改,可以将设置动态参数传递到函数代码和库。
操作流程 构建代码包 创建源文件main.go,代码如下: // main.go package main import ( "fmt" "net/http" "github.com/emicklei/go-restful" ) func registerServer(
函数工程打包规范 打包规范说明 函数除了支持在线编辑代码,还支持上传ZIP、JAR、引入OBS文件等方式上传代码,函数工程的打包规范说明如表1所示。
output_bucket 存放输出图片的OBS桶。 添加依赖包 示例代码依赖pillow包,需要通过依赖包的形式进行引入,步骤如下。 用户进入fss_examples_image_thumbnail函数详情页,在“代码”页签,单击页面最底部的“添加依赖包”。
配置依赖包 概述 函数代码一般包含公共库和业务逻辑两部分。对于公共库,您可以打包成依赖包单独管理,共享给多个函数使用,同时也减少了函数代码包部署、更新时的体积。 FunctionGraph也提供了一些公共依赖包,公共依赖包在平台内部缓存,消除了冷启动加载的影响,推荐您优先使用。
实现流程 准备好应用程序所需的后端服务,如数据库、Redis等。 将应用代码拆分改造成serverless函数,将程序打包,您可参考构建程序。 在函数工作流服务中,创建函数,您可参考构建程序。 配置APIG触发器,测试函数调用,您可参考添加事件源。
请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
调试函数 我们可以在函数代码详情页“配置测试事件”和“测试”中在线调试函数,如下: 图1 在线调试函数 父主题: 使用函数访问Redis数据库
图1 进入函数详情页 选择“代码”页签,将原代码中“context.getAccessKey()”和“context.getSecretKey()”替换为“context.getSecurityAccessKey() ”、“context.getSecuritySecretKey(
函数代码发布后,您可以根据实际需要修改版本配置信息。 版本相当于函数服务的快照,可对应代码里的tag,函数版本会对应函数的配置、代码等,新版本默认不绑定触发器。当用户新建版本后,对应版本的配置(如环境变量等)、代码等都无法更新,从而保证版本的稳定性、可追溯性等。
图1 获取内网域名对应的IP 切换到代码示例获取完整的代码,相关依赖请参见SDK信息。 图2 获取相关代码 父主题: 通用问题
请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
问题现象 相同的代码,函数能通过VPC1连通Redis1,但是不能通过VPC2连通Redis2。 解决方案 与客户确认问题现象,Redis1在VPC1中,Redis2在VPC2中,Redis客户端代码是同一套代码。