您可通过PTS控制台快速实现Kafka压测。本文介绍如何对Kafka进行压测。
功能入口
- 登录PTS控制台,在左侧导航栏选择 ,然后单击Kafka压测。
- 在创建Kafka场景页面,填写场景名。
- 在场景配置页签下,单击+添加Kafka节点,为目标串联链路添加所需测试节点。
场景配置
单击串联链路右侧的图标,展开串联链路,并配置基本信息、出参、检查点等信息。
基本配置
在串联链路的基本配置页签设置压测基本参数。具体配置如下。
相关基本配置 | 说明 |
生产者配置 | |
brokers | Kafka集群中的一台或多台服务器统称broker。例如127.0.0.1:9092。多个broker以半角逗号(,)分隔。 |
batchSize | Kafka发送端批量发送的缓存大小,单位B,一般和lingerMS配合使用。 |
lingerMS | 消息发送延时,默认的延时时间是0毫秒(ms),即接到消息后会立刻发送。 若生产端对于吞吐量要求不高,可不设置该项;若生产端对于吞吐量要求较高,但是对于实时性要求不高,则可以配置该项。 |
压缩类型 | 生产者端指定的消息压缩算法,例如GZIP、LZ4。 |
消息配置 | |
topic | 一个 Topic(主题)对应一个消息队列。 |
partition | Kafka在概念上将一个Topic分成了多个Partition(分区),写入Topic的消息会被(平均)分配到其中一个Partition。 |
key | 输入key,系统会按照key进行哈希,因此相同key的消息会发送到同一个partition。 |
消息序列化方式 | 选择消息序列化方式,序列化后,消息才可以进行网络传输。目前支持的消息序列化方式有:
|
message | Kafka实际需要发送的消息。 |
出参设置
在串联链路的出参设置页签设置出参。具体操作,请参见接口出参。
检查点设置
在串联链路的检查点设置页签设置检查点。具体操作,请参见检查点(断言)。
控制器和定时器(可选)
您可以根据不同压测场景的需求,添加控制器和定时器。
在场景配置页签下,单击+添加控制器选择所需的控制器。
循环控制器:控制所含测试节点应循环执行的次数。
选择循环控制器后,单击其右侧的图标,选择添加需循环执行的测试节点,并设置循环次数。压测时,会将此循环控制器下的测试节点按序执行设置的次数。
事务控制器:事务控制器下所包含的所有测试节点将会被算作为一个事务。其包含生成父样本和是否包含样品中定时器和前后程序的持续时间两个设置项。
生成父样本:
开启开关:该事务控制器下各测试节点自身的压测结果不会在压测报告中独立输出,而会被聚合作为事务控制器的结果呈现在报告中。
关闭开关:该事务控制器以及其包含的测试节点的压测结果均会显示在报告中。
是否包含样品中定时器和前后程序的持续时间:若选择开启此开关,则压测报告中事务控制器的平均响应时间为所有测试节点、定时器以及前后置处理器的平均响应时间之和。若不开启此开关,则事务控制器的平均响应时间仅为所有测试节点平均响应时间之和。
仅一次控制器:仅一次控制器下添加的节点仅会被执行一次。
在场景配置页签下,单击+添加定时器选择所需的定时器。
常量定时器:可设置停顿时长,表示压测过程中,在此处停顿的时长,单位为毫秒。
同步定时器:可设置停顿时长和模拟用户数,表示在一定时间内先等待达到一定用户数然后触发测试,但若在设定时间内未达到指定用户数,则不会继续等待,直接触发测试。
统一随机定时器:统一随机定时器用于控制停顿时长,可设置延迟基准和可变跨度。延迟基准为固定停顿时间,可变跨度为随机停顿时间的最大值。统一随机定时器的停顿时长为延迟基准所设的固定停顿时间加上可变跨度所设时间范围内的随机值。各随机值出现的概率相等。
高斯定时器:高斯定时器与统一随机定时器类似,同样用于设置停顿时长,可设置延迟基准和可变跨度。若要求随机停顿时间符合正态分布,可使用高斯定时器。
固定吞吐量定时器:固定吞吐量定时器用于控制吞吐量,使测试节点按吞吐量执行。可设置条件和对应的吞吐量。条件包含仅当前线程、所有活跃线程、当前链路下活跃线程、全局活跃线程和当前链路下全局活跃线程。
施压配置
单击施压配置页签,设置压测模式。
压测配置 | 描述 |
压力来源 | 本次压测使用的网络类型,包括公网和阿里云VPC内网两种类型。具体详情,请参见压力来源(公网和VPC)。 |
并发数 | 虚拟用户发起请求的个数。例如:100个并发数就是100个虚拟用户同时发起了请求。 |
压测时长 | 建议压测时长不低于2分钟,总时长默认不可超过24小时。 |
流量模型 | 并发数的递增模型。选择不同的流量模型,页面右侧的压力预估图会同时刷新。
|
递增时长 | 全部并发从0到全部运行起来的时间。当流量模型选择的是均匀递增或者阶梯递增时,需要配置该递增时长。 |
递增阶梯数 | 完成递增时间段的阶梯数。当流量模型选择的是阶梯递增时,需要配置该递增阶梯数。 |
指定IP数 | 指定压测来源的IP个数。具体详情,请参见指定施压IP数。 |
流量地域定制 | 通过指定施压机的地理位置,即可模拟当地的用户流量。开启后可对施压机地域分布进行配置,从而实现施压流量地域分布的定制化。具体详情,请参见定制地域流量。 |
启动压测
您可以在创建压测场景页面左下方,单击调试场景,对配置的场景进行调试,验证配置是否正确。具体操作,请参见调试场景。然后单击保存去压测,在弹出的对话框中单击确定,启动压测。
后续操作
查看压测报告。具体操作,请参见查看多协议压测报告。