当前位置: 首页 > wzjs >正文

杭州文化传媒类高端网站建设公司全网优化推广

杭州文化传媒类高端网站建设公司,全网优化推广,日常生活用品设计,最便宜做公司网站几点说明 MQTT over TCP: 监听端口:1883 用于传统的 MQTT 客户端,通过 TCP 进行通信。 配置了基本的代理参数,如超时和缓冲区大小。MQTT over SSL/TLS: 监听端口:8883 用于需要加密通信的 MQTT 客户端。 配…

几点说明

MQTT over TCP:
监听端口:1883
用于传统的 MQTT 客户端,通过 TCP 进行通信。
配置了基本的代理参数,如超时和缓冲区大小。MQTT over SSL/TLS:
监听端口:8883
用于需要加密通信的 MQTT 客户端。
配置了 SSL 证书和私钥路径。MQTT over WebSocket:
监听端口:80
用于通过 WebSocket 进行通信的 MQTT 客户端,适用于需要穿越防火墙或在浏览器中使用的场景。
配置了 WebSocket 协议的升级头。MQTT over Secure WebSocket (WSS):
监听端口:443
用于通过加密的 WebSocket 进行通信的 MQTT 客户端。
配置了 SSL 证书和私钥路径,并启用了加密协议。

安装mosquitto

  • 结合nginx使用
version: '3'services:my-python-app:image: helloproj_my-python-appexpose:- "5000"  # 暴露给同一网络中的其他容器networks:- app-networknginx:image: nginx:latestvolumes:- ./nginx.conf:/etc/nginx/nginx.conf  # 挂载配置文件- ./key:/etc/nginx/ssl  # 挂载 SSL 证书ports:- "80:80"  # 将容器的80端口映射到主机的80端口- "443:443"  # HTTPS- "1883:1883"depends_on:- my-python-app  # 确保 Flask 容器启动后再启动 Nginx- mosquittonetworks:- app-networkmosquitto:image: eclipse-mosquitto:latestcontainer_name: mosquittoexpose:- "1883"volumes:- ./mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf- ./mosquitto/data:/mosquitto/data- ./mosquitto/log:/mosquitto/log    networks:- app-networknetworks:app-network:driver: bridge

配置nginx

stream {upstream mqtt_backend {server mosquitto:1883;}server {listen 1883;proxy_pass mqtt_backend;}
}

编写代码

  • 订阅
import paho.mqtt.client as mqtt# 收到消息时调用
def on_message(client, userdata, msg):print(f"Received message: {msg.payload.decode()} on topic: {msg.topic}")# 连接成功时调用
def on_connect(client, userdata, flags, rc, properties=None):print(f"Connected with result code {rc}")# 订阅特定主题client.subscribe("test/topic")# 创建 MQTT 客户端实例
client = mqtt.Client()# 设置回调函数
client.on_connect = on_connect
client.on_message = on_message# 连接到 MQTT Broker
client.connect("x.x.x.x", 1883, 60)# 开始网络循环
client.loop_forever()
  • 发布者
import paho.mqtt.client as mqtt# 连接成功时调用
def on_connect(client, userdata, flags, rc):print(f"Connected with result code {rc}")# 发布消息client.publish("test/topic", "Hello MQTT!")# 创建 MQTT 客户端实例
client = mqtt.Client()
client.on_connect = on_connect# 连接到 MQTT Broker
client.connect("x.x.x.x", 1883, 60)# 开始网络循环,处理所有网络流量
client.loop_start()# 发布频率(秒)
import time
time.sleep(1)# 停止网络循环
client.loop_stop()

增加权限控制

  • 修改mosquitto.conf
persistence true
persistence_location /mosquitto/data
log_dest file /mosquitto/log/mosquitto.log
# 增加以下两个文件
password_file /mosquitto/config/pwdfile
acl_file /mosquitto/config/aclfile# 修改这里
allow_anonymous false
listener 1883
  • 进到容器内部添加password_file和acl_file
docker exec -it mosquitto /bin/shtouch pwdfile
mosquitto_passwd -b pwdfile chenph 123456chmod 0700 pwdfile#### aclfile文件 ####
user chenph
topic read topic/#
topic write topic/#chmod 0700 aclfile# 重启一下
docker-compose restart mosquitto# docker-compose.yml 也调整一下,重构一下容器
volumes:- ./mosquitto/config:/mosquitto/config  # 改成这样- ./mosquitto/data:/mosquitto/data- ./mosquitto/log:/mosquitto/log
  • 代码调整
# 在连接之前,增加这个代码,成功的话会返回code 0,权限异常的话会返回5
client.username_pw_set("chenph", "123456")# 别忘了把主题名字改了,在acl中配置了只允许topic/#
client.publish("topic/test", "Hello MQTT!")

http://www.dtcms.com/wzjs/58398.html

相关文章:

  • 做seo网站优化哪家强怎么优化标题和关键词排名
  • 南通专业家纺网站建设店铺引流的30种方法
  • 在线做流程图的网站百度资源平台链接提交
  • 宾果 wordpress网站推广优化外包便宜
  • 网站开发打赏功能惠州网站营销推广
  • 基于java的小说网站开发企业网络营销策略
  • 广州中企动力网站制作站长工具四叶草
  • 推广网店的途径和方法网页seo
  • 网站弹窗设计最新旅游热点
  • mac os网站建设深圳专业建站公司
  • 北京的设计院排名邵阳seo排名
  • 龙华做网站天无涯网络湖南seo技术培训
  • 合肥微信网站建设网站排名查询alexa
  • 亚洲成成品网站源码项目平台
  • 嘉兴电子商务网站建设站长之家关键词挖掘工具
  • 苏州网站建设介绍今日十大头条新闻
  • 网站建设推广合同nba实力榜最新排名
  • 怎么自己做网站免费的游戏代理平台
  • 动态网站设计与制作网络策划营销
  • 网站换域名只做首页301站长之家音效素材
  • 泉州seo优化排名公司跨境电商seo什么意思
  • seo网站地图百度网站的网址
  • 做网站必须注册的商标汕头seo
  • 网站正在建设中模板免费下载app怎么推广
  • 网站建设电商代运营域名注册需要多少钱?
  • 电子商务网站建设是什么网站seo优化技能
  • 免费软件app大全百度seo排名如何提升
  • 临沂市住房和城乡建设委员会网站整站优化 mail
  • 怎么做展示型网站惠州seo怎么做
  • 北京顺义做网站湘潭网页设计