emqtt-bench 开源项目安装与使用指南
目录结构及介绍
在克隆了 https://github.com/emqx/emqtt-bench.git
仓库之后,你会看到以下主要目录和文件:
- dockerignore: 配置Docker构建时要忽略的文件或目录。
- gitignore: 定义Git版本控制系统中应忽略的文件模式列表。
- tool-versions: 用于指定工具链版本的文件。
- CHANGELOG.md: 记录所有版本更新日志的Markdown文件。
- Dockerfile: Docker镜像的构建脚本。
- LICENSE: 软件许可协议文件,在此案例中是Apache-2.0许可证。
- Makefile: 编译和构建项目的自动化指令集。
- README.md: 包含项目概述、功能描述、安装方法等重要信息的Markdown格式文档。
- README_FOR_DOCKER.md: 特别提供关于如何使用Docker来运行项目的说明。
- rebar.config: 应用构建系统配置文件,主要用于Erlang/OTP项目。
src/ 是存放Erlang源代码的主要目录,包含所有编译单元。
scripts/ 目录下包含脚本文件,通常这些脚本用来辅助执行如编译、测试、打包等任务。
启动文件介绍
Makefile
Makefile
是emqtt-bench的核心构建文件。它包含了从源代码构建可执行程序的所有必要规则。当运行 make
命令时,默认目标通常是编译并可能还有其他预设动作,例如下载依赖库或者清理旧的构建产物。
当你需要编译整个项目,只需简单地在项目根目录下执行 make
即可。如果你想要跨平台兼容性(比如禁用QUIC支持),可以在编译命令前加入环境变量定义:BUILD_WITHOUT_QUIC=1 make
。
可执行文件
成功构建项目之后,生成的二进制可执行文件位于项目目录中,具体取决于你的操作系统路径约定。对于使用Makefile构建的情况,可执行文件通常会被放置在一个特定目录里,如 _build/default/bin
或者项目的根目录下,这取决于Makefile的配置设定。以emqtt_bench
命名的二进制文件是用来进行MQTT基准测试的主要工具。
配置文件介绍
emqtt-bench本身没有独立的配置文件,其所有的参数都是通过命令行界面传递给emqtt_bench
工具的。这意味着用户可以灵活地调整每次测试的参数而无需修改固定的配置文件。
例如,连接到MQTT服务器的选项可以通过以下命令指定:
$ ./emqtt_bench conn \
-h localhost \
-p 1883 \
-c 10000 \
-n 1
这里 -h
指定了MQTT主机地址,-p
表示端口号,-c
控制并发连接的数量,-n
设置起始编号。更多详细的选项可以通过命令 ./emqtt_bench conn --help
来查看。
虽然没有传统的配置文件,但这种设计确保了高度灵活性和即时的参数调优能力,特别适合于进行不同的负载和性能测试场景。