函数计算
本文介绍如何在云消息队列 MQTT 版控制台创建流出目标为函数计算的消息流出任务。
前提条件
什么是函数计算?
函数计算(Function Compute,FC)是一个事件驱动的全托管Serverless计算服务,您无需管理服务器等基础设施,只需编写代码并上传,函数计算会为您准备好计算资源,并以弹性、可靠的方式运行您的代码。更多信息,请参见什么是函数计算。
函数计算能做什么?
利用函数实现业务消息的处理,通过函数计算平台开发、运行业务消息处理逻辑,订单处理,任务执行。
利用函数对消息进行快速加工处理,ETL清洗。
利用函数计算灵活扩展将消息转储到指定VPC中的其它下游系统。
利用函数连接消息系统和其他阿里云产品服务,将消息数据发送给其他云服务系统。
创建消息流出任务
登录云消息队列 MQTT 版控制台,并在左侧导航栏选择 。
在顶部菜单栏选择地域,如华东1(杭州),然后在任务列表页面中,单击创建任务。
在创建任务面板,设置任务名称和描述,配置以下参数。
任务创建
在Source(源)配置向导,选择数据提供方为消息队列 MQTT 版,设置以下参数,然后单击下一步。
参数
说明
示例
地域
默认选择创建任务时所在的地域。
华东1(杭州)
MQTT 实例
选择MQTT实例。
post-cn-jajh8i****
MQTT Topic
选择MQTT实例中的Topic。
test-topic
数据格式
数据格式是针对支持二进制传递的数据源端推出的指定内容格式的编码能力。支持多种数据格式编码,如无特殊编码诉求可将格式设置为Json。
Json(默认Json格式编码,二进制数据按照utf-8 编码为Json格式放入Payload。)
Text(文本格式编码,二进制数据按照utf-8编码为字符串放入Payload。)
Binary(二进制格式编码,二进制数据按照Base64编码为字符串放入Payload。)
Json
批量推送
批量推送可帮您批量聚合多个事件,当批量推送条数和批量推送间隔(单位:秒)两者条件达到其一时即会触发批量推送。
例如:您设置的推送条数为100 条,间隔时间为15 s,在10 s内消息条数已达到100条,那么该次推送则不会等15 s后再推送。
开启
批量推送条数
调用函数发送的最大批量消息条数,当积压的消息数量到达设定值时才会发送请求,取值范围为 [1,10000]。
100
批量推送间隔(单位:秒)
调用函数的间隔时间,系统每到间隔时间点会将消息聚合后发给函数计算,取值范围为[0,15],单位为秒。0秒表示无等待时间,直接投递。
3
在Filtering(过滤)配置向导,设置数据模式内容过滤发送的请求。更多信息,请参见事件模式。
在Transform(转换)配置向导,设置数据清洗,实现分割、映射、富化及动态路由等繁杂数据加工能力。更多信息,请参见使用函数计算实现消息数据清洗。
在Sink(目标)配置向导,选择服务类型为函数计算,配置以下参数。
参数
说明
示例
函数
选择已创建的函数计算的函数。
test
服务版本和别名
选择服务版本或服务别名。
默认版本
执行方式
选择同步执行或异步执行。
异步
事件
选择事件内容转换类型。更多信息,请参考事件内容转换。
完整数据
任务属性
配置事件推送失败时的重试策略及错误发生时的处理方式。更多信息,请参见重试和死信。
返回任务列表页面,找到创建好的任务,在其右侧操作列,单击启用。
在提示对话框,阅读提示信息,然后单击确认。
启用任务后,会有30秒~60秒的延迟时间,您可以在任务列表页面的状态栏查看启动进度。
其他操作
在任务列表页面,找到目标任务,在其右侧操作列,执行其他操作。
查看任务详情:单击详情,在任务页面,查看任务的基础信息、任务属性及监控指标。
编辑任务配置:单击编辑,在编辑任务面板,修改任务详情及属性。
启停任务:单击启用或者停用,然后在提示对话框,单击确认。
删除任务:单击删除,然后在提示对话框,单击确认。