eMQTT-Bench 是一款开源的 MQTT Benchmark性能测试工具,云原生消息引擎 MQTT 版可以兼容 eMQTT-Bench 工具。借助本文,可以实现通过 eMQTT-Bench 工具完成对 云原生消息引擎 MQTT 版的性能压测。
sysctl -w net.ipv4.ip_local_port_range="500 65535" echo 1000000 > /proc/sys/fs/nr_open ulimit -n 100000
wget http://mirrors.ivolces.com/extra-tools/centos/7/rpms/multi-nic-hotlog-for-centos7-v1.0.1-1.ve1.x86_64.rpm yum install ./multi-nic-hotlog-for-centos7-v1.0.1-1.ve1.x86_64.rpm
# 新建 eMQTT-Bench 目录 mkdir emqtt-bench && cd emqtt-bench # 从 github 下载 eMQTT-Bench,必须选择 el7-amd64 版本 wget https://github.com/emqx/emqtt-bench/releases/download/0.4.34/emqtt-bench-0.4.34-el7-amd64.tar.gz # 解压 tar zxf emqtt-bench-0.4.34-el7-amd64.tar.gz # 切换到 ./bin 目录 cd bin # 运行10个连接数测试命令 ./emqtt_bench conn -h ${mqtt-xxxxxxxxxxxx.mqtt.ivolces.com} -p 1883 --username user --password 123456 -c 10 -i 10
# 指定通过主网卡发送流量 ./emqtt_bench conn -h ${mqtt-xxxxxxxxxxxx.mqtt.ivolces.com} -p 1883 -c 50000 -i 1 --username user --password 123456 --ifaddr 192.168.2.1 # 从第一张辅助网卡发送流量,下同(如果失败,则未配置辅助网卡路由) ./emqtt_bench conn -h ${mqtt-xxxxxxxxxxxx.mqtt.ivolces.com} -p 1883 -c 50000 -i 1 --username user --password 123456 --ifaddr 192.168.2.11 ./emqtt_bench conn -h ${mqtt-xxxxxxxxxxxx.mqtt.ivolces.com} -p 1883 -c 50000 -i 1 --username user --password 123456 --ifaddr 192.168.2.12 ./emqtt_bench conn -h ${mqtt-xxxxxxxxxxxx.mqtt.ivolces.com} -p 1883 -c 50000 -i 1 --username user --password 123456 --ifaddr 192.168.2.13