什么是顺序消息?

顺序消息 FIFO (先进先出)是 消息队列MQ 提供的一种严格按照顺序进行发布和消费的消息类型。
对于指定的一个 Topic,客户端将按照一定的先后顺序发送消息,即顺序发布;同时,客户端也按照先后顺序接收消息,保证先发布的消息先消费,即顺序消费。

价值:严格保序,满足业务差异化需求

类型多样

支持全局顺序以及分区顺序两种,满足业务的差异化需求。

高性能&可扩展

分区顺序在保证顺序的同时,通过分区设计提高整体并发度,具有与普通消息一致的平滑扩容能力,无严格上限。

严格保序

无论是服务上下线、扩缩容,网络不稳定等情况下, 始终保证消息的严格有序,优于部分开源产品。

顺序消息的类型及适用场景
类型一:全局顺序

关于全局顺序

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

适用场景

对于性能要求不高的全局性业务场景,如:证券交易平台中,同一股别的交易是全平台按照订单的创建时间顺序进行交易,则可以采用全局顺序。

类型二:分区顺序

关于分区顺序

对于指定的一个 Topic,所有消息根据 sharding key 进行区块分区。 同一个分区内的消息按照严格的 FIFO 顺序进行发布和消费。

适用场景

对于性能要求高,非全局性有序,可拆分出最小有序单元的系统,如:电商系统,一个完整的订单处理流程为最小有序单元,以订单 ID 作为 sharding key,那么同一个订单相关的创建订单消息、订单支付消息、订单退款消息、订单物流消息都会按照先后顺序来发布和订阅。

关联产品推荐