检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
测试Kafka生产速率和CPU消耗 本章节从批处理大小、是否跨AZ生产、副本数、同步/异步复制的维度进行分布式消息服务Kafka版的性能测试,对比客户端消息生产速率和服务端CPU消耗,得出性能测试结果。 测试场景一(批处理大小):相同的Kafka实例和Topic,不同的消息大小
测试Kafka实例TPS 通过以下几个场景,测试不同实例规格的TPS。 测试场景一(实例是否开启SASL):相同的Topic,实例分为开启SASL和未开启SASL 测试场景二(同步/异步复制):相同的实例,不同复制机制的Topic 测试场景三(是否同步落盘):相同的实例,不同落盘机制的Topic
测试实例性能 测试Kafka生产速率和CPU消耗 测试Kafka实例TPS
Kafka 2.7版本,适用于测试场景,不建议用于生产业务。 TPS(Transaction per second),在Kafka场景中,指每秒能写入到Kafka实例的最大消息数量。下表中TPS性能,是指以1KB大小的消息为例的每秒处理消息条数。测试场景为连接内网访问明文接入、磁盘类型为超高I/O的实例。
单机和集群Kafka实例差异概述 单机实例是分布式消费服务Kafka版提供的单代理实例,只适用体验和业务测试场景,无法保证性能和可靠性。如果需要在生产环境使用Kafka实例,建议购买集群实例。 单机实例和集群实例支持的特性和功能有部分差异,具体如表1所示。 表1 单机实例和集群实例的差异说明
a实例的最大消息数量。下表中TPS性能,是指以1KB大小的消息为例的每秒处理消息条数。测试场景为连接内网访问明文接入、磁盘类型为超高I/O的实例。如果您想要了解更多关于TPS的性能,请参考测试Kafka实例TPS。 表1 Kafka集群实例规格 规格名称 代理个数范围 单个代理TPS
Kafka体验版实例规格为EXP,为单代理实例,不支持Kafka Manager、Smart Connect和多AZ等功能。 Kafka体验版实例只适用体验和业务测试场景,无法保证性能和可靠性。如果需要在生产环境使用Kafka实例,建议购买按需或包年包月的Kafka实例。 Kafka体验版仅在华南-广州的区域支持,其他区域暂不支持。
本文将介绍按需计费Kafka实例的计费规则。 适用场景 按需计费适用于具有不能中断的短期、突增或不可预测的应用或服务,例如电商抢购、临时测试、科学计算。 适用计费项 分布式消息服务Kafka版对您选择的Kafka实例和Kafka的磁盘存储空间收费。以下计费项支持按需计费。 表1
\src\test\java\com\dms\consumer 消费消息的测试代码。 DmsProducerTest.java .\src\test\java\com\dms\producer 生产消息的测试代码。 pom.xml .\ maven配置文件,包含Kafka客户端引用。
Kafka实例的超高IO和高IO如何选择? 高IO:平均时延1-3ms,最大带宽150MB/s(读+写)。 超高IO:平均时延1ms,最大带宽350MB/s(读+写)。 建议选择超高IO,云硬盘服务端压力大场景,都不能达到最大带宽,但是超高IO可达到的带宽比高IO高很多。 父主题:
IP(使用DNAT访问) 步骤五:验证接口连通性 参考使用客户端连接Kafka(关闭SASL)或者使用客户端连接Kafka(开启SASL),测试是否可以生产和消费消息。 测试接口连通性时,注意以下几点: 连接Kafka实例的地址为“advertised.listeners IP:9011”,以图6
"heartbeats", "B.checkpoints.internal" and # "mm2-offset-syncs.B.internal" # 测试环境可以为1,生产环境建议以下配置大于1,比如设为3 checkpoints.topic.replication.factor=3 heartbeats
listeners IP 步骤五:验证接口连通性 参考使用客户端连接Kafka(关闭SASL)或者使用客户端连接Kafka(开启SASL),测试是否可以生产和消费消息。 测试接口连通性时,注意以下几点: 连接Kafka实例的地址为“advertised.listeners IP:9011”,以图8
优化消费者轮询(Polling) 方案概述 应用场景 在分布式消息服务Kafka版提供的原生Kafka SDK中,消费者可以自定义拉取消息的时长,如果需要长时间的拉取消息,只需要把poll(long)方法的参数设置合适的值即可。但是这样的长连接可能会对客户端和服务端造成一定的压力
#安全协议为“SASL_PLAINTEXT”时,配置信息如下。 security.protocol=SASL_PLAINTEXT 生产消息 测试代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
启“同步消费进度”,此时会导致数据重复复制,且目标Topic消费进度异常。 图1 复制数据规则配置 (可选)在页面右下角单击“开始检测”,测试两端Kafka实例的连通性。 显示“连通性检测成功”时,表示两端Kafka实例可以正常连接。 单击“立即创建”,跳转到Smart Conn
为什么Kafka实例常常发生Rebalance(重平衡),导致消息拉取失败? 消费组的Rebalance就是对Topic分区的重新分配。 正常情况下消费组内加入新的消费者或老的消费者退出都会导致Rebalance,这种情况是无法避免的。但是某些特殊情况下,消费者会被服务端认为异常
选择“综合推荐”中的“入门版”。入门版面向入门级用户,提供兼容开源协议的托管Kafka服务,适用于性能诉求不高、时延容忍度较高的成本敏感业务或测试环境等。 单个代理存储空间 根据实际需要选择存储Kafka数据的磁盘类型和磁盘大小。 实例总存储空间 = 单个代理的存储空间 * 代理数量