检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
HTTP函数 该特性仅FunctionGraph v2版本支持。 概述 FunctionGraph支持两种函数类型,事件函数和HTTP函数。HTTP函数专注于优化 Web 服务场景,用户可以直接发送 HTTP 请求到 URL 触发函数执行,从而使用自己的Web服务。HTTP函数只
使用CLI工具,如何配置网络代理? 问题描述 使用CLI工具,在上传程序zip包时,是否可以设置代理服务器和身份认证信息,通过内部网络的代理网关认证。 问题解决 设置网络代理命令如下: export HTTP_PROXY="http://user:password@proxyIp:proxyPort" 详情请参考:https://www
开发HTTP函数 本章节通过HTTP函数部署koa框架,更多HTTP详情,请参见创建HTTP函数。 前提条件 准备一个bootstrap启动文件,作为HTTP函数的启动文件。举例如下: /opt/function/runtime/nodejs14.18/rtsp/nodejs/bin/node
/opt/function/code/go-http-demo 在main.go中,使用8000端口启动了一个HTTP服务器,并注册了path为“/hello”的API,调用该API将返回"nice to meet you"。 编译打包 在linux机器下,将上述代码编译 go build -o go-http-demo
使用容器镜像创建并执行HTTP函数 本章节将以使用容器镜像方式创建HTTP类型函数为例,介绍容器镜像函数的创建及测试过程。此过程中用户需要在镜像中实现一个http server,并监听8000(下文示例中提及的8000端口请不要变动)端口接收请求。备注:HTTP函数只支持APIG触发器。
HTTP函数bootstrap启动文件如何创建? 如果您需要创建HTTP函数,需要用到bootstrap启动文件,具体创建方法请参考bootstrap文件创建。 父主题: 创建函数
函数中可直接调用Java运行环境,无需另外安装。 图3 输入启动参数 选中jar包和bootstrap文件,打包成zip包。 创建HTTP函数并上传代码 创建1个HTTP函数,并上传已打包的zip包。请参见创建HTTP函数。 验证结果 使用函数测试事件验证 在函数详情页,选择函数版本,单击“配置测试事件”,弹出“配置测试事件”页。
如何通过版本和别名实现绑定APIG触发器的HTTP函数的灰度升级? 基于latest创建版本V1、V2,创建别名alias绑定对应版本V1,权重100%,为alias创建APIG触发器。 图1 发布新版本V1和V2 图2 创建alias别名并绑定V1版本 图3 在alias下创建触发器
部署环境准备 本章节以Linux主机为例,指导您基于KooCLI和软件开发生产线CodeArts搭建一套FunctionGraph函数的CI/CD。 云服务器ECS 该服务器作为CodeArts部署任务的部署主机,用于部署更新FunctionGraph函数。 规格:1vCPUs |
函数发起HTTP请求的源地址如何获取? 公网访问 函数未开启“函数访问VPC内资源”功能时访问公网。 访问公网时使用函数工作流服务的SNAT地址,该地址是固定的,如何获取请咨询技术支持工程师。 图1 未开启函数访问VPC内资源 函数开启“函数访问VPC内资源”功能时访问公网。(相关VPC配置详情请参见配置网络)
创建空白函数时可以选择“事件函数”和“HTTP函数”两种函数类型。 HTTP函数专注于优化Web服务场景,用户可以直接发送HTTP请求到URL触发函数执行,从而使用自己的Web服务。HTTP函数只允许创建APIG/APIC的触发器类型,其他触发器不支持。 HTTP函数当前不区分编程语言,函数
请注意区域选择“华东-上海一”,具体ECS的规格和镜像版本用户可以根据业务需要自行选择,此处以EulerOS 2.5 64bit(40GiB)为例,不同镜像版本的部分Linux命令略有不同,请注意区分。 图1 基础配置 由于很多模型文件都在1G到10G+的大小,建议您根据具体需要选择系统盘容量,或者挂载数据盘。
添加事件源 添加APIG触发器(每个函数分别创建触发器),通过HTTP请求调用函数。 填写API名称,选择分组、发布环境、认证、请求协议、超时时间等配置,单击”确定”完成触发器创建,如图1所示。 图1 创建触发器 创建后可以获得一个调用URL,通过这个URL进行函数的调用,如图2所示。
> 函数列表”,右上角单击“创建函数”。 进入创建函数页面,选择“创建空白函数”,填写函数信息,完成后单击“创建函数”。 函数类型:选择“HTTP函数”。 区域:选择“华东-上海一”。 函数名称:输入您自定义的函数名称,此处以“Nextjs-app”为例。 其他参数保持默认即可。
请根据页面提示信息诊断原因。 图1 查看执行结果 请参见使用容器镜像部署函数章节进行容器镜像自验证。 排查镜像是否为x86 linux架构,目前仅支持x86 linux架构镜像。 父主题: 函数执行
如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。 搭建EulerOS环境 EulerOS是基于开源技术的企业级Linux操作系统软件,具备高安全性、高可扩展性、高性能等技术特性,能够满足客户IT基础设施和云计算服务等多业务场景需求。此处推荐Huawei
如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。 搭建EulerOS环境 EulerOS是基于开源技术的企业级Linux操作系统软件,具备高安全性、高可扩展性、高性能等技术特性,能够满足客户IT基础设施和云计算服务等多业务场景需求。此处推荐Huawei
isBase64Encoded() Event中的body是否是base64编码 getHttpMethod() 获取Http请求方法 getPath() 获取Http请求路径 getBody() 获取Http请求body getPathParameters() 获取所有路径参数 getRequestContext()
创建依赖包 操作步骤 本案例的依赖包如果使用Linux安装,会出现软连接导致的依赖缺失错误,因此需要删除现有“node_modules”子目录。 在Windows系统中重新安装,操作步骤如下: 退出Docker容器(原生Linux系统忽略)。 exit 删除项目目录中的“node
本案例以Next.js框架的默认demo为例演示部署过程,需要在Linux环境中创建一个全新的Next.js项目,本案例采用本地运行Docker node:18.15.0镜像的方式,同样适用于其他Linux系统。关于Docker镜像和Linux操作系统的使用并非本案例主要内容,不做过多赘述。