您的位置:首页 > 其它

【性能测试报告】

2016-11-22 00:00 148 查看

[b]【性能测试报告】[/b]

[b]测试目的:[/b]

测试分布式架构下单纯进行转码切图应用的处理能力(吞吐率)

[b]测试条件:[/b]

云桌面

CPUIntel 2.5GHz 1处理器 64bitOS

内存 8G

[b]测试过程:[/b]

[b]生产应用App1[/b]

生产者线程(1个)

负责从阿里云拉取房间号(1000个)并写入Kafka队列

消费者线程(1个)

负责从Kafka队列拉取房间号,下载云视频至本地并写入本地队列

本地消费线程(5个)

负责从本地队列拉取视频进行转码切图操作

[b]消费应用App2[/b]

消费者线程(1个)

负责从Kafka队列拉取房间号,下载云视频至本地并写入本地队列

本地消费线程(5个)

负责从本地队列拉取视频进行转码切图操作

[b]测试结果:[/b]

(I)在一台机器上开了两个应用App1 和App2

[b]App1(518个)[/b] [b]App2(482)[/b]
Kafka入队时间 13:09:17.570 13:09:17.567
Kafka出队时间 13:09:25.063 13:09:27.569
本地入队时间 13::09:25.178 13:09:28.068
开始处理时间 13::09:25.178 13:09:28.068
结束处理时间 13:12:56.644 13:12:42.873
耗时 211s 194s
吞吐率 518/211=2.45个/秒 482/194=2.48个/秒
处理能力 [b]2.45+2.48=4.93个/秒=295.8个/分钟=425952个/天[/b]
(II)分别在2台机器上开应用App1 和App2

[b]App1(509个)[/b] [b]App2(491)[/b]
Kafka入队时间 13:32:44.686 13:32:44.677
Kafka出队时间 13:32:56.994 13:32:46.877
本地入队时间 13:32:57.057 13:32:47.303
开始处理时间 13:32:57.058 13:32:47.304
结束处理时间 13:36:00.852 13:35:42.984
耗时 183s 175s
吞吐率 509/183=2.78个/秒 482/194=2.81个/秒
处理能力 [b]2.78+2.81=5.59个/秒=335.4个/分钟=482976个/天[/b]
备注:每个应用各起了5个消费者线程

[b]测试分析:[/b]

[b]线程数[/b] [b]开始时间[/b] [b]结束时间[/b] [b]处理时长(秒)[/b] [b]吞吐率(个/秒)[/b] [b]吞吐率(个/分钟)[/b] [b]CPU(%)[/b]
1 17:46:00.805 17:57:44.790 704 1.580 94.8 <10
5 19:13:00.281 19:16:01.671 181 6.149 368.94 30
10 18:00:53.815 18:03:09.023 124 8.976 538.56 60
对比之前单个应用5个线程的处理结果,开两个应用的处理能力与之相当。

原因主要取决于测试服务器的性能,单应用的处理能力是在生产服务器(备)上测试的,双核CPU,SSD磁盘阵列,对这种CPU密集型的操作性能较好。而双应用的处理能力是在云桌面服务器上测试的,单核CPU,普通磁盘。

[b]测试结论:[/b]

目前的测试结果,开启两个消费者应用的处理能力为[b]335.4[/b]个/分钟,可支持最高一天[b]482976[/b]批次视频的处理,按照近期生产能力最高纪录11月25日,日处理视频[b]21947[/b]个,峰值[b]68[/b]个/分钟的生产速度,能够满足当前处理能力。

生产数据来源详见Tower-每日生产数据追踪:

https://tower.im/s/45IZ3

新架构下支持水平扩展,可通过多台服务器部署消费应用App2来提高集群应用的并行处理能力。同时对于服务器性能好的机器可通过多开消费线程数来垂直扩展单个应用的并行处理能力。

单独对18生产服务器进行压测的报告
[b]测试目的:[/b]

测试单纯进行转码切图应用在多个线程并行执行的处理能力(吞吐率)

[b]测试条件:[/b]

61.132.51.18生产服务器(备)

CPUIntel 2.3GHz 2处理器 64bitOS

内存 16G

[b]测试过程:[/b]

将生产视频(1113个)一次写入队列,分别起1个线程,5个线程,10个线程执行转码切图操作,计算处理视频的平均吞吐率(每秒处理视频个数)。

[b]测试结果:[/b]

[b]线程数[/b] [b]开始时间[/b] [b]结束时间[/b] [b]处理时长(秒)[/b] [b]吞吐率(个/秒)[/b] [b]吞吐率(个/分钟)[/b] [b]CPU(%)[/b]
1 17:46:00.805 17:57:44.790 704 1.580 94.8 <10
5 19:13:00.281 19:16:01.671 181 6.149 368.94 30
[b]10[/b] 18:00:53.815 18:03:09.023 124 8.976 [b]538.56[/b] 60
[b]测试分析:[/b]

单个应用可通过调整消费线程数来提高应用的处理能力,但是垂直方向(单台机器)的提升能力有限,因此需要考虑应用的水平扩展能力,支持分布式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: