安装

安装环境: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 共三个子命令:

  1. pub:用于创建大量客户端执行发布消息的操作。

  2. sub:用于创建大量客户端执行订阅主题,并接受消息的操作。

  3. 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 发行包下载

emqtt-bench 源码地址

emqtt-bench的更多相关文章

  1. CentOS erlang安装、emqtt

    安装erlang 如果未安装以后程序,请先安装依赖   $sudo yum install gcc gcc-c++ glibc-devel make ncurses-devel openssl-dev ...

  2. MySQL可视化软件Work Bench导出导入数据库

    首先打开你的work bench,输入你的密码进入主页面 A:导入数据库 在Schemas空白处右键选择Create~:建立一个数据库,然后就可以导入你的sql文件了 File-->Open S ...

  3. bench.sh 跑分测速

    #!/bin/bash #==============================================================# # Description: bench te ...

  4. Mysql bench执行sql语句批量操作数据所遇到的问题

    一.错误 rror Code: 1175. You are using safe update mode and you tried to update a table without a WHERE ...

  5. 使用Apache Bench进行压力测试

    Apache Bench是Apache中自带的压力测试工具 在linux中我们安装好apache后可以通过ab指令使用它 格式:ab [参数] [http://]ip地址/path/ 常用参数说明: ...

  6. 被忽视的eMMC——A1 SD Bench闪存测试

    一直以来,大家对手机的配置方面都比较关注CPU和GPU的架构.频率.核心数等,却经常忽略了手机闪存的速度.实际上手机的闪存素质对手机日常操作的响应.载入速度同样起到举足轻重的影响,今天给大家介绍的则是 ...

  7. Apache Bench安装与使用

    一.Apache Bench简介 ApacheBench 是 Apache 服务器自带的一个web压力测试工具,简称ab.ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并 ...

  8. emqtt 试用(八)ssl认证 - 代码验证

    参考链接:http://emqtt.com/clients#java http://docs.emqtt.cn/zh_CN/latest/config.html#mqtt-ssl-8883 一.单向认 ...

  9. emqtt 试用(四)emq 的主题访问控制 acl.conf

    访问控制(ACL) EMQ 消息服务器通过 ACL(Access Control List) 实现 MQTT 客户端访问控制. ACL 访问控制规则定义: 允许(Allow)|拒绝(Deny) 谁(W ...

  10. emqtt 试用(一)安装和测试

    一.安装 http://emqtt.io/docs/v2/getstarted.html http://emqtt.io/docs/v2/advanced.html http://emqtt.io/d ...

随机推荐

  1. 中国制霸生成器「GitHub 热点速览 v.22.42」

    火遍推特的中国制霸生成器本周一开源就占据了两天的 GitHub Trending 榜,不知道你的足迹遍布了多少个省份呢?同样记录痕迹的 kanal 用了内存读写方式解决了 Rust 的消息处理问题,P ...

  2. 【Java复健指南09】项目练习全解--房屋出租系统

    一个基于文本界面的综合练习,主要用于串联和回忆知识点,比较简单 各个界面的设计样式 主菜单 =============房屋出租系统菜单============ 1 新 增 房 源 2 查 找 房 屋 ...

  3. Vue3的新特性

    总概 1) 性能提升 打包大小减少 41% 初次渲染快 55%,更新渲染快 133% 内存减少 54% 使用 Proxy 代替 defineProperty 实现数据响应式 重写虚拟 DOM 的实现和 ...

  4. Codeforces Round #781(C. Tree Infection)

    Codeforces Round #781 C. Tree Infection time limit per test 1 second memory limit per test 256 megab ...

  5. Day09:switch——case结构的使用详解

    switch--case结构的使用详解 什么是switch--case结构 他也是一种多选择结构 switch--case结构是类于if--else的语法,通过比较而输出对应的内容: 通俗的讲,好比我 ...

  6. DevExpress窗体加载等待

    using DevExpress.XtraEditors; using DevExpress.XtraSplashScreen; using System; using System.Collecti ...

  7. 渗透技巧基于Swagger-UI的XSS

    目录 免责声明: 漏洞简述: 漏洞实现 POC 漏洞利用 如何大规模找到 Swagger UI Google FOFA XRAY 修复 免责声明:   本文章仅供学习和研究使用,严禁使用该文章内容对互 ...

  8. K8s如何启用cgroup2支持?

    什么是 cgroup ️Reference: control groups(控制组),通常被称为cgroup,是Linux内核的一项功能.它允许将进程组织成分层的组,然后限制和监控各种资源的使用. 内 ...

  9. 2022春每日一题:Day 30

    题目:[JSOI2009]电子字典 读完题后,暴力?确实,计算一下时间复杂度最坏情况下,20263*10000=1.5e8,卡一下常可以直接卡到7e7,最严格来说应该卡的过去,但是此题数据可以直接卡过 ...

  10. Go语言核心36讲07

    在前文中,我解释过代码块的含义.Go语言的代码块是一层套一层的,就像大圆套小圆. 一个代码块可以有若干个子代码块:但对于每个代码块,最多只会有一个直接包含它的代码块(后者可以简称为前者的外层代码块). ...