可能的原因包括消息流量达到网络带宽、单个消息大小超过网络带宽或者Consumer每次拉取的消息量超过网络带宽。
问题现象
Topic中有消息并且Consumer未消费到最新的位置,出现消费端从服务端拉取不到消息或拉取消息缓慢的情况(特别是公网消费时)。
可能原因
可能的原因包括:
- 消费流量达到网络带宽。
- 单个消息大小超过网络带宽。
- Consumer每次拉取的消息量超过网络带宽。 说明 Consumer每次消息的拉取量受以下参数影响:
- max.poll.records:每次拉取的最多消息数。
- fetch.max.bytes:每次拉取的最大总byte数。
- max.partition.fetch.bytes:每个Partition每次拉取的最大总byte数。
解决方案
- 登录云消息队列 Kafka 版控制台查询消息。如果能查询到消息,请继续尝试以下步骤。
- 在实例详情页面,单击左侧导航栏的监控报警,查看消费流量是否已达到网络带宽。如果消费流量已经达到网络带宽,您需要扩充网络带宽。
- 检查Topic中是否存在单个消息的大小超过网络带宽。如果存在单个消息的大小超过网络带宽,请提高网络带宽,或者减小单个消息的大小。
- 检查Consumer每次拉取的消息量是否超过网络带宽。如果每次拉取的消息量超过网络带宽,您需要调整以下参数。
- 网络带宽>fetch.max.bytes
- 网络带宽>max.partition.fetch.bytes*总订阅Partition数