码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 本地搭建MQTT服务器(windows和树莓派)


    目录

    Windows版本:

    安装

    启动mosquitto服务:

    订阅主题:

    发布主题:

    树莓派:

    安装

    启动

    发布

    订阅

    Address already in use 排雷

    局域网服务器的配置(单IP多IP):


    Windows版本:

    安装

    使用的是mosquitto,下载网址:

    Download | Eclipse Mosquitto

    无脑安装即可,可参考:

    Windows下搭建MQTT服务器_CodingPioneer的博客-CSDN博客_mqtt服务器

    但是使用这个方法

    mosquitto_passwd.exe -c pwfile.example admin

    创建用户不成功,总是提示:

    Password:Error:Empty password。

    百度了很多次,没有一个相关的博客,无奈,甚是无奈。

    翻看一下help手册吧,终于还是找到了解决方案:

    mosquitto_passwd -c -b pwfile.example admin 111111

    然后打开pwfile.example文件,发现已经替换过去了,Nice!

    然后就可以启动服务了,具体可参照上面的博客。

    启动mosquitto服务:

    在 计算机->管理->服务和应用程序->服务,英文状态下按下m,跳转到M开头的服务,然后选择 mosquitto broker,重启动即可。

    订阅主题:

    mosquitto_sub -h 127.0.0.1 -p 7788 -u admin -P 111111 -v -t localNet_test

    发布主题:

    mosquitto_pub -h 127.0.0.1 -p 7788 -u admin -P 111111 -t localNet_test -m "消息测试" 

    -m后的是消息内容,可以双引,也可以不引

    树莓派:

    安装

    参考下面的连接,安装是使用的编译源码的方法。

    树莓派+Ubuntu 20.04安装Mosquitto MQTT服务_晨之清风的博客-CSDN博客_树莓派mosquitto基本上没什么问题。

    启动

    启动服务和windows不同,使用命令行进行:

    在调试的时候使用下面的命令,-v 查看运行信息:

    mosquitto -c /etc/mosquitto/mosquitto.conf -v

    实际使用时命令多个 -d 在后台运行:

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

    发布

    mosquitto_pub -h 127.0.0.1 -p 7788 -u admin -P 111111 -t localNet_test  -m "Hello!"

    订阅

    mosquitto_sub -h 127.0.0.1 -p 7788  -u admin -P 111111 -t localNet_test

    Address already in use 排雷

    在启动服务的时候出问题,默认的1883端口占用,然后提示错误:

    Address already in use

    然后使用:

    ps -ef | grep mosquitto

    找到相关的进程号,然后杀掉:

     sudo kill xxxx

    这里注意,不要使用 kill -9 xxxx,不知道为什么使用 kill -9 杀不彻底。然后就正常启动了

    我配置在树莓派上的mosquitto的端口号是 7788, 账号密码是admin  111111。

    基本上都是启动了相关的服务没有关闭。查看下面的连接。

    mosquitto启动时Address already in use 和 一般的 Address already in use_林尧彬的博客-CSDN博客​

    局域网服务器的配置(单IP多IP):

    在Windows上安装好之后,mosquitto broker服务会开机自动启动,很方便,树莓派上基本都是订阅或者发布,无需启动broker即可直接使用。

    服务器配置在局域网中,只需要配置以下几条:

    listener 7788    // 监听的端口,此时必须只有一个IP,多个IP的话这样设置是无效的

    listener 7788 192.168.18.66         // 当网卡有多个IP时,必须指定其中一个IP,订阅或发布时也必须使用 -h 指定服务器的IP

    allow_anonymous false           // 不允许匿名访问,必须使用设置好的用户名和密码

    password_file   D:/mosquitto/pwfile.example        //设置好密码文件,也就是之前设置密码的文件 

    其他的根据需要自行设定,包括帧长度,默认是无限长;等

  • 相关阅读:
    .NetCore实现图片缩放与裁剪 - 基于ImageSharp
    Go 单元测试之mock接口测试
    5.springcloudalibaba nacos 2.2.3源码下载并且注册服务到nacos
    redis应用于微服务缓存的探讨
    蓝桥云课--1024 第 2 场算法双周赛
    react-router-dom
    windows系统kettle9.3一键安装启动
    【公司网站推广】公司如何做好网站推广?
    基于.Net Core实现的飞书所有文档一键导出服务(支持多系统)
    企业帮助中心如何在线搭建,还能多场景使用呢?
  • 原文地址:https://blog.csdn.net/maum61/article/details/126055395
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号