【有奖实践】轻量消息队列(原 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

posted @   阿里云云原生  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用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
点击右上角即可分享
微信分享提示