开发者社区> 问答> 正文

消息服务的Subscription什么用处?


Subscription 描述一个订阅关系,包括被订阅的主题和接收消息的Endpoint;订阅者通过 Subscribe 接口创建订阅,MNS 根据订阅的描述给用户推送消息,推送的起点是订阅时 Topic 中最新的消息;订阅创建成功后,MNS 会向指定的 Endpoint 推送消息。如果 Endpoint 不可用,MNS 会按照指定的重试策略进行重试,重试失败后,会丢弃消息;

订阅属性


Endpoint
  • 接收消息的Endpoint;
  • 支持类型:HttpEndpoint、QueueEndpoint和MailEndpoint;

FilterTag
  • 过滤消息的标签;
  • 类型:字符串;
  • 指定了该属性后,MNS 仅推送消息标签与该属性一致的消息到对应的Endpoint;

NotifyStrategy
  • 消息推送出现错误时的重试策略;
  • 取值范围:BACKOFF_RETRY/EXPONENTIAL_DECAY_RETRY;
  • 当推送消息失败时,MNS 将按照该属性指定的重试策略进行重试,超过重试策略的次数后,MNS 将丢弃这条消息,继续推送下一条消息;
  • 具体的重试策略请参考 NotifyStrategy;

NotifyContentFormat
  • 推送给Endpoint的消息格式;
  • 取值范围:XML/SIMPLIFIED;
  • 具体推送消息的格式请参考 NotifyContentFormat;

CreateTime
  • 订阅的创建时间,从 1970-1-1 00:00:00 到现在的秒值;

LastModifyTime
  • 修改订阅属性信息的最近时间,从 1970-1-1 00:00:00 到现在的秒值


SubscriptionURL


  • 标识 Subscription 的 URL 格式:http://$AccountId.mns.<Region>.aliyuncs.com/topic/$TopicName/subscriptions/$SubscriptionName

  • mns.<Region>.aliyuncs.com:MNS 访问域名,Region 是 MNS 部署的区域,用户可以根据应用需要选择不同的区域,具体各区域的访问域名可以在控制台通过 [backcolor=transparent]获取地址 操作查看;
  • AccountId:表示主题所有者的帐号 ID,实际调用 MNS 的 API 时请替换成实际的帐号 ID;
  • TopicName:表示主题的名称,实际调用 MNS 的 API 时请替换成实际的主题名称;
  • SubscriptionName:表示Subscription的名称,实际调用 MNS 的 API 时请替换成实际 Subscription 的名称。同一个订阅者订阅相同的主题时,SubscriptionName 不能重复。

展开
收起
轩墨 2017-10-24 16:00:50 2102 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
消息服务在Serverless中的应用 立即下载
使命必达 —— 钉钉企业级 消息服务的机遇与挑战 立即下载
使命必达—钉钉企业级消息服务的机遇与挑战 立即下载

相关实验场景

更多