检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
单租户并发跑满,进而影响其他DIS触发器无法执行。(目前暂时只有北京四支持该功能) 图1 关闭“串行处理数据” 单击“确定”,完成DIS触发器的创建。 修改DIS触发器配置 DIS触发器创建后,支持对部分参数进行修改。 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
工作流+函数:自动化处理OBS中数据 案例概述 准备 构建程序 处理图片
函数工作流的常见使用场景? Web类应用:比如小程序、网页/App、聊天机器人、BFF等。 事件驱动类应用:文件处理、图片处理、视频直播/转码、实时数据流处理、IoT规则/事件处理等。 AI类应用:三方服务集成、AI推理、车牌识别。 具体请参考应用场景。 父主题: 通用问题
在函数代码详情页,单击“添加依赖包”,选择私有依赖包源,添加创建依赖包创建的redis-py-4.6.0依赖包。 图3 添加依赖包 在“设置”页签下修改“常规设置”,内存调整为256MB,执行超时时间为30s,然后单击保存。 图4 常规设置 在“设置”页签下配置“权限”,添加一个有VPC
调试函数 我们可以在函数代码详情页“配置测试事件”和“测试”中在线调试函数,如下: 图1 在线调试函数 父主题: 使用函数访问Redis数据库
”页面,左侧导航栏选择“规则 > 数据转发”后,并在“规则列表”中单击目标规则名称所在行右侧的“详情” ,进入数据转发规则详情页面。 选择“设置转发目标”,并单击转发目标所在行右侧的“测试”,开始编辑测试数据。 图1 转发规则测试 输入测试数据单击 “连通性测试” 。 {
测试信息 参数 说明 创建新的测试事件 重新创建新的测试事件。 编辑已有测试事件 修改已有的测试事件。 测试事件 修改测试事件代码。 单击“保存”,完成配置修改。 删除测试事件 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击函数名称,进入函数详情界面。 在函数详情页,选择函数版本,如图2所示。
示例代码 连接DCS单机、主备、读写分离、Proxy集群实例 连接DCS集群实例 代码解读 父主题: 使用函数访问Redis数据库
“添加文件”添加redis-4.6.0.zip包,运行时语言选择“Python3.9”,最后单击确认。 父主题: 使用函数访问Redis数据库
FunctionGraph生命周期的所有阶段。例如在函数调用之前、期间和之后捕获诊断信息;无需更改代码即可自动检测您的代码;在函数调用之前获取配置设置;通过安全代理检测功能发出警报;将遥测数据直接从函数异步发送到自定义目的地。 扩展作为独立进程在函数执行环境中运行。由于扩展作为进程运
时间默认为3s,资源太少,需要修改。 进入DISDemo函数详情页,在“设置 > 基本设置”页签,修改配置信息。 内存:选择“512”。 执行超时时间:输入“15”。 其他配置项不修改。 单击“保存”,保存配置信息。 父主题: 使用函数处理DIS数据
Redis健康检查 Redis健康检查的作用是判断Redis服务端是否正常工作,使用health_check_interval配置对Redis进行定时健康检查,该配置单位为秒,默认值为0不进行健康检查,代码如下: retry = Retry(ExponentialBackoff()
代码解读 FunctionGraph函数初始化入口 Redis连接池 Redis重试机制 Redis健康检查 父主题: 示例代码
Framework执行部署的主要方法: serverless deploy 当您在serverless.yml中更新了函数、事件或资源配置,并且希望将该更改(或多个更改)部署到华为云时,请使用此方法。 工作原理 Serverless Framework将serverless.yml中的所有语法转换为华为云部署管理的配置模板。
服务组合,处理物联网设备上报以及设备状态变动的相关数据。物联网设备在IoTDA 平台进行管理,设备产生的数据可以从IoTDA直接流转触发FunctionGraph 的函数运行。用户可以根据需要编写函数处理这些数据。 通常该组合,可以适用于以下场景,如将设备上报的数据在处理后进行存储到如OBS;对上报的数据进行结构化,
准备 案例实现的功能是将DIS数据格式转换,存储到表格存储服务中,所以需要先在表格存储服务创建集群,在创建集群时需要使用虚拟私有云。 创建函数之前,需要创建委托,给FunctionGraph函数赋权,确保FunctionGraph函数能够访问到DIS和CloudTable资源。 创建虚拟私有云
稳定的延时。4是函数内部初始化逻辑,属于应用层面的冷启动开销,例如深度学习场景下加载规格较大的模型、数据库场景下连接池构建、函数依赖库加载等等。 为了减小应用层冷启动对延时的影响,FunctionGraph推出了initializer接口,系统能识别用户函数的初始化逻辑,从而在调度上做相应的优化。
连接DCS集群实例 from redis.cluster import RedisCluster as Redis from redis.cluster import ClusterNode redis_client = None def create_redis_client(context):
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK")
FunctionGraph函数初始化入口 在示例代码中我们在initializer方法内创建Redis客户端,并在创建函数时配置了初始化函数,如下: def initializer(context): global redis_client redis_client