zoukankan      html  css  js  c++  java
  • 阿里云-ONS-Help-产品介绍-消息类型:顺序消息

    ylbtech-阿里云-ONS-Help-产品介绍-消息类型:顺序消息
    1.返回顶部
    1、

    本文介绍消息队列 RocketMQ 版顺序消息的概念、适用场景以及使用过程中的注意事项。

    顺序消息(FIFO 消息)是消息队列 RocketMQ 版提供的一种严格按照顺序来发布和消费的消息。顺序发布和顺序消费是指对于指定的一个 Topic,生产者按照一定的先后顺序发布消息;消费者按照既定的先后顺序订阅消息,即先发布的消息一定会先被客户端接收到。

    顺序消息分为全局顺序消息分区顺序消息

    全局顺序消息

    对于指定的一个 Topic,所有消息按照严格的先入先出(FIFO)的顺序来发布和消费。

    • 适用场景

      适用于性能要求不高,所有的消息严格按照 FIFO 原则来发布和消费的场景。

    • 示例

      证券处理中以人民币兑换美元为 Topic,在价格相同的情况下,先出价者优先处理,则可以按照 FIFO 的方式发布和消费全局顺序消息。

    分区顺序消息

    对于指定的一个 Topic,所有消息根据 Sharding Key 进行区块分区同一个分区内的消息按照严格的 FIFO 顺序进行发布和消费。Sharding Key 是顺序消息中用来区分不同分区的关键字段,和普通消息的 Key 是完全不同的概念。

    • 适用场景

      适用于性能要求高,以 Sharding Key 作为分区字段,在同一个区块中严格地按照 FIFO 原则进行消息发布和消费的场景。

    • 示例
      • 用户注册需要发送发验证码,以用户 ID 作为 Sharding Key,那么同一个用户发送的消息都会按照发布的先后顺序来消费。
      • 电商的订单创建,以订单 ID 作为 Sharding Key,那么同一个订单相关的创建订单消息、订单支付消息、订单退款消息、订单物流消息都会按照发布的先后顺序来消费。

    阿里巴巴集团内部电商系统均使用分区顺序消息既保证业务的顺序,同时又能保证业务的高性能

    全局顺序与分区顺序对比

    在控制台创建顺序消息使用的不同类型 Topic 对比如下。

    表 1. 消息类型对比
    Topic 的消息类型是否支持事务消息是否支持定时/延时消息性能
    无序消息(普通、事务、定时/延时消息) 最高
    分区顺序消息
    全局顺序消息 一般
    表 2. 发送方式对比
    消息类型是否支持可靠同步发送是否支持可靠异步发送是否支持 Oneway 发送
    无序消息(普通、事务、定时/延时消息)
    分区顺序消息
    全局顺序消息

    注意事项

    使用顺序消息时,请注意以下几点:

    • 顺序消息暂不支持广播模式
    • 建议同一个 Group ID 只对应一种类型的 Topic,即不同时用于顺序消息和无序消息的收发。
    • 顺序消息不支持异步发送方式,否则将无法严格保证顺序
    • 对于全局顺序消息,建议消息不要有阻塞。同时运行多个实例,是为了防止工作实例意外退出而导致业务中断。当工作实例退出时,其他实例可以立即接手工作,不会导致业务中断实际工作的只会有一个实例

    TCP SDK 示例代码

    TCP 协议下的示例代码请参见以下文档:
    2、
    2.返回顶部
     
    3.返回顶部
     
    4.返回顶部
     
    5.返回顶部
    1、
    2、
     
    6.返回顶部
     
    warn 作者:ylbtech
    出处:http://ylbtech.cnblogs.com/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    分布式、集群的概念、区别
    Entity Framework学习
    QT入门
    Xcode插件开发
    函数指针
    c创建win窗口
    设置UITableView section间距
    使用谷歌地图时报一堆错的解决方法
    IOS地图及定位使用
    IOS判断手机型号
  • 原文地址:https://www.cnblogs.com/storebook/p/12594729.html
Copyright © 2011-2022 走看看