emqtt-bench
安装
安装环境:Centos7
安装包:emqtt-bench-0.4.6-alpha.2-centos7-amd64.tar.gz
建议使用已编译好的发行包进行安装,源码编译已踩坑。
# 创建存放目录并解压
[root@testHost]# mkdir /usr/local/emqtt-bench/
[root@testHost]# tar -zxvf emqtt-bench-0.4.6-alpha.2-centos7-amd64.tar.gz \
-C /usr/local/emqtt-bench/
# 添加环境变量
[root@testHost]# echo 'export PATH=$PATH:/usr/local/emqtt-bench/bin' >> /etc/profile
[root@testHost]# source /etc/profile
使用
emqtt_bench 共三个子命令:
pub:用于创建大量客户端执行发布消息的操作。sub:用于创建大量客户端执行订阅主题,并接受消息的操作。conn:用于创建大量的连接。
执行 emqtt_bench pub --help 会得到可用的参数输出
| 参数 | 简写 | 可选值 | 默认值 | 说明 |
|---|---|---|---|---|
| --host | -h | - | localhost | 要连接的 MQTT 服务器地址 |
| --port | -p | - | 1883 | MQTT 服务端口 |
| --version | -V | 3 4 5 | 5 | 使用的 MQTT 协议版本 |
| --count | -c | - | 200 | 客户端总数 |
| --startnumber | -n | - | 0 | 客户端数量起始值 |
| --interval | -i | - | 10 | 每间隔多少时间创建一个客户端;单位:毫秒 |
| --interval_of_msg | -I | - | 1000 | 每间隔多少时间发送一个消息 |
| --username | -u | - | 无;非必选 | 客户端用户名 |
| --password | -P | - | 无;非必选 | 客户端密码 |
| --topic | -t | - | 无;必选 | 发布的主题;支持站位符: %c:表示 ClientId %u:表示 Username %i:表示客户端的序列数 |
| --szie | -s | - | 256 | 消息 Payload 的大小;单位:字节 |
| --qos | -q | - | 0 | Qos 等级 |
| --retain | -r | true false | false | 消息是否设置 Retain 标志 |
| --keepalive | -k | - | 300 | 客户端心跳时间 |
| --clean | -C | true false | true | 是否以清除会话的方式建立连接 |
| --ssl | -S | true false | false | 是否启用 SSL |
| --certfile | - | - | 无 | 客户端 SSL 证书 |
| --keyfile | - | - | 无 | 客户端 SSL 秘钥文件 |
| --ws | - | true false | false | 是否以 Websocket 的方式建立连接 |
| --ifaddr | - | - | 无 | 指定客户端连接使用的本地网卡 |
例如,启动 10 个连接,分别每秒向主题 t 发送 100 条 Qos0 消息,其中每个消息体的大小为 16 字节大小:
emqtt_bench pub -t t -h 192.168.0.1 -p 1883 -s 16 -q 0 -c 10 -I 10 \
--username admin --password 123
使用方法参考emqx官方文档:https://docs.emqx.com/zh/enterprise/v4.4/tutorial/benchmark.html
emqtt-bench的更多相关文章
- CentOS erlang安装、emqtt
安装erlang 如果未安装以后程序,请先安装依赖 $sudo yum install gcc gcc-c++ glibc-devel make ncurses-devel openssl-dev ...
- MySQL可视化软件Work Bench导出导入数据库
首先打开你的work bench,输入你的密码进入主页面 A:导入数据库 在Schemas空白处右键选择Create~:建立一个数据库,然后就可以导入你的sql文件了 File-->Open S ...
- bench.sh 跑分测速
#!/bin/bash #==============================================================# # Description: bench te ...
- Mysql bench执行sql语句批量操作数据所遇到的问题
一.错误 rror Code: 1175. You are using safe update mode and you tried to update a table without a WHERE ...
- 使用Apache Bench进行压力测试
Apache Bench是Apache中自带的压力测试工具 在linux中我们安装好apache后可以通过ab指令使用它 格式:ab [参数] [http://]ip地址/path/ 常用参数说明: ...
- 被忽视的eMMC——A1 SD Bench闪存测试
一直以来,大家对手机的配置方面都比较关注CPU和GPU的架构.频率.核心数等,却经常忽略了手机闪存的速度.实际上手机的闪存素质对手机日常操作的响应.载入速度同样起到举足轻重的影响,今天给大家介绍的则是 ...
- Apache Bench安装与使用
一.Apache Bench简介 ApacheBench 是 Apache 服务器自带的一个web压力测试工具,简称ab.ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并 ...
- emqtt 试用(八)ssl认证 - 代码验证
参考链接:http://emqtt.com/clients#java http://docs.emqtt.cn/zh_CN/latest/config.html#mqtt-ssl-8883 一.单向认 ...
- emqtt 试用(四)emq 的主题访问控制 acl.conf
访问控制(ACL) EMQ 消息服务器通过 ACL(Access Control List) 实现 MQTT 客户端访问控制. ACL 访问控制规则定义: 允许(Allow)|拒绝(Deny) 谁(W ...
- emqtt 试用(一)安装和测试
一.安装 http://emqtt.io/docs/v2/getstarted.html http://emqtt.io/docs/v2/advanced.html http://emqtt.io/d ...
随机推荐
- cudaMemcpy cudaMalloc
cudaMemcpy有四种类型:HostToHost, DeviceToHost, HostToDevice, DeviceToDevices 现在我有两个指针:h_ptr, d_ptr,分别指向ho ...
- MassTransit | .NET 分布式应用框架
引言 A free, open-source distributed application framework for .NET. 一个免费.开源的.NET 分布式应用框架. -- MassTran ...
- 教你如何解决T+0的问题
摘要:T+0查询是指实时数据查询,数据查询统计时将涉及到最新产生的数据. 本文分享自华为云社区<大数据解决方案:解决T+0问题>,作者: 小虚竹 . T+0问题 T+0查询是指实时数据查询 ...
- Windows骚操作
电脑常用的快捷键 键盘功能健:Tab.Shift.Ctrl.Alt.Windows.Enter.空格.上下左右健.CapsLock(大小写转换).NumLock(对小键盘控制开/关) 键盘快捷键:全选 ...
- Go语言书籍推荐
附录: 其他书籍的介绍:https://github.com/golang/go/wiki/Books Go程序设计语言 (圣经) 作者 艾伦 A.A.多诺万 Kernighan 下载地址 中文版PD ...
- 已经有 MESI 协议,为什么还需要 volatile 关键字?
本文已收录到 GitHub · AndroidFamily,有 Android 进阶知识体系,欢迎 Star.技术和职场问题,请关注公众号 [彭旭锐] 进 Android 面试交流群. 前言 大家好 ...
- 基于python的数学建模---轮廓系数的确定
直接上代码 from sklearn import metrics import matplotlib.pyplot as plt from sklearn.cluster import KMeans ...
- PEP8语法规范解释说明
PEP8规范解析 内容概要: 1.PEP8规范是什么? 2.PEP8相关内容 1.PEP8规范是什么 PEP是Python Enhancement Proposal的缩写,翻译为:"Pyth ...
- Zabbix技术分享——docker组件编译使用教程
docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源,它可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的Linux机器上,还可以实现 ...
- 关于Qt的QPixmap中不支持jpg文件格式的问题
问题 Qt部分版本存在不支持jpg,JPEG等图像格式的问题 qDebug()<<QImageWriter::supportedImageFormats(); 这行代码可以查看所支持的图像 ...