Skip to Content
产品简介功能特性消息类型

消息类型

URocketMQ支持普通、分区顺序、全局顺序、事务、定时等多种消息类型,针对每种类型消息生产/消费代码可能有所差异,建议不要混用。

普通消息

通用无特殊设置消息,性能最高。

分区顺序消息

利用用户提供的 Sharding Key 进行分区,同一个分区内的消息按照严格的 FIFO顺序进行发布和消费。

全局顺序消息

所有消息保证FIFO生产和消费,实际为一个队列,性能最低。

事务消息

事务消息提供类似 X/Open XA 的分布事务功能,要么同时成功,要么同时失败,通过事务消息能达到分布式事务的最终一致。

定时/延时消息

在开源RocketMQ支持固定梯度延时消息同时,URocketMQ自研支持任意秒级定时/延时消息。

固定梯度延迟消息

开源RocketMQ支持固定梯度的延迟消息,消息发送到之后,不会立即被消费,等待特定时间投递给真正的topic,默认配置“1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h” 18个级别,每个级别对应不同的延时时间,比如1对应1s,5对应1m,具体如下:

延迟等级延迟时间
11s
25s
310s
430s
51m
62m
73m
84m
95m
106m
117m
128m
139m
1410m
1520m
1630m
171h
182h

任意秒级延迟消息

URocketMQ自研支持任意秒级延迟消息,用户可自定义定时或者延迟至未来任意一秒发送消息。

说明:

  1. 定时消息的精度会有1s~2s的延迟误差。
  2. 默认支持2天以内自定义秒级延迟消息。
  3. 同时设置固定梯度延迟与自定义延迟属性,仅生效固定梯度延迟。
  4. 延迟时间超过支持范围(如默认2天),则以最大支持时间为准。
  5. 实际时间戳以服务端时间为准,如果定时时间戳小于当前服务器时间戳则立即发送。
  6. 2021年11月15日之前创建的实例会按批次进行升级以支持该特性,如实例未支持可联系客户经理进行实例升级。