检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
示例2:创建函数和APIG触发器获取静态页面 场景描述 本章节以Python 2.7为例,指导您通过API创建FunctionGraph函数和APIG触发器,并且通过APIG触发器调用API,获取静态页面。 API的调用方法请参见如何调用API。 前提条件 已在API网关服务中创建
Python语言方案 前提条件 已拥有华为云账号且已实名认证。 华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 操作步骤 创建函数 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,单击“创建函数”。 选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。
创建依赖包(待废弃) 功能介绍 创建依赖包 调用方法 请参见如何调用API。 URI POST /v2/{project_id}/fgs/dependencies 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户项目 ID,获取方式请参见获取项目
步骤四:搭建函数部署脚本更新流水线 此流水线的主要作用是将函数部署脚本deploy.py发布到部署主机上,供函数更新流水线使用。 新建构建任务 在“构建&制品 > 编译构建”页面,单击“新建任务”。 源码仓库选择“functions仓库”,构建模板选择“空白构建模板”,完成单击“确定
状态码 状态码如表1所示 表1 状态码 状态码 返回 说明 200 - 请求成功。 204 - 请求成功。 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要认证。 403 Forbidden 对被请求页面的访问被禁止。 404
构建程序 本例提供一个图片旋转的样例代码供学习使用。 创建程序包 本例使用Golang语言实现图片旋转的功能,有关函数开发的过程请参考Golang函数开发。本例不再介绍业务功能实现的代码,样例代码目录如图1所示。 图1 样例代码目录 创建函数 创建函数的时候,必须选择委托包含OBS
步骤五:搭建函数更新流水线 此流水线的主要作用是将functions仓库的helloworld函数代码配置发布更新到FunctionGraph平台。 新建构建任务 在“构建&发布 > 编译构建”页面,单击“新建任务”。 源码仓库选择functions仓库,构建模板选择“空白构建模板
Node.js SDK使用范例 以同步执行函数为例,提供封装后的SDK。为了保证您成功使用以下示例代码,您需要先添加对应语言的SDK依赖。 表1 Node.js SDK信息说明 SDK信息 说明 安装 npm i @huaweicloud/huaweicloud-sdk-functiongraph
创建用户并授权使用FunctionGraph 如果您需要对您所拥有的FunctionGraph进行精细的权限管理,您可以使用统一身份认证服务(Identity and Access Management,简称IAM),通过IAM,您可以: 根据企业的业务组织,在您的华为云账号中,给企业中不同职能部门的员工创建
权限管理 如果您需要对FunctionGraph的函数资源,给企业中的员工设置不同的访问权限,以达到不同员工之间的权限隔离,您可以使用统一身份认证服务(Identity and Access Management,简称IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能
Redis连接池 在示例代码中使用了Redis连接池(BlockingConnectionPool),配置了最大连接数(max_connections)和连接池耗尽后获取连接的最大等待时间(timeout),代码片段如下: pool = BlockingConnectionPool
函数工程打包规范 打包规范说明 函数除了支持在线编辑代码,还支持上传ZIP、JAR、引入OBS文件等方式上传代码,函数工程的打包规范说明如表1所示。 表1 函数工程打包规范 编程语言 JAR包 ZIP包 OBS文件 Node.js 不支持该方式 假如函数工程文件保存在“~/Code
示例3:上传代码到OBS桶,并使用OBS链接创建函数 场景描述 本章节以Python 2.7为例,指导您在本地编码,然后将代码文件上传到OBS桶,实现通过OBS链接创建函数。 API的调用方法请参见如何调用API。 前提条件 已在OBS服务中创建OBS桶。 总体思路 在本地进行函数编码后
nodejs模板 exports.handler = async (event, context) => { const output = { 'statusCode': 200, 'headers': {
配置函数的常规信息 概述 在函数创建完成后,“内存”、“函数执行入口”、“执行超时时间”会根据您所选的“运行时语言”默认填写。如果您需要贴合实际业务场景修改配置,请参见本章节进行配置。 前提条件 已创建函数。 操作步骤 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”
返回结果 状态码 请求发送以后,您会收到响应,包含状态码、响应消息头和消息体。 状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态,完整的状态码列表请参见状态码。 对于获取用户Token接口,如果调用后返回状态码为“201”,则表示请求成功。 响应消息头 对应请求消息头
通过KooCLI管理函数 KooCLI工具支持FunctionGraph服务,用户可以通过CLI工具执行函数管理,别名管理,触发器管理函数调用等操作。 获取CLI工具 CLI工具支持64位的Linux x86系统及64位Windows系统,以及Mac系统,具体下载地址如表1所示。
FunctionGraph支持的监控指标 功能说明 本节定义了FunctionGraph上报云监控服务的监控指标的命名空间,监控指标列表和维度定义,用户可以通过云监控服务提供管理控制台或API接口来检索FunctionGraph产生的监控指标和告警信息。 命名空间 SYS.FunctionGraph
为函数配置预留实例(旧) 什么是预留实例? 函数工作流提供了按量和预留两种类型的实例。 按量实例是由函数工作流根据用户使用函数的实际情况来创建和释放,当函数工作流收到函数的调用请求时,自动为此请求分配执行环境。 预留实例是将函数实例的创建和释放交由用户管理,当您为某一函数创建了预留实例
python模板 # -*- coding:utf-8 -*- import json def handler (event, context): return { "statusCode": 200, "isBase64Encoded":