首页 > 其他分享 >mosquitto(MQTT)服务器搭建和基本使用

mosquitto(MQTT)服务器搭建和基本使用

时间:2023-10-25 19:11:39浏览次数:42  
标签:mqtt broker topic MQTT client mosquitto connect 服务器

一、安装

搭建一个mqtt服务器,这里我们采用mosquitto

1、 下载地址:https://mosquitto.org/download/

 

2、 选择windows:https://mosquitto.org/files/binary/win64/mosquitto-2.0.18-install-windows-x64.exe

 

3、 右键安装即可

默认的安装路径在这里:C:\Program Files\mosquitto

 

 

二、修改配置文件

1、 进入mosquitto的安装目录,找到配置文件

 C:\Program Files\mosquitto\ mosquitto.conf

 

2、 修改mosquitto指定的监听端口

 listener 8899

 

 

3、 关闭mosquitto的匿名登录功能

 

allow_anonymous false

 

 

 

4、 修改配置用户的配置文件路径(这里要用绝对路径)

 

password_file D:\other\mosquitto\pwd.emample

 

 

三、启动

1、 进入windows的service。启动mqtt broker服务

 

2、命令行启动:mosquitto.exe -c mosquitto.conf -v

 

四、使用

1、用python写一个订阅者的代码

import paho.mqtt.client as mqtt


broker = ‘127.0.0.1’
port = 7788
topic = “AIOT”

# 连接的回调函数
def on_connect(client, userdata, flags, rc):
    print(f”Connected with result code {rc}”)
    client.subscribe(topic)

# 收到消息的回调函数
def on_message(client, userdata, msg):
    print(msg.topic+” “+str(msg.payload))

client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.connect(broker, port, 60)
client.loop_forever()

  

我们当然也可以用命令行的方式启动订阅者,可以通过help来查询使用方法

 

mosquitto_sub.exe –help

 

2、发布者代码

import paho.mqtt.client as mqtt
import time

broker = '127.0.0.1'
port = 8899
topic = "AIOT"

def on_connect(client, userdata, flags, rc):
    print(f"Connected with result code {rc}")

client = mqtt.Client()
client.on_connect = on_connect
client.connect(broker, port, 60)
for i in range(60):
    client.publish(topic, payload=i, qos=0, retain=False)
    print(f"send {i} to a/b{topic}")
    time.sleep(1)

client.loop_forever()

  

当然我们可以使用命令行的方式启用生产者,可以通过help来查询使用方法

 

mosquitto_pub.exe –help

 

标签:mqtt,broker,topic,MQTT,client,mosquitto,connect,服务器
From: https://www.cnblogs.com/bainianminguo/p/17787925.html

相关文章

  • RTSP视频流媒体服务器LiteCVR v3.1更新:通道收藏优化
    在安防视频监控行业,监控摄像头也正从"看得见"到"看得清"开始转变,现在的网络智能摄像头,不仅可以拥有高清超高清的监控画质,还能对记录的视频中的人或物体进行识别。近期我们对LiteCVR增加了普通用户的收藏功能,今天来简单介绍一下。在LiteCVRv3.1版本之前,普通用户只能查看分配给自己......
  • 搭建内网yum服务器
    步骤一:安装yum工具首先,我们需要在内网服务器上安装yum工具,以便管理yum仓库。在终端中运行以下命令:sudoyuminstall-yyum-utilscreaterepo安装完成后,可以使用yum命令来安装和更新软件包。步骤二:设置yum仓库在内网yum服务器中创建yum仓库,需要先准备软件包。这里我们将使用C......
  • 多线程服务器
    目录单线程多线程在真实的服务器客户端模型中,服务器和客户端的关系应为1:n单线程//server.c#include<stdio.h>#include<stdlib.h>#include<unistd.h>#include<string.h>#include<arpa/inet.h>intmain(){//1.创建监听的套接字intlfd=socket(AF_IN......
  • 迅雷如何设置代理服务器
    在网络使用中,代理服务器作为一个中介站点,可以帮助我们解决许多网络问题,比如访问一些受限的网站,保护网络安全等。迅雷作为一款广受欢迎的下载软件,也提供了代理服务器的设置选项。下面就详细介绍如何在迅雷中设置代理服务器。首先,我们需要打开迅雷软件。在迅雷的主界面,右上角有一个“......
  • 如果 jumpserver 堡垒机中连不上之前保存能连接的服务器了怎么办
    如果这期间曾经修改过密码,请删除该服务器主机已关联的用户信息,重新添加用户,里面的用户凭据不会通过用户自动同步另外如果主机有其它安全服务保护,请注意是否因为堡垒机尝试错误次数过多导致ip被封,需要手动解封ip!参考:https://blog.csdn.net/weixin_42672685/article/details/11......
  • RTMP流媒体服务器LiteCVR支持在iOS播放WebRTC低延时视频流
    视频监控设备是安防行业的细分专业领域,近年来,视频监控业务正在向其他领域加速渗透。众所周知,iOS系统支持HLS流,但是HLS流延时高,无法满足实时流的要求;而WebRTC播放延时低,因此,很多用户希望能在iOS系统上播放Webrtc视频流。针对用户的这一需求,LiteCVR平台灵活的视频能力,可以完全满足。......
  • 将nginx的access.log访问日志发送到rsyslog服务器并写入数据库
    nginx.conf(将原日志路径改为rsyslog服务器地址)access_logsyslog:server=10.10.14.64:514,facility=local6main;如果需要入库需要安装相应数据库的依赖包;mysql依赖:yuminstall-y rsyslog-mysql   pgsql依赖:yuminstall-y rsyslog-pgsql  还有很多其他依赖可以用......
  • MQTT:掉线重连 (Reconnect)
    cleansession对重连的影响在使用MQTT同步:#include"MQTTClient.h"时,若client与broker断开了连接,重连逻辑如何实现呢?其中cleansession对重连逻辑实现有什么影响呢?分别对cleansession的两种情况进行测试和验证。......
  • 华为云耀云服务器L实例:初级篇-conda与python环境配置
     华为云耀云服务器L实例是一款可快速部署且易于运维的轻量级云服务器,专为中小企业和入门级开发者打造。它不仅拥有华为云擎天架构的强大性能,还具有多项用户体验优化方案,让用户轻松上手,享受简单上云的乐趣。本产品网址为:https://www.huaweicloud.com/product/hecs-light.html......
  • 【记录10】华为云耀云服务器L实例-使用Docker拉取nginx镜像的部署示例
     Docker 是一个开源平台,用于开发、运输和运行应用程序。它使用容器化技术来包装应用程序及其依赖项,以便在任何环境中都能一致地运行。简单来说,Docker 可以将应用程序及其所有依赖项打包成一个容器,这样就可以确保它无论在哪里运行都表现一致。 ### Docker 的主要组件:1.......