更新时间:2022-02-21 GMT+08:00

消费重置

操作场景

如果想跳过某些未消费的消息,或者想重新消费队列中的已消费的消息,或者只想消费某个时间点之后的消息(这些消息不论之前是否消费过),那么可以通过“消费重置”功能实现选择性跳过或者重新消费。

消费重置支持以下三种场景:

  • 消费位置重置到最前:

    重新消费队列中的所有的消息,不论之前是否已消费过。

  • 消费位置重置到最后:

    跳过队列中当前所有的消息,只消费“重置”之后新生产的消息。

  • 自定义重置位置:

    只消费队列中某一时间点之后的消息。

如果执行了消费重置,则重置位置之前的消息都变成已消费消息数,不管重置之前是否已消费。

前提条件

已创建队列和消费组,且消费组已消费消息。

操作步骤

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    此处请选择与您的应用服务相同的区域。

  3. 单击页面上方的“服务列表”,选择“应用服务 > 分布式消息服务”,进入分布式消息服务信息页面。
  4. 单击左侧菜单栏的“队列管理”,进入“队列管理”页面。
  5. 单击指定队列的名称,显示队列详情。
  6. 选择“消费组”,显示消费组列表。
  7. 选择消费组后的“更多 > 消费重置”,进入“消费重置”页面。
  8. 选择“重置位置”、是否强制重置,单击“确定”,执行重置消费位置。

    表1 消费消息参数说明

    参数

    说明

    重置位置

    • 从队列头端消费消息:重置成功后,该消费组从队列的最头端开始消费。
    • 自定义时间消费消息:重置成功后,该消费组只能消费重置时间点之后的消息。
    • 从队列尾端消费消息:重置成功后,该消费组只能消费队列中新生产的消息。

    默认为从队列头端消费消息。

    自定义时间

    当重置位置选择“自定义时间消费消息”时,需要设置自定义时间,并且只能选择72小时范围内的时间。

    强制重置

    关闭:重置时如果消费组正在消费消息,则重置会失败。

    打开:强制进行消费重置,如果消费组正在消费消息,则可能会消费失败。

    默认为关闭。