检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例概述 场景介绍 MetaERP业务场景进行微服务Serverless化改造,如图1所示,将低频使用但资源占用大的微服务逻辑,拆分成独立函数,常驻实例缩容到0;剩余微服务逻辑以Spring兼容方式进行函数化,实现函数化后的微服务快速冷启动和弹性,常驻实例减半。 图1 MFA Serverless改造前后架构
准备 该场景涉及微服务与后端服务的调用,因此需要提前准备好对应的后端服务。用户可以使用自己搭建的后端服务,也可以使用华为云提供的云服务。 若后端服务需要通过虚拟私有云(VPC)访问,函数需要进行额外配置,若可以通过公网访问后端服务,可以跳过以下步骤2和步骤3。 创建Java函数(
调用的时候暂停CPU,节省资源,降低费用成本。详情请参见预留实例管理。 其他费用 在您使用函数工作流服务过程中,如果搭配使用了其它华为云服务,如OBS、SMN等,则您需要为该服务支付额外的费用,具体费用请参考价格详情。 计费周期 华为云函数工作流 FunctionGraph 按照
企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。 委托名称:默认未使用任何委托,支持用户选择已创建的委托。 用户委托函数工作流去访问其他的云服务,举例:如果用户函数需要访问LTS、VPC等服务,则需要提供权限委托名称,如果用户函数不访问任何云服务,则不用提供委托名称。
事件源是发布事件的公有云服务或自定义应用程序。 同步调用 同步调用指的是客户端请求需要明确等到响应结果,也就是说这样的请求必须得调用到用户的函数,并且等到调用完成才返回。 异步调用 异步调用是指客户端不关注请求调用的结果,服务端收到请求后将请求排队,排队成功后请求就返回,服务端在空闲的情况下会逐个处理排队的请求。
创建后可以获得一个调用URL,通过这个URL进行函数的调用,如图2所示。 图2 请求路径 父主题: 使用FunctionGraph函数对MFA微服务进行Serverless化改造
请求url为添加事件源创建的APIG触发器地址。 需要在headers里配置requestPath,值为图1中的@Path(可能会包含一些服务前缀,对应微服务改造之前的请求Path即可),如图2所示。 图2 requestPath配置 测试独立函数。 统一使用POST请求。 请求url为添加事件源创建的APIG触发器地址。
请参见向主题发布文本消息。消息发布以后,会自动触发函数运行。 发布消息的内容参见表1填写。 表1 发布消息 字段 填写说明 消息标题 输入“SMN-Test”。 消息类型 选择“文本消息”。 消息内容 输入以下内容:{"message":"hello"}。 查看函数运行结果 返回
您的扩展,您可以对数据进行处理,例如存储到OBS、写入文件中或转发给其他可观测性工具。 扩展可以使用遥测 API 订阅三种不同的遥测流: 平台遥测:日志、指标和跟踪,描述与执行环境运行时生命周期、扩展生命周期和函数调用相关的事件和错误。 函数日志:FunctionGraph函数代码生成的自定义日志。
构建程序 前提条件 (1)函数中的IP地址为LTS的接入点,获取接入点IP方法如下: 登录云日志服务 LTS控制台,在左侧导航栏选择“主机管理 > 主机”; 在页面右上方,单击“安装ICAgent”; 在弹出的“安装ICAgent”窗口中获取接入点IP。 图1 接入点IP (2)
的完善云服务安全保障体系。 安全性是华为云与您的共同责任,如图1所示。 华为云:负责云服务自身的安全,提供安全的云。华为云的安全责任在于保障其所提供的IaaS、PaaS和SaaS类云服务自身的安全,涵盖华为云数据中心的物理环境设施和运行其上的基础服务、平台服务、应用服务等。这不仅
当前大部分 Serverless Workflow 平台更多关注控制流程的编排,忽视了工作流中数据流的编排和高效传输,上述场景创建函数流触发器中,由于数据流相对简单,所以各大平台支持都比较好,但是对于文件转码等存在超大数据流的场景,当前各大平台没有给出很好的解决方案。华为云Functio
处理结果 若用户触发账号的登录/登出操作,订阅服务类型日志被触发,日志会直接调用用户函数,通过函数代码对当前登录/出的账号进行IP过滤,若不在白名单内,可收到SMN发送的通知消息邮件,如图1所示。 图1 告警消息邮件通知 邮件信息中包含非法请求ip地址和用户执行的动作(login/logout)。
一、华北-北京四、华东-上海一、华东-上海二、华南-广州、中国-香港、亚太-新加坡、土耳其-伊斯坦布尔。) 使用分布式消息服务Kafka触发器 使用分布式消息服务RabbitMQ触发器 使用开源Kafka触发器 使用GeminiDB Mongo触发器 使用IoTDA触发器 使用LTS触发器
HTTP请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。 GET:请求服务器返回指定资源。 PUT:请求服务器更新指定资源。 POST:请求服务器新增资源或执行特殊操作。 DELETE:请求服务器删除指定资源,如删除对象等。 HEAD:请求服务器资源头部。 PATCH:请求服务器更新资源的部
在当前工作目录中从GitHub URL安装服务,如下: serverless install --url https://github.com/some/service 选项 --url或-u:GitHub的服务URL,必填。 --name或-n:服务名称。 示例 从GitHub URL安装服务 serverless
支持使用已有模板或空模板。 发布区域:所有部署函数工作流服务的区域均可使用。 创建程序包 创建并初始化函数 函数管理 函数创建完成后,支持在线编辑函数,修改函数代码,修改函数配置等功能。 发布区域:所有部署函数工作流服务的区域均可使用。 导入导出函数 启用禁用函数 环境变量 支
FunctionGraph函数通过域名访问APIG中注册的接口时,报域名无法解析? 函数服务目前只能解析pod域的域名或者在华为dns服务购买的域名。 父主题: 配置函数
控、可观察性、安全性和监管等工具集成。 当用已编译的语言实现扩展时,在本地编译生成二进制文件;使用非编译的语言实现扩展时,需要把对接第三方平台需要的依赖一起打包上传,且需要函数的运行时兼容。 将skywalking agent直接嵌入到扩展代码中,即可通过扩展完成对函数请求的监控。
对象前缀目录:输入对象前缀目录,以筛选通知消息要存放的对象文件。 对象过期时间(天):过期后的对象会被OBS服务端自动清理。单位:天,取值范围:0-365,0表示不过期。 数据接入服务(DIS) 目标通道:选择接收通知消息的目标通道。 消息通知服务(SMN) 主题名称:选择接收通知消息的主题。 分布式消息服务 Ro