分类 默认 下的文章

本人实例:mosquito的安装目录位于centos的 /etc/mosquitto 目录中。mosquitto.conf为配置文件。

摘自CNBLOGS《mosquitto 常用命令》

1.启动服务

mosquitto -c /etc/mosquitto/mosquitto.conf -d #后台启动服务

2.停止服务

A、查询当前mosquito进程

ps -aux | grep mosquitto

B、杀死进程

kill -9  18248 (该进程ID根据A查询所得 别生搬硬套)

C、重启服务

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

mosquito启动命令详解

mosquitto [-c config file] [ -d | --daemon ] [-p port number] [-v]

-c 后面跟的是启动mosquitto可以调整的参数,比如是否开启基本认证,端口是什么,SSL单向和双向的认证配置等等。
-d 表示MQTT mosquitto将在后台运行。
-p 代表当前的mosquitto服务实例启动以后,其监听端口号,这个配置的覆盖[-c config file] 指定的配置文件中的端口
-v 代码调试模式(verbose)可以输出更多的信息

mosquitto_pub 命令参数说明

-d 打印debug信息
-f 将指定文件的内容作为发送消息的内容
-h 指定要连接的域名 默认为localhost
-i 指定要给哪个clientId的用户发送消息
-I 指定给哪个clientId前缀的用户发送消息
-m 消息内容
-n 发送一个空(null)消息
-p 连接端口号
-q 指定QoS的值(0,1,2)
-t 指定topic
-u 指定broker访问用户
-P 指定broker访问密码
-V 指定MQTT协议版本
--will-payload 指定一个消息,该消息当客户端与broker意外断开连接时发出。该参数需要与--will-topic一起使用
--will-qos Will的QoS值。该参数需要与--will-topic一起使用
--will-retain 指定Will消息被当做一个retain消息(即消息被广播后,该消息被保留起来)。该参数需要与--will-topic一起使用
--will-topic 用户发送Will消息的topic

mosquitto_sub 命令参数说明

-c 设定‘clean session’为无效状态,这样一直保持订阅状态,即便是已经失去连接,如果再次连接仍旧能够接收的断开期间发送的消息。
-d 打印debug信息
-h 指定要连接的域名 默认为localhost
-i 指定clientId
-I 指定clientId前缀
-k keepalive 每隔一段时间,发PING消息通知broker,仍处于连接状态。 默认为60秒。
-q 指定希望接收到QoS为什么的消息 默认QoS为0
-R 不显示陈旧的消息
-t 订阅topic
-v 打印消息
--will-payload 指定一个消息,该消息当客户端与broker意外断开连接时发出。该参数需要与--will-topic一起使用
--will-qos Will的QoS值。该参数需要与--will-topic一起使用
--will-retain 指定Will消息被当做一个retain消息(即消息被广播后,该消息被保留起来)。该参数需要与--will-topic一起使用
--will-topic 用户发送Will消息的topic

上节咱们讲到《centos 7.5安装部署mosquitto》。那么怎么实现topic主题订阅和消息message发布呢。

使用MQTT.fx工具链接实现主题订阅和消息推送

移步官网mqtt.fx下载http://mqttfx.jensd.de/index.php/download

A、打开配置界面 配置连接信息

mqtt连接.png

B、新增连接信息实例

mqtt.fx连接实例.png

C、apply 确认后返回A的主界面进行连接。如果连接错误,则返回B重新配置信息

mqtt.fx连接成功.png

D、使用mqtt.fx进行主题订阅topic
mqtt订阅主题.png

E、使用mqtt.fx对应主题topic发送消息
mqtt.fx推送消息.png

最终通过putty登陆服务端会话 mosquitto_sub -t test1 查看当前订阅来访信息

346.png

1.yum install epel-release
001.png
2.yum search mosquitto

002.png

3.yum install mosquitto mosquitto-devel

按【Y】
003.png
4.service mosquitto start 启动mosquitto服务 报错

Redirecting to /bin/systemctl start mosquitto.service

  1. /bin/systemctl start mosquitto.service 这么启动

6.mosquitto_sub -t test1 创建一个主题

7.另外独立开启会话 mosquitto_pub -t test1 -m joyokim

8.最终效果出来了

005.png

报错此信息 实则为缺少ca证书

1.打开链接 https://curl.se/docs/caextract.html
27.png

或者直接下载https://curl.haxx.se/ca/cacert.pem

将文件放在php相应的目录下
21.png

2.配置php.ini

curl.cainfo =E:phpstudy_proExtensionscacert.pem

openssl.cafile= E:phpstudy_proExtensionscacert.pem

openssl.capath=E:phpstudy_proExtensionscacert.pem

3.重启Apache服务

线上篇 linux centos


一、建立基本的备份脚本

A、将程序应用目录如home/wwwroot 以日期形式压缩保存在/data/bakcup

bk_wwwroot.sh

脚本命令:

#! /bin/bash
# 压缩文件 日期格式
t=$(date +%Y%m%d%H%M%S)
cd /data/backup/code
tar -zcvf /data/backup/code/code-$t.tar.gz /home/wwwroot

脚本存储位置在:/data/backup/bk_wwwroot.sh

B、为避免数据过大占用存储资源 删除旧数据保留最近3个文件

#! /bin/bash
#保留3份指定目录下文件名包含tar.gz的文件
ls -t /data/backup/code | awk '$0~/tar.gz/' | awk 'NR>3' | xargs rm -rf

脚本存储位置在:/data/backup/del_old.sh

三、设定定时任务

打开/etc/crontab

insert 编辑添加

0 1 * * * root /data/backup/bk_wwwroot.sh #每天凌晨1点执行bk_wwwroot.sh进行备份
0 2 * * * root /data/backup/del_old.sh #每天凌晨2点执行del_old.sh删除多余备份

ESC 退出编辑模式

:wq

保存退出

四、建立FTP账号

linux 安装了lnmp ftp 所以这里用该工具创建

A、创建FTP站点

lnmp ftp add

ftp_user:middleback

ftp_password:

B、更改FTP站点权限

chmod 777 -R /data/backup/code


特别注意

window环境下用编辑doc下的脚本是没用的 需要进行转换!

在服务器上进行unix转换

vi bk_wwwroot.sh

:set ff #回车显示fileformat=dos

:set ff=unix

:wq #保存退出

另外的脚本文件也要转换

命令如下

保留3份指定目录下文件名包含tar.gz的文件

ls -t /data/backup | awk '$0~/tar.gz/' | awk 'NR>3' | xargs rm -rf

脚本如下:

#! /bin/bash
#保留3份指定目录下文件名包含tar.gz的文件
ls -t /data/backup | awk '$0~/tar.gz/' | awk 'NR>3' | xargs rm -rf