检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 GET:请求服务器返回指定资源。 PUT:请求服务器更新指定资源。
使用APIG触发器,函数如何获取请求路径或请求参数? 请求路径或请求参数默认携带在event的入参中,FunctionGraph函数对APIG调用的传入值为函数自带的事件模板。您可以通过打印函数执行结果,获取请求路径或请求参数。 示例: queryStringParameters:GET请求中URL后
如何读取函数的请求头? 函数入口中的第一个参数里面包含请求头,您可以打印函数执行结果,从而获取想要的字段。 如下图,event为函数入口的第一个参数,headers为请求头。 父主题: 函数执行
停止函数异步调用请求 功能介绍 当前仅支持参数recursive为false且force为true的函数。 在1:N的函数做并发异步调用的场景下调用停止异步请求接口时,同一函数实例同时在执行的其他请求也会被一并停止并返回4208 function invocation canceled
获取函数异步调用请求列表 功能介绍 获取函数异步调用请求列表 调用方法 请参见如何调用API。 URI GET /v2/{project_id}/fgs/functions/{function_urn}/async-invocations 表1 路径参数 参数 是否必选 参数类型
为什么第一次请求会比较慢? 因为函数是冷启动的,所以如果有初始化或者函数中有第一次执行比较耗时的操作,第一次请求会比较慢,后面接着的请求就会很快,因为此时容器还没有销毁。如果间隔一分钟没有请求,容器就会销毁。 父主题: 函数执行
述。 表2 Query参数 参数 是否必选 参数类型 描述 requests 否 String 需要查询的异步请求ID, 多个请求id使用','分隔, 最大支持10个请求id查询。如果不指定,默认查询所有异步调用记录 最小长度:0 最大长度:640 marker 否 String
函数发起HTTP请求的源地址如何获取? 公网访问 函数未开启“函数访问VPC内资源”功能时访问公网。 访问公网时使用函数工作流服务的SNAT地址,该地址是固定的,如何获取请咨询技术支持工程师。 图1 未开启函数访问VPC内资源 函数开启“函数访问VPC内资源”功能时访问公网。(相关VPC配置详情请参见配置网络)
函数服务是否支持在函数中启动TCP的监听端口,通过EIP接收外部发送过来的TCP请求? 目前函数暂不支持这种方式。函数的理念是无服务器计算,计算资源只会在运行期分配,这种自定义监听端口的场景并不适合。 父主题: 通用问题
心跳函数用于检测用户函数运行时的异常,例如以下场景: 用户函数死锁,无法正常运行。 用户函数内存溢出,无法正常运行。 用户函数网络异常,无法正常运行。 在配置了自定义心跳函数后,当用户函数运行时,FunctionGraph每隔5s向函数实例发送一次心跳请求,触发心跳函数。如果心跳请求返回异常,FunctionGraph会认为函数实例异常,终止此函数实例。
同步调用 同步调用指的是客户端请求需要明确等到响应结果,也就是说这样的请求必须得调用到用户的函数,并且等到调用完成才返回。 异步调用 异步调用是指客户端不关注请求调用的结果,服务端收到请求后将请求排队,排队成功后请求就返回,服务端在空闲的情况下会逐个处理排队的请求。 触发器 触发函数执行的事件。
户需要在镜像中实现一个http server,并监听8000端口接收请求。其中,请求路径/init 默认为函数初始化入口,请根据需要实现该接口。请求路径/invoke为函数执行入口,触发器事件转到该接口处理,请求参数请参见函数支持的事件源。 准备工作 注册华为账号并实名认证。 在
配置函数的异步调用策略 概述 函数可以被同步或异步调用,异步调用场景下,FunctionGraph持久化请求后立即返回,不等待请求最终处理完成,用户无法实时感知请求处理结果。如果您希望异步请求处理失败后重试或者希望获取异步处理结果通知,可通过函数异步配置项进行设置。 应用场景 失败重试:
图1 测试函数调用的方法 调用时,遵循原来的请求方法。 请求url为添加事件源创建的APIG触发器地址。 需要在headers里配置requestPath,值为图1中的@Path(可能会包含一些服务前缀,对应微服务改造之前的请求Path即可),如图2所示。 图2 requestPath配置
当函数工作流收到函数的调用请求时,自动为此请求分配执行环境。 预留实例是将函数实例的创建和释放交由用户管理,当您为某一函数创建了预留实例,函数工作流收到此函数的调用请求时,会优先将请求转发给您的预留实例,当请求的峰值超过预留实例处理能力时,剩余部分的请求将会转发给按量实例,由函数工作流自动为您分配执行环境。
函数内存超限返回“runtime memory limit exceeded”,如何查看内存占用大小? 请在函数请求返回界面查看。 图1 查看oom内存大小 父主题: 函数执行
状态码 请求发送以后,您会收到响应,包含状态码、响应消息头和消息体。 状态码是一组从1xx到5xx的数字代码,状态码表示了请求响应的状态,完整的状态码列表请参见状态码。 对于获取用户Token接口,如果调用后返回状态码为“201”,则表示请求成功。 响应消息头 对应请求消息头,响
初始化函数在函数实例启动成功后执行,执行成功后,实例才能开始调用请求处理函数处理请求。FunctionGraph保证一个函数实例在生命周期内,初始化函数成功执行且只能成功执行一次。初始化函数的执行时间也会被计量,用户需要为此付费,计费方式同请求处理函数。 应用场景 多个请求处理可以共享的业务逻辑适合放到初始化
自动运行用户代码,用户无需配置或管理服务器,专注于业务创新。 高弹性 根据请求的并发数量自动调度资源运行函数,实现透明、准确和实时的伸缩,应付业务峰值的访问。 用户无需关心峰值和空闲时段的资源需要申请多少资源,系统根据请求的数量自动扩容/缩容。自动负载均衡将请求分发到函数运行实例。 同时系统会根据流量负载的
FunctionGraph会根据实际的请求情况自动弹性伸缩函数实例,并发变高时,会分配更多的函数实例来处理请求,并发减少时,相应的实例也会变少。 用户函数实例数=用户函数并发数/该函数的单实例并发数。 用户函数并发数:指某一刻该函数同时执行的请求数。 该函数的单实例并发数:指单个实