Mosquitto安装及使用简介

article/2025/10/23 0:16:48

 

1、源码下载:

(1)官方源码下载:http://mosquitto.org/files/source/

(2)性能优化版源码下载:https://github.com/houjixin/mosquitto-1.4.11-opt

(3)性能优化版优化方案:https://blog.csdn.net/hjx_1000/column/info/mqtt

2、编译

解压下载的压缩包后会生产一个mosquitto-XX.XX.XX为目录的源码文件夹,如下图所示:

如果需要开启websocket、tls、系统topic等功能,则需要修改该目录下的编译配置文件:config.mk。

在解压的当前目录下(例如:上面截图的mosquitto-1.4.15)依次执行如下命令:

make

如果需要安装则还需要执行命令:

make install

在生产环境中也可以不安装,只需要将编译产生的可执行文件:mosquitto,配置文件mosquitto.conf拷贝到生产环境上即可,采用这种方式而不是使用makeinstall的最大好处是便于统一运维部署。

编译之后的可执行文件在src目录下,名字为:mosquitto,如下图所示:


编译时同时也编译了两个mosquito自带的测试程序:mosquitto_pub和mosquitto_sub,这是两个常用的问题分析工具。

在编译中可能出现各种问题,下文列出了常见问题及使用方法:

https://blog.csdn.net/houjixin/article/details/46711547

 

3、启动mosquitto

(1)启动命令

可在其程序目录下输入命令:

mosquitto -c /etc/mosquitto/mosquitto.conf -d

或者:

mosquitto -c /etc/mosquitto/mosquitto.conf &

其中:

-c表示后配置文件的全名,源码中的配置文件在Mosquitto目录下,配置文件的名字为:mosquitto.conf;如果不指定配置文件,则表示使用默认配置(例如,默认的监听端口号是1883)。
-d表示服务在后台启动。

启动日志如下图所示:

(2)注意

第一次启动时,可以先在前台启动(命令的最后不加-d或者&),观察启动打印是否报错,没问题,再在后台启动。

(3)生产环境启动方式

在生产环境中,可采用如下统一规范化的运行方式,将上述命令放在run.sh脚本中,然后使用如下命令统一执行所有的程序:

nohup ./run.sh > /dev/null 2>&1 &

(4)生产环境中的日志配置

生产环境中,日志配置可参考下文:

https://blog.csdn.net/houjixin/article/details/72654693

4、查看启动情况

(1)通过端口查看程序是否正常启动:

执行命令(假如:查看mosquitto是否在1883端口启动成功):ss -anp | grep 1883

如下图所示:

(2)通过ps查看启动情况

执行命令:ps -ef | grep mosquitto

5、自带测试工具应用

使用mosquitto自带测试工具mosquitto_pub和mosquitto_sub测试数据收发,这两个测试工具在client目录下(与src目录平级):

(1)启动订阅客户端mosquitto_sub

启动订阅客户端mosquitto_sub并且订阅topic“test-topic”:

./mosquitto_sub -h 127.0.0.1 -p 1883 -t "test-topic"

该客户端启动后将默默的等待有数据的到来,如下图所示:

(2)启动发布客户端mosquitto_pub

启动发布客户端mosquitto_pub,并且向topic“test-topic”发送一条消息:hello jason

./mosquitto_pub -h 127.0.0.1 -p 1883 -t "test-topic" -m "hello jason"

注意:mosquitto_pub客户端发送一条数据之后就停止运行了,如下图所示:

(3)检测客户端是否收到数据

此时启动的订阅客户端mosquitto_sub将会收到一条数据:

 


http://chatgpt.dhexx.cn/article/bWw23mpn.shtml

相关文章

SQL--数据查询

特别提示:图片有水印,请不要直接使用 pcshop——Oracle版本 CREATE TABLE customers ( customer_id varchar2(10) NOT NULL, firstname varchar2(32) default NULL, lastname varchar2(32) default NULL, city varchar2(32) default NULL, address var…

SQL查询优化

SQL查询优化 一、获取有性能问题SQL的三种方法 通过用户反馈获取存在性能问题的SQL 通过慢查询日志获取存在性能问题的SQL 实时获取存在性能问题的SQL 二、慢查询日志介绍 1、使用慢查询日志获取有性能问题的SQL (1) 参数配置 slow_query_log 启动停止记录慢查询日志 .…

sql查询排序

查询排序 如果需要针对查询后的结果,按照指定的数据列进行排序操作,就必须使用ORDER BY 默认排序:按照数据的插入顺序。 select * from emp;观察 语法格式 【3控制要显示的数据列】SELECT[DISTINCT]*|列名称[别名],列名称[别名…

SQL 查询数据

数据库表是存储数据库中所有数据的对象。 在表中,数据按行和列格式逻辑组织,类似于电子表格 (Excel) 在表中,每行代表一个唯一记录,每列代表记录中的一个字段。 例如, SC表包含学生成绩数据,如学生标识号&a…

SQL之查询

因为同一SQL语句,不同厂商有不同的实现方式,因此同一SQL语句不一定在所有的数据库编辑器上能够正确运行,这里采用的是华为的openGauss。 基本格式为: SELECT desired attributes FROM one or more tables WHERE condition about…

SQL查询与操作

1.单表查询 SQL 数据查询主要由 SELECT 语句完成,SELECT 语句是SQL 的核心。单表查询就是利用 SELECT语句仅从一个表/视图中查询数据。其语法如下: SELECT [DISTINCT]*{ 字段名 1,字段名 2, 字段名 3,… FROM 表名 [WHERE 条件表达式 1] [GR…

sql的查询

sql的查询 (1)什么是排序 order by(2)如何排序 》》数据库的查询(排序:order by) SELECT * FROM 表名 ORDER BY 排序字段 ASC(升序)|DESC(降序);(3)特点 指定列 指定升序或者降序 order by 排序只对数字和…

SQL 数据查询

前言,数据库中有5个表,student,sc,course,tc,teacher;(sql server里面不区分大小写) student sc tc course teacher 1. 查询软件工程学院(SE)学生的学…

SQL数据查询

目录 1、求各系学生的平均成绩,并把结果存入新建的数据库表中(请自己创建一个表存放结果) 2、统计每门课程的选修学生人数及各门课程的平均成绩 3、找出各系年龄最大的学生,显示其学号、姓名;(利用相关子…

数据库:SQL数据查询(详细、全面)

以下题目中加粗字体为重点哦~ 一、查询指定列、全部列 1.查询全体学生的学号和姓名 SELECT SNO, SN FROM S 2.查询全部列 SELECT * FROM S 二、查询经过计算的值 3. 查询全体学生的姓名、出生年份 SELECT SN, 2020-AGE FROM S 4. 查村全体学生的姓名、出生年份和系名&#xff…

2022留学生落户上海成本大概是怎样的?

现在留学生落户上海整体来说除了对于社保没有要求的落户方式,那么对于普通的留学生落户来说,就得有社保和个税的要求了,那么这里面的成本是有多少呢,下面来看看这里面的情况: 留学生落户上海根据判断自己的社保基数及累…

非上海户籍人员在上海买房需要啥条件?

和你一起终身学习,这里是程序员Android 非沪籍想在上海买房说实话有点难,毕竟每平米大几万的房价不是盖的,既然您点进来看了,说明你有这个想法,有想法就行,虽然我们不一定能买得起,但不能阻挡我…

上海落户计算机水平毕业研究生,2021上海积分落户应届毕业生直接落户上海

原标题:2021上海积分落户应届毕业生直接落户上海 ——上海落户积分120分,不是研究生毕业就有100分吗?研究生毕业就有100分,正常读书年龄肯定很小就有30分了啊,不是直接就可以落户了吗?为什么大家都在说很难…

上海居住证转户口证攻略

2019独角兽企业重金招聘Python工程师标准>>> 一、居转户条件: 1.居住证满7年,社保满7年,税单满7年 2.最近3年连续社保是上海平均值2倍以上(或者具备中级以上职称) 3.自有产权房 二、居转户材料&#x…

2019非上海生源高校应届生落户指南

流程 一、计算积分基本要素导向要素用人单位要素 二、准备申请材料三、审核--证明信四、证明信-个人户口本落户社区公共户落户家庭户或者单位集体户口落户家庭户落户单位集体户口 博主从五月份准备落户申请材料,到十月中旬拿到上海个人户口本,历时五个月…

上海程序员落户攻略

上海居住证落户简称 “居转户” , 本文主要写给在上海打拼的程序员们,告诉大家比写代码更重要的一件事情是落户。讲述一些关于上海居住证落户的一些政策和一些建议。 很多人以为居转户,只要上海居住证满7年就可以转了,殊不知&…

上海落户计算机水平毕业研究生,2020年上海落户有哪些新规定?附研究生落户分值表!...

相信对于不少的年轻人来说,上海都是他们向往的城市,很多毕业生都在毕业后都希望可以留在上海,如果能够落户就再好不过了。下面小编就给大家说说2020年上海落户有哪些新规定,研究生如何落户,想了解的快来看看吧。 一、2…

2017年上海最新落户政策重磅出炉!你达标了吗?(明年就毕业了希望一切顺利)

2017年最新非上海户籍的应届毕业生落户标准公布, 应届毕业生落户标准分为72分! 具体申请可根据2017《上海市居住证》和 居住证积分指南、申请本市户籍办法。 想想当初选择来魔都读书生活, 每天起早贪黑究竟为了什么? 很多人的“小…

【个人亲历】上海市人才引进落户最详细的流程记录说明

目录 一、材料准备 二、网上审核 2.1、预审上报 2.2、线下提供证明材料 2.3、初审、审核 2.4、公示 三、落户证明领取和准迁证查询 3.1、线下领取落户证明 3.2、准迁证查询 附:应用汇总: 从2022年6月领导通知我够资格人才引进落户以及2022…

2022留学生落户上海怎么办理社区公共户?

很多留学生会担心的一个问题是个人和直系亲属在沪无房产,且单位也无集体户怎么办呢? 其实无须担心,这种情况下可以按公安机关规定申请挂靠 社区公共户!简单而言 ,就是租房在哪,就落户在相应的派出所。 落户通过后,留…