消息并发压力测试

测试目标

    1.
    本机测试,测试出非网络环境下cp7的消息并发数据
    2.
    内网测试,测试网络环境下cp7的消息并发数据
    3.
    制作两种测试数据汇总对比

环境准备

A服务器

    1.
    操作系统:Ubuntu 20.04.2 LTS
    2.
    网络::内网千兆网络(192.168.101.180
    3.
    CPU:Intel(R) Core(TM) i7-9700F CPU @ 3.00GHz
    4.
    内存:16G

B服务器

    1.
    操作系统:Ubuntu 20.04.2 LTS
    2.
    网络::内网千兆网络(192.168.101.232)
    3.
    CPU:Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz
    4.
    内存:8G

本机测试用例

准备工作:

    1.
    cp7服务启动准备
1
# 下载服务器端
2
wget https://github.com/Coolpy7/Coolpy7/raw/master/go_build_Coolpy7_go_linux.zip
3
# 解压文件
4
sudo unzip go_build_Coolpy7_go_linux.zip
5
# 提权
6
sudo chmod -R 777 go_build_Coolpy7_go_linux
7
# 启动Coolpy7 启动参数
8
# l 当前服务Host地址 (默认为:1883即本地1883端口,此参数一般默认即可,无需配置)
9
# a 连接接入调度器最大线程,此值可防止暴力连接攻击,对已连接客户端进行优先保护 (默认值128)
10
./go_build_Coolpy7_go_linux
11
12
# 启动成功后会打印如下信息,即说明服务端已正常启动,host于1883端口,请确保相关防火墙配置可用
13
2018/10/29 12:59:55 Coolpy7 tcp is listening on [::]:1883
Copied!
2. 下载并运行测试工具(测试工具默认情况以一个500byte为消息体进行测试)
1
# 下载测试项目
2
git clone https://github.com/Coolpy7/coolpy7_benchmark.git && cd coolpy7_benchmark
3
# 测试工具开源代码位于pubsub1max.go
4
cd bin
5
# 提权
6
sudo chmod -R 777 go_build_pubsub1max_go_linux_linux
7
# 启动并发测试代码 启动参数
8
# url cp7服务Host地址 (默认为127.0.0.1:1883即本地1883端口,由于cp7也在本机运行,无需配置)
9
# duration 测试持续时间/秒(默认值30)
10
sudo ./go_build_pubsub1max_go_linux_linux -duration=60 -url=tcp://localhost:1883
Copied!
测试结果为出现持久性不可预见的并发消息性能下降,所以本次测性时间周期为10,20,30分钟各种持续性测试,性能无异样。
CP7性能指标监控
测试工具指标监控

本机测试总结:

    1.
    消息并发性能平均在5.6万TPS左右。随着时间持续基本稳定在5.6万以上。
    2.
    cp7系统资料占用情况(CPU:大概20%左右,内存稳定在100到130M左右)。
    3.
    由于本轮测试为本机测试,所以此数据为cp7内存(排除网络影响)的真实性能。
一小时测试数据

内网测试用例

准备工作

网络架构
    1.
    cp7位于232服务器,通过180远端监控232的网络及系统资源情况。
    2.
    测试工具位于180
1
# 下载测试项目
2
git clone https://github.com/Coolpy7/coolpy7_benchmark.git && cd coolpy7_benchmark
3
# 测试工具开源代码位于pubsub1max.go
4
cd bin
5
# 提权
6
sudo chmod -R 777 go_build_pubsub1max_go_linux_linux
7
# 启动并发测试代码 启动参数
8
# url cp7服务Host地址 (默认为127.0.0.1:1883即本地1883端口,由于cp7也在本机运行,无需配置)
9
# duration 测试持续时间/秒(默认值30)
10
sudo./go_build_pubsub1max_go_linux_linux -duration=60 -url=tcp://192.168.101.232:1883
Copied!
测试结果为出现持久性不可预见的并发消息性能下降,所以本次测性时间周期为10,20,30分钟各种持续性测试,性能无异样。
cp7服务端系统资源及网络监控数据
CP7性能指标监控
CP7网络指标监控
测试工具指标监控
由于测试环境并非纯净网络,所以本次内网测试并发性只能看作单次测试结果,不具代表性。具体真实性能请参考上面的本机测试用例结果。

内网测试总结:

    1.
    消息并发性能平均在4.5万TPS左右。随着时间持续基本稳定在4.5万以上。
    2.
    cp7系统资料占用情况(CPU:大概30%左右,内存稳定在100到110M左右)。
    3.
    由于本轮测试为内网测试,所以此数据反应了瓶颈在内网网络中,千兆网络大概实为百兆真网速。
Last modified 2mo ago