更新时间:2024-08-23 GMT+08:00
分享

创建消费组

您可以在华为云LTS控制台为日志流创建消费组,使用集成云日志服务Java SDK通过消费组消费数据。您无需关注SDK的实现细节以及消费者之间的负载均衡等,只需要关注业务逻辑。

云日志服务通过消费组消费数据,使用消费组功能之前,您需要了解以下基本概念。

目前此功能在邀测中,暂不支持申请开通。

表1 基本概念

概念

说明

消费组

  • 一个消费组只能对应一个日志流且消费这个日志流的数据。
  • 一个日志流只能创建5个消费组。
  • 一个消费组可以被多个消费者消费,每个消费者不会重复消费数据。
  • 同一个租户(Project_Id)下,消费组名称唯一。

消费者

消费组的基本构成单元,承担消费任务,可以根据您的服务自行决定消费者数量。

Shard

云日志服务将数据必定保存在某一个Shard中,是数据存储的基本单元。

CheckPoint

消费点位,是消费者消费到的最新位置。程序重启后,SDK会自动通过CheckPoint恢复上次的消费进度。

消费逻辑

一个日志流包含多个Shard,通过消费组消费数据就是将Shard分配给消费组的消费者,分配规则如下:

  • 在消费过程中,一个Shard只会分配给一个消费者
  • 在消费过程中,一个消费者可以消费多个Shard

当消费组新增/减少消费者,或者日志流的Shard数量增加时,这个时候消费组的Shard会重新分配给当前的消费者,以实现消费者的负载均衡。分配规则不变如上。

创建消费组

  1. 登录云日志服务控制台。
  2. 单击日志组名称对应的按钮。
  3. 单击日志流名称进入日志流详情页面,单击右上角,在弹出页面中,选择“日志消费”页签。
  4. 单击新建消费组,填写消费组名称,单击“确定”。
  5. (可选)当某个消费组,消费到一定位置时,如果想重头或者指定一个时间继续进行消费,支持重置消费位点。

    单击重置消费点位,支持设置最早位置和指定时间点,需要重启SDK后,重置消费位点才能生效。
    • 最早位置:从头开始一直拉取到当前最新时间的日志。
    • 指定时间点:从指定的时间点一直拉取到当前最新时间的日志。
    • 消费期间重置消费位点,会导致消费日志紊乱,建议停止消费后再重置消费位点。

相关文档