【有奖实践】轻量消息队列(原 MNS)订阅 OSS 事件实时处理文件变动
当你需要对对象存储 OSS(Object Storage Service)中的文件变动进行实时处理、同步、监听、业务触发、日志记录等操作时, 你可以通过设置 OSS 的事件通知规则,自定义关注的文件,并将 OSS 事件推送到轻量消息队列(原 MNS)的队列或主题中,开发者的服务即可及时收到相关通知,并通过消费消息进行后续的业务处理。
方案简介
如下图所示,如果你创建了事件通知规则,当你在请求 OSS 进行相关操作时,轻量消息队列(原 MNS)将 OSS 指定资源上产生的事件以消息的方式推送到接收端。
在请求 OSS 进行相关操作时,事件通知通过在返回的 Response 中增加 Header 来描述触发事件通知的结果,不会影响原定接口的返回值。如果没有匹配事件通知的规则,则不会增加 Header;如果匹配成功,不管事件通知是否触发成功,都会增加这个 Header。Header 格式如下:
x-oss-process-status: 'ewogICAgImNvZGUiOiAiU3VjY2VzcyIsCiAgICAibWVzc2FnZSI6ICJOb3RpZmljYXRpb25TdWNjZWVkIiwKICAgICJ0eXBlIjogIkV2ZW50Tm90aWZpY2F****'
- key:x-oss-process-status
- value:经过 Base64 编码,解码后为:
{
"code":"Success", //此次触发事件通知的结果。如果成功,返回Success,否则为Fail。Success表示OSS将消息发送到了主题,并不代表主题将消息推送到了Endpoint。
"message":"NotificationSucceed", //此次操作的详细描述。如果失败,此处会说明失败的原因。
"type":"EventNotification", //操作类型。事件通知的操作类型统一为EventNotification。
"version":"1.0"
}
更多消息推送的类型,请参见订阅类型 [ 1] 。
适用场景
- 当你授权其他用户对你的资源(Bucket)进行某些操作的权限,且希望关注这些操作,可以通过创建规则,在这些操作发生时主动通知你。
- 通过事件通知的方式进行数据分析、查看一段时间内某个操作发生的次数,分析你的业务最近的发展趋势。你还可以将这些事件通知的消息导入其他服务,例如 EMR,进一步进行自定义分析。
- 通过事件通知监控你的资源上发生的某些操作的 QPS 等指标。
立即体验
【限时有奖】轻量消息队列(原 MNS)订阅 OSS 事件实践
- 活动时间: 2025.2.10 - 2.28
- 参与方式: 点击链接 https://developer.aliyun.com/topic/mns/202501 即可参与活动
- 活动规则: 根据实验手册完成实操,上传收发消息截图,即可获得 ins 风 u 型枕!
了解更多
轻量消息队列(原 MNS)凭借简单队列模型、无损发布能力、按量付费,成为众多云产品首选的消息通道。通过一张图带你快速了解~
相关链接:
[1] 订阅类型
https://help.aliyun.com/zh/mns/user-guide/push-messages-to-a-queue#concept-2028805
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2022-02-25 阿里云资深专家李国强:云原生的一些趋势和新方向
2022-02-25 异步请求积压可视化|如何 1 分钟内快速定位函数计算积压问题
2022-02-25 微服务用户为什么要用云原生网关
2022-02-25 15 分钟实现企业级应用无损上下线
2021-02-25 OpenYurt 如何 “0 侵入” 攻破云边融合难点
2020-02-25 轻松构建基于 Serverless 架构的小程序
2020-02-25 从零开始入门 K8s | Kubernetes API 编程利器:Operator 和 Operator Framework