当出现消费堆积或倾斜时,您可以查看 Consumer Group 和 Topic 之间的订阅关系,通过各个分区的消费进度进行判断。

查看 Topic 被订阅的 Consumer Group

  • 登录消息队列 for Apache Kafka 控制台,在顶部菜单栏选择地域(Region)。
  • 在左侧导航栏,单击 Topic管理
  • Topic 管理页面,选择目标实例,然后找到目标 Topic,在其操作列单击更多 > 订阅关系

    订阅关系对话框,您可以看到所有订阅了该 Topic 的 Consumer Group 以及订阅Consumer Group数量。您还可以单击目标 Consumer Group ID 的操作列的详情,查看该 Topic 在各个分区的消息消费详情。

    表 1. 详情信息
    字段 说明
    分区ID 该 Topic 分区的 ID 号
    owner 实时显示已订阅指定 Topic 的在线消费端 ID 和 IP 地址,取值格式为 <Client ID>_/<IP>
    说明 非在线消费端则无法查看 owner 信息
    最大位点 该 Topic 在当前分区下的最大消息消费位点
    消费位点 该 Topic 在当前分区下的消息消费位点
    堆积量 当前分区下的消息堆积总量,即最大位点减去消费位点的值
    最近消费时间 该 Consumer Group 消费的最近一条消息被发送到 Broker 存储的时间

查看 Consumer Group 订阅的 Topic

  • 登录消息队列 for Apache Kafka 控制台,在顶部菜单栏选择地域(Region)。
  • 在左侧导航栏,单击 Consumer Group管理
  • Consumer Group管理页面,单击目标实例后,找到目标 Consumer Group,在其操作列单击消费状态

    消费状态对话框,您可以看到该 Consumer Group 订阅的所有 Topic 以及这些 Topic 的消息堆积总量,即各个分区的消息堆积量的总和。

    注意 消息堆积总量是一个关键指标,如果发现堆积总量较大,则应用消费端可能产生了阻塞,或者消费速度跟不上生产速度。此时需要分析消费端的运行状况,尽力提升消费速度。具体操作步骤,请参见重置消费位点

    您还可以单击目标 Topic 操作列的详情,查看该 Topic 对应的分区消息消费详情。

    表 1