检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
测试实例性能 测试Kafka生产速率和CPU消耗 测试Kafka实例TPS
测试Kafka生产速率和CPU消耗 本章节从批处理大小、是否跨AZ生产、副本数、同步/异步复制的维度进行分布式消息服务Kafka版的性能测试,对比客户端消息生产速率和服务端CPU消耗,得出性能测试结果。 测试场景一(批处理大小):相同的Kafka实例和Topic,不同的消息大小
测试Kafka实例TPS 通过以下几个场景,测试不同实例规格的TPS。 测试场景一(实例是否开启SASL):相同的Topic,实例分为开启SASL和未开启SASL 测试场景二(同步/异步复制):相同的实例,不同复制机制的Topic 测试场景三(是否同步落盘):相同的实例,不同落盘机制的Topic
本文将介绍按需计费Kafka实例的计费规则。 适用场景 按需计费适用于具有不能中断的短期、突增或不可预测的应用或服务,例如电商抢购、临时测试、科学计算。 适用计费项 分布式消息服务Kafka版对您选择的Kafka实例和Kafka的磁盘存储空间收费。以下计费项支持按需计费。 表1
配置消息堆积数监控 方案概述 在消息处理过程中,如果客户端的消费速度跟不上服务端的发送速度,未处理的消息会越来越多,这部分消息就被称为堆积消息。消息没有被及时消费就会产生消息堆积,从而会造成消息消费延迟。 如果您想要在消费组的消息堆积数超过阈值时,通过短信/邮件及时收到通知信息,
Kafka 2.7版本,适用于测试场景,不建议用于生产业务。 TPS(Transaction per second),在Kafka场景中,指每秒能写入到Kafka实例的最大消息数量。下表中TPS性能,是指以1KB大小的消息为例的每秒处理消息条数。测试场景为连接内网访问明文接入、磁盘类型为超高I/O的实例。
单机和集群Kafka实例差异概述 单机实例是分布式消费服务Kafka版提供的单代理实例,只适用体验和业务测试场景,无法保证性能和可靠性。如果需要在生产环境使用Kafka实例,建议购买集群实例。 单机实例和集群实例支持的特性和功能有部分差异,具体如表1所示。 表1 单机实例和集群实例的差异说明
Kafka体验版实例规格为EXP,为单代理实例,不支持Kafka Manager、Smart Connect和多AZ等功能。 Kafka体验版实例只适用体验和业务测试场景,无法保证性能和可靠性。如果需要在生产环境使用Kafka实例,建议购买按需或包年包月的Kafka实例。 Kafka体验版仅在华南-广州的区域支持,其他区域暂不支持。
在调用接口的时候,部分URL中需要填入项目ID(project_id),所以需要先在管理控制台上获取到项目ID。 项目ID获取步骤如下: 登录管理控制台。 鼠标悬停在右上角的用户名,选择下拉列表中的“我的凭证”。 在“API凭证”页面的项目列表中查看项目ID。 图1 查看项目ID 父主题: 附录
告警级别:重要 该指标用于统计Kafka实例中所有消费组中总堆积消息数。 出现该告警时,首先排查是否有闲置消费组,如果有,则删除。其次,可以考虑加快消费速度,例如增加组内消费者数量等。 topic_messages_remained 队列可消费消息数 消费组 告警阈值:原始值>积压上限的90%,积压上限由您根据业务实际情况设定
在调用接口的时候,部分URL中需要填入账号名和账号ID,所以需要先在管理控制台上获取到账号名和账号ID。账号名和账号ID获取步骤如下: 登录管理控制台。 鼠标悬停在右上角的用户名,选择下拉列表中的“我的凭证”。 查看账号名和账号ID。 图1 查看账号名和账号ID 父主题: 附录
分别上报一条账单到计费系统进行结算。查看指定资源的账单时,需要分别查看实例账单和存储空间账单。 在Kafka实例列表页面如下图所示位置单击鼠标左键,复制实例的资源ID。 图1 获取资源ID(实例) 单击实例名称,进入实例详情页,查看存储空间的资源ID。 图2 获取资源ID(存储空间)
D信息找到具体的资源,然后将其一一删除。具体操作如下: 进入“费用中心 > 流水和明细账单”页面。 选择“明细账单”,在如下图所示位置单击鼠标左键,复制资源ID。 图1 复制资源ID 登录管理控制台,选择“应用中间件 > 分布式消息服务Kafka版”,进入分布式消息服务Kafka专享版页面。
a实例的最大消息数量。下表中TPS性能,是指以1KB大小的消息为例的每秒处理消息条数。测试场景为连接内网访问明文接入、磁盘类型为超高I/O的实例。如果您想要了解更多关于TPS的性能,请参考测试Kafka实例TPS。 表1 Kafka集群实例规格 规格名称 代理个数范围 单个代理TPS
实例状态从“变更中”变为“运行中”时,表示变更成功,在“规格”中查看扩容后的带宽大小。 图3 查看扩容后的带宽 实例状态从“变更中”变为“变更失败”时,表示变更失败,把鼠标放在“变更失败”上,显示变更失败的原因。 实例状态为“变更失败”时,无法对实例进行重启、修改和删除等操作。等一段时间实例状态会自动从“变更
IP(使用DNAT访问) 步骤五:验证接口连通性 参考使用客户端连接Kafka(关闭SASL)或者使用客户端连接Kafka(开启SASL),测试是否可以生产和消费消息。 测试接口连通性时,注意以下几点: 连接Kafka实例的地址为“advertised.listeners IP:9011”,以图6
同一个消费组内,一个消费者可同时消费多个分区,但一个分区在同一时刻只能被一个消费者消费。 在消息处理过程中,如果客户端的消费速度跟不上服务端的发送速度,未处理的消息会越来越多,这部分消息就被称为堆积消息。消息没有被及时消费就会产生消息堆积,从而会造成消息消费延迟。 消息堆积原因
诊断Kafka消息积压 在消息处理过程中,如果客户端的消费速度跟不上服务端的发送速度,未处理的消息会越来越多,这部分消息就被称为堆积消息。消息没有被及时消费就会产生消息堆积,从而会造成消息消费延迟。 分布式消息服务Kafka版在控制台提供了消息积压诊断功能,如果消息存在堆积,诊断
业务过载处理建议 方案概述 Kafka业务过载,一般表现为CPU使用率高、磁盘写满的现象。 当CPU使用率过高时,系统的运行速度会降低,并有加速硬件损坏的风险。 当磁盘写满时,相应磁盘上的Kafka日志目录会出现offline问题。此时,该磁盘上的分区副本不可读写,降低了分区的可
量”查看,具体步骤请参考查看Kafka监控数据。在不影响业务的前提下,建议适当调小Topic老化时间并等待消息老化,减少迁移数据,加快迁移速度。分区平衡任务结束后可重新调整为初始值。 前提条件 确保分区平衡的目标Broker磁盘容量充足,在磁盘存储统计中查看每个Broker的可用