检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
消息堆积可能的原因、受影响的分区或者broker,以及解决消息堆积的建议。 前提条件 已创建Kafka实例,并且消费组正在以非assign方式消费消息中。 一个消费组正在诊断中时,无法对其他消费组进行诊断,也无法对此消费组消费的其他Topic进行诊断。 操作流程 图1 消息积压诊断流程图
Kafka 创建IAM用户,并授予DMS for Kafka的权限,以达到用户之间权限的隔离。 购买Kafka实例 Kafka实例采用物理隔离的方式部署,租户独占Kafka实例。 创建Kafka Topic 创建用于存储消息的Topic,供生产者生产消息以及消费者订阅消息。 连接实例
容量充足。该场景优先保障业务不中断,数据可能会丢失。 以上两种策略需要基于业务对数据和业务的可靠性来进行选择,只能作为极端场景下的一种处理方式。建议业务购买时保证有充足的磁盘容量,避免磁盘的使用达到容量阈值。 父主题: 实例问题
支持1.1.0、2.7和3.x版本。 可用区 支持单可用区。 支持1个或者3个及以上可用区。 代理数量 1个代理。 3个及以上代理。 接入方式 支持明文接入。 支持明文接入和密文接入。 变更实例规格 × √ 重置Kafka密码 × √ 查看磁盘使用量 × √ 修改分区平衡 × √
kafka modifyDMSInstanceInfoTaskFailure 删除后台任务成功 kafka deleteDMSBackendJobSuccess 删除后台任务失败 kafka deleteDMSBackendJobFailure 开启Smart Connect任务执行成功
选择需要诊断的消费组名称和Topic名称,单击“诊断前检查”。 诊断前检查成功后,如果“消息积压情况”显示有消息积压,并且消费组正在以非assign方式消费消息中,单击“开始诊断”。 诊断成功后,在诊断记录所在行,单击“查看详情”,进入“诊断详情”页面,查看导致消息堆积的可能原因、受影响的
SDK概述 本文介绍了分布式消息服务Kafka版提供的SDK语言版本,列举了最新版本SDK的获取地址。 在线生成SDK代码 API Explorer能根据需要动态生成SDK代码功能,降低您使用SDK的难度,推荐使用。 SDK列表 在开始使用之前,请确保您安装的是最新版本的SDK。
Kafka实例分内网地址以及公网地址两种网络连接方式。如果使用公网地址,则消息生成与消费客户端需要有公网访问权限,并配置如下安全组。 表1 安全组规则 方向 协议 端口 源地址 说明 入方向 TCP 9094 Kafka客户端所在的IP地址或地址组 通过公网访问Kafka(明文接入)。 入方向 TCP
选择Kafka实例的购买时长,判断是否勾选“自动续费”,确认预计到期时间和配置费用后单击“去支付”。 图1 按需转包年/包月 进入支付页面,选择支付方式,确认付款,支付订单后即可完成按需转包年/包月。 父主题: 变更计费模式
Topic详情页面显示Topic的基本信息、订阅关系、分区信息和生产者信息。 基本信息:包含Topic名称、关联代理、分区数和创建时间。 创建Topic的时间或方式满足以下任意一种情况时,Topic详情页面不显示创建时间。 2023年7月10日以及之前创建的Topic。 自动创建的Topic、在客户端
致无法生产消息。 创建方式:支持选择是否开启Kafka自动创建Topic的开关。选择开启后,表示向一个未创建的Topic生产或消费消息时,系统会自动创建此Topic。 其他建议 连接数限制:3000 消息大小:不能超过10MB 使用SASL_SSL协议访问Kafka:确保DNS具
自动创建Topic时的默认副本个数。 1 ~ 3 3 allow.everyone.if.no.acl.found 如果设置为true,没有给资源配置ACL时,允许所有用户访问。 如果设置为false,初始用户拥有所有操作的权限,其他用户需要配置权限才能进行对应的操作。 所有操作包括修改Topic权限、创建和删除Topic、以及修改Topic分区数。
poll.records条消息会不会超过max.poll.interval.ms时间。 消息处理流程是否有网络行为,如写数据库、调用后端API等,在发生Rebalance的场景下消费者下游系统是否正常。 解决方法:建议在消费者客户端将max.poll.records值减小,如果消息处理时间较长可以适当增加max
时,连接不断开,所有消费者不间断地拉取消息,这样造成了一定的资源浪费。 图1 Kafka消费者多线程消费模式 解决方案 在开了多个线程同时访问的情况下,如果Topic里已经没有消息了,其实不需要所有的线程都在poll,只需要有一个线程poll各分区的消息就足够了,当在pollin