Mosquitto安装和使用

Mosquitto是一个实现了MQTT3.1协议的代理服务器,由MQTT协议创始人之一的Andy Stanford-Clark开发,它为我们提供了非常棒的轻量级数据交换的解决方案。 下载地址是: http://mosquitto.org/download/

这里我们使用源码安装方式,下载版本是:mosquitto-1.3.5.tar.gz

安装脚本如下:

    yum -y install gcc-c++ cmake openssl-devel
     
    tar zxfv mosquitto-1.3.5.tar.gz
        
    cd mosquitto-1.3.5
     
    make WITH_SRV=no && make install prefix=/data/server/mqtt

接下来我们需要稍微配置一下。

第一步:添加启动用户

    groupadd mosquitto
     
    useradd -g mosquitto mosquitto -s /sbin/nologin

第二步:复制配置文件

    cd /etc/mosquitto
     
    cp mosquitto.conf.example mosquitto.conf

第三步: 启动代理服务

    cd /data/server/mqtt/sbin
     
    ./mosquitto -c /etc/mosquitto/mosquitto.conf -d -v

如果没有开启 1883 端口的话, 提前开启后在启动 mosquitto!

当然我们可以查看一下进程:ps -aux | grep mosquitto

接下来我们需要测试一下订阅/发布的功能,首先我们要做一个软连接解决一个库文件找不到的问题:

     
    ln -s /data/server/mqtt/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1
     
    ldconfig

然后,新开一个订阅者终端窗口:

    cd /data/server/mqtt/bin
     
    ./mosquitto_sub -v -t richie

-t 指定主题,此处为richie

然后,我们再新开一个发布者终端窗口:

    cd /data/server/mqtt/bin
     
    ./mosquitto_pub -t richie -m hello

    -t 指定主题, -m 指定消息内容

备注:三个终端窗口,一个用来开启服务,一个执行mosquitto_sub来订阅消息,与服务器保持长连接,随时接收来自服务器推送的消息,最后一个终端则用来发布消息。当发布者推送消息之后,订阅者获得以下内容richie hello

posted @ 2020-04-03 18:24  一只小羊  阅读(8010)  评论(0编辑  收藏  举报