美文网首页
安装erlang及emqtt_bench

安装erlang及emqtt_bench

作者: 海的那一边 | 来源:发表于2019-07-18 17:26 被阅读0次

    由于想使用EMQ提供的测试工具emqtt_bench,所以要安装emqtt_bench,又因为emqtt_bench是用erlang语言写的,所以首先需要安装erlang。
    一,安装erlang
    在mac上安装erlang最简单的办法是使用brew命令安装:
    brew install erlang
    我当时用这个命令安装的erlang版本是21号版本,在后续编译 emqtt-bench的时候,提示需要22号以上的版本,但是执行brew search erlang命令后,发现brew上最新的就是21号版本,所以只能手动下载erlang安装了。
    1.下载
    erlang下载地址:http://erlang.org/download/
    我下载的是这个包:otp_src_22.0-rc1.tar.gz,总共两百多兆,用了大约10分钟的时间下载吧。
    2.解压
    在下载文件夹中双击otp_src_22.0-rc1.tar.gz进行解压
    3.在终端cd到解压后的文件夹otp_src_22.0
    4.执行命令./configure
    5.执行命令make
    6.执行命令sudo make install
    这样erlang就安装好了,在终端中输入erl可以看到erlang的版本,进入erlang的编辑环境

    Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe] [dtrace]
    
    Eshell V10.4.4  (abort with ^G)
    1> 
    
    

    其实后来因为解决别的问题升级了一下brew,再去执行brew search erlang的时候可以看到安装的22号版本,我猜升级brew之后有可能能用brew install erlang可以下载到22号版本。

    二,安装emqtt_bench
    emqtt_bench git地址:https://github.com/emqx/emqtt-bench
    1.在终端的某个创建好的文件夹下git clone一下emqtt_bench
    2.cd到emqtt_bench目录下
    3.执行命令make
    我再这步的时候报错:Package getopt-v1.0.1 not found,就是在编译的过程中要这个依赖包,但是rebar3又找不到这个包下载不到。后来升级了brew:brew update,结果提示rebar3 outdated,然后执行命令brew upgrade rebar3,升级完rebar3之后再次执行make,输出如下,编译成功了。

    ===> Verifying dependencies...
    
    ===> Fetching emqtt (from {git,"[https://github.com/emqx/emqtt.git",{branch,"master"}})](https://github.com/emqx/emqtt.git%22,%7Bbranch,%22master%22%7D%7D))
    
    ===> Fetching getopt v1.0.1
    
    ===> Downloaded package, caching at /Users/lihong/.cache/rebar3/hex/hexpm/packages/getopt-1.0.1.tar
    
    ===> Compiling getopt
    
    ===> Compiling emqtt
    
    ===> Compiling emqtt_bench
    
    ===> Building escript…
    
    

    然后就可以输入命令测试了:
    _build/default/bin/emqtt_bench sub -h 192.168.64.82 -p 1883 -u user@0 -t /message/medchart/default/0 -c 100

    具体的参数可以使用 _build/default/bin/emqtt_bench sub -help进行查询。

    由于项目中需要传入clintid,所以需要改动一下源码,加入clintid,重新编译一下就可以了。

    相关文章

      网友评论

          本文标题:安装erlang及emqtt_bench

          本文链接:https://www.haomeiwen.com/subject/svollctx.html