使用emqtt_bench压测报错

环境信息

  • EMQ X 版本:4.3.1 开源版
  • 操作系统及版本:CentOS 7
  • 其他

问题描述

安装emqtt_bench压测工具,执行 命令

./emqtt_bench conn -h 47.xxx.xxx.143 -p 1883 -c 50000 -u xxxx -P xxxxxx -i 10

出现以下问题

Error in process <0.7299.0> with exit value:
{function_clause,[{dtls_v1,corresponding_tls_version,
                           ['tlsv1.3'],
                           [{file,"dtls_v1.erl"},{line,55}]},
                  {dtls_v1,all_suites,1,[{file,"dtls_v1.erl"},{line,41}]},
                  {ssl,cipher_suites,2,[{file,"ssl.erl"},{line,478}]},
                  {emqtt_bench,'-all_ssl_ciphers/0-lc$^0/1-0-',1,
                               [{file,"/usr/local/src/emqtt/emqtt-bench-master/src/emqtt_bench.erl"},
                                {line,538}]},
                  {emqtt_bench,'-all_ssl_ciphers/0-lc$^0/1-0-',1,
                               [{file,"/usr/local/src/emqtt/emqtt-bench-master/src/emqtt_bench.erl"},
                                {line,538}]},
                  {emqtt_bench,all_ssl_ciphers,0,
                               [{file,"/usr/local/src/emqtt/emqtt-bench-master/src/emqtt_bench.erl"},
                                {line,538}]},
                  {emqtt_bench,ssl_opts,2,
                               [{file,"/usr/local/src/emqtt/emqtt-bench-master/src/emqtt_bench.erl"},
                                {line,528}]},
                  {emqtt_bench,connect,4,
                               [{file,"/usr/local/src/emqtt/emqtt-bench-master/src/emqtt_bench.erl"},
                                {line,376}]}]}

很抱歉我们没有及时更新文档,请使用 OTP 22 或者 OTP 23 编译。

好的,我更新版本再试试

执行此命令:

./emqtt_bench conn -h 47.xxx.xxx.143 -p 1883 -c 50000 -u xxxx -P xxxxxx -i 10

报错

connected: 28229 client(71769): connect error - eaddrinuse  

请问是什么问题呢


这个连接数怎么改变

eaddrinuse 表示端口被占用了。

这里的 Max 不是最大限制值的意思,而是历史最大值的意思。因为容易产生误解,我们正准备改进它。

明白了,我设置了系统的开放端口到 65000多,没有报错了。

./emqtt_bench conn -h xx.xxx.xxx.xx -p 1883 -c 50000 -u iotadmin -P 123456789 -i 10

但是执行以上连接命令,跑到 4万多连接数,就自动杀死进程了,这是为什么呢?

connected: 41567[1]+  Killed

麻烦解答一下,非常感谢

应该是被操作系统杀死的,看一下 /var/log/message 日志。

知道问题了,非常感谢!