检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
异步调用是指客户端不关注请求调用的结果,服务端收到请求后将请求排队,排队成功后请求就返回,服务端在空闲的情况下会逐个处理排队的请求。 关于函数调用的更多信息请参见调用函数。 触发器 触发函数执行的事件。部分其他华为云服务可以使用触发器,实现在指定云服务的事件发生时,直接触发FunctionGraph的函数执行。
案例概述 场景介绍 MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless改造前后架构
通过Web托管方式改造微服务。改造过程中,如果微服务是基于spring框架,则需要使用FunctionGraph提供的SDK,即在pom.xml文件中添加步骤1中依赖。此时,您只需修改配置以及打包方式即可将微服务改造成serverless函数。具体操作步骤如下: 配置微服务依赖。 在项目工程的pom
RUNTIME_CODE_ROOT 代码在容器中的存放目录,系统默认路径为/opt/function/code 通过系统环境变量获取。 RUNTIME_LOG_DIR 系统日志在容器中存放的目录,系统默认路径为/home/snuser/log。 通过系统环境变量获取。 环境变量应用示例 使用环境变
HTTP函数专注于优化 Web 服务场景,用户可以直接发送 HTTP 请求到 URL 触发函数执行。在函数创建编辑界面增加类型。HTTP函数只允许创建APIG/APIC的触发器类型,其他触发器不支持。 调用链 用户通过页面函数配置开启调用链,开启后可以链接到APM服务页面查看jvm、调用链等信息,当前仅支持JAVA函数。
请求url为添加事件源创建的APIG触发器地址。 需要在headers里配置requestPath,值为图1中的@Path(可能会包含一些服务前缀,对应微服务改造之前的请求Path即可),如图2所示。 图2 requestPath配置 测试独立函数。 统一使用POST请求。 请求url为添加事件源创建的APIG触发器地址。
创建后可以获得一个调用URL,通过这个URL进行函数的调用,如图2所示。 图2 请求路径 父主题: 使用FunctionGraph对MFA微服务进行Serverless化改造
max_connections=50, decode_responses=True) return client def initializer(context): global redis_client redis_client
output = 'Hello message: ' + json.dumps(event,ensure_ascii=False) return output 父主题: 配置函数
-*- coding:utf-8 -*- import json def handler (event, context): return { "statusCode": 200, "isBase64Encoded": False,
在当前工作目录中从GitHub URL安装服务,如下: serverless install --url https://github.com/some/service 选项 --url或-u:GitHub的服务URL,必填。 --name或-n:服务名称。 示例 从GitHub URL安装服务 serverless
body: JSON.stringify({ message: 'Hello!', }), }; return response; }; 父主题: 事件列表
Python函数开发指南 2021年12月 序号 功能名称 功能描述 阶段 相关文档 1 新增调用链 用户通过页面函数配置开启调用链,开启后可以链接到APM服务页面查看jvm、调用链等信息。 商用 调用链管理 2 支持1ms粒度计费 支持1ms粒度计费,用户成本更低。 商用 价格详情 2021年11月
信息 默认情况下,serverless info命令用于显示有关已部署服务的信息。 serverless info命令 在服务目录中运行此命令即可显示已部署服务的信息。 serverless info 父主题: CLI参考
FunctionGraph函数通过域名访问APIG中注册的接口时,报域名无法解析? 函数服务目前只能解析pod域的域名或者在华为dns服务购买的域名。 父主题: 配置函数
案例概述 本案例展示了函数工作流服务+LTS云日志服务实现日志云端处理并推送告警消息的功能,并将告警日志投递至OBS桶中集中存储。 场景介绍 通过LTS云日志服务,快速完成ECS等服务器的任务运行日志采集、加工和转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由
添加事件源 选择准备中开通的CTS云审计服务,创建CTS触发器,CTS触发器配置如图1所示。 图1 创建CTS触发器 CTS云审计服务监听IAM服务中user资源类型,监听login、logout操作。 父主题: 使用FunctionGraph函数和CTS识别非法IP的登录登出操作
remove命令将从提供商中移除当前工作目录中定义的已部署服务。 serverless remove 该命令将仅移除已部署的服务及其所有资源,本地计算机上的代码将会保留。 示例 服务移除 serverless remove 此示例将移除当前工作目录中已部署的服务。 父主题: CLI参考
=60, decode_responses=True) return Redis(connection_pool=pool) def initializer(context): global redis_client
outputBucket, outFileName, outFile) return 'OK' 创建函数 创建函数的时候,必须选择委托包含OBS访问权限的委托,否则不能使用OBS服务。 登录函数工作流控制台,在左侧导航栏选择“函数 > 函数列表”,进入函数列表界面。 单击“创建函数”,进入创建函数流程。