一 机器部署
1、机器组成
7台机器,均为16G内存
每台服务器均有4个CPU,2核
2、运行环境配置
3、刷盘方式
每台机器master机器均采用异步刷盘方式
二 性能评测
1、评测目的
多线程环境下,测试producer端的TPS 和 consumer端的TPS。
2、评测指标
(1)生产者producer
TPS、线程个数、发送成功数量、发送失败数量、接收成功数量、接收失败数量、发送消息成功总耗时。
(2)消费者consumer
TPS、接收消息总数、消息存储总耗时,消息存储平均耗时、消息消费总耗时、消息消费平均耗时。
3、评测逻辑
(1)固定消息长度,producer端发送消息body的字符串默认100字符长度。
(2)输入不同的线程数,产生不同组的producer,记录发送消息的TPS、发送成功数和消息消费的TPS、消费成功数等等。
(3)根据多组测试数据,分析平均的生产TPS和平均消费TPS。
4、评测步骤
(1)创建性能测试的topic,名称为BenchmarkTopicTest。 队列个数默认8个。
(2)输入线程数、消息长度、是否开启message的key值,并做表格记录TPS。
(3)针对特定场景,保持线程数不变,增加消息message的size,记录producer端和consumer端的TPS,并做表格记录。
编号 | TPS (Producer) | TPS (Consumer) | 线程数 | 消息长度 | 是否配置 message的key值 |
5、评测过程
(1)第一组 线程个数1,消息长度固定128,不配置message的key值
编号 | TPS (Producer) | TPS (Consumer) | 线程数 | 消息长度 | 是否配置 message的key值 |
1 | 450 | 450 | 1 | 128 | False |
producer端发送记录
consumer端消费记录
(2)第二组 线程个数10,消息长度固定128,不配置message的key值
编号 | TPS (Producer) | TPS (Consumer) | 线程数 | 消息长度 | 是否配置 message的key值 |
1 | 3300 | 3250 | 10 | 128 | False |
producer端发送记录
consumer端消费记录
(3)第三组 线程个数32,消息长度固定128,不配置message的key值
编号 | TPS (Producer) | TPS (Consumer) | 线程数 | 消息长度 | 是否配置 message的key值 |
1 | 8000 | 7900 | 32 | 128 | False |
producer端发送记