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

网站建设项目教程wordpress添加html网页

网站建设项目教程,wordpress添加html网页,佛山网站建设改版,wordpress广告点进去报错MQTT(Message Queuing Telemetry Transport)是一种轻量级、开放标准的消息传输协议,设计用于受限设备和低带宽、不稳定网络的通信。 MQTT的一些关键特点和概念: 发布/订阅模型: MQTT采用发布/订阅(Publ…

MQTT(Message Queuing Telemetry Transport)是一种轻量级、开放标准的消息传输协议,设计用于受限设备和低带宽、不稳定网络的通信。
在这里插入图片描述

MQTT的一些关键特点和概念:

发布/订阅模型:

MQTT采用发布/订阅(Publish/Subscribe)模型。发布者(Publisher)发布消息到特定的主题(Topic),而订阅者(Subscriber)则订阅感兴趣的主题。这种模型提供了一种松耦合的通信方式。MQTT支持基于TLS/SSL的加密通信,提供一定的安全性。

主题(Topic):

主题是消息的标签或类别。发布者将消息发布到特定的主题,而订阅者则通过订阅特定的主题来接收相关消息。

消息队列:

MQTT消息以队列的方式传输。当发布者发布消息时,消息被发送到相应主题的队列,订阅者可以从队列中接收消息。

QoS级别(Quality of Service):

MQTT支持不同的QoS级别,用于确保消息的可靠性和传递顺序。包括:
QoS 0:最多一次,消息发出后不进行确认。
QoS 1:至少一次,确保消息至少被传递一次。
QoS 2:只有一次,确保消息仅被传递一次。

保持连接:

MQTT客户端与服务器之间保持持久连接。这允许客户端随时接收实时消息,而不需要频繁地建立和断开连接。

清理会话(Clean Session):

客户端可以选择创建一个清理会话或一个持久会话。清理会话意味着服务器不会保留客户端的订阅信息,而持久会话则会保存订阅信息。

遗嘱消息(Will Message):

客户端可以指定遗嘱消息,以便在客户端异常断开连接时,服务器可以将遗嘱消息发布到预定的主题。

中继器(Broker):

MQTT系统通常包含一个中继器或代理,负责接收、路由和分发消息。这个中继器被称为MQTT Broker。

MQTT服务端

首先,安装MQTT库,例如 Eclipse Paho MQTT C库。

// mqtt_server.c#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <MQTTClient.h>#define SERVER_ADDRESS "tcp://localhost:1883"
#define CLIENT_ID "MQTT_Server"
#define TOPIC "test_topic"volatile MQTTClient_deliveryToken deliveredtoken;void messageArrived(void *context, char *topicName, int topicLen, MQTTClient_message *message) {printf("Received message on topic: %s\n", topicName);printf("Message: %.*s\n", message->payloadlen, (char *)message->payload);MQTTClient_freeMessage(&message);MQTTClient_free(topicName);
}int main() {MQTTClient client;MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer;int rc;// Create MQTT clientMQTTClient_create(&client, SERVER_ADDRESS, CLIENT_ID, MQTTCLIENT_PERSISTENCE_NONE, NULL);// Set callback for incoming messagesMQTTClient_setCallbacks(client, NULL, NULL, messageArrived, NULL);// Connect to the brokerconn_opts.keepAliveInterval = 20;conn_opts.cleansession = 1;if ((rc = MQTTClient_connect(client, &conn_opts)) != MQTTCLIENT_SUCCESS) {printf("Failed to connect to the broker, return code %d\n", rc);exit(EXIT_FAILURE);}// Subscribe to a topicif ((rc = MQTTClient_subscribe(client, TOPIC, 1)) != MQTTCLIENT_SUCCESS) {printf("Failed to subscribe to topic, return code %d\n", rc);exit(EXIT_FAILURE);}printf("MQTT server is running...\n");// Keep the program runningwhile (1) {sleep(1);}// Disconnect from the brokerMQTTClient_disconnect(client, 10000);MQTTClient_destroy(&client);return 0;
}

MQTT客户端

// mqtt_client.c#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <MQTTClient.h>#define SERVER_ADDRESS "tcp://localhost:1883"
#define CLIENT_ID "MQTT_Client"
#define TOPIC "test_topic"
#define QOS 1int main() {MQTTClient client;MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer;int rc;// Create MQTT clientMQTTClient_create(&client, SERVER_ADDRESS, CLIENT_ID, MQTTCLIENT_PERSISTENCE_NONE, NULL);// Connect to the brokerconn_opts.keepAliveInterval = 20;conn_opts.cleansession = 1;if ((rc = MQTTClient_connect(client, &conn_opts)) != MQTTCLIENT_SUCCESS) {printf("Failed to connect to the broker, return code %d\n", rc);exit(EXIT_FAILURE);}// Publish a messageconst char *message = "Hello, MQTT!";MQTTClient_message pubmsg = MQTTClient_message_initializer;pubmsg.payload = (void *)message;pubmsg.payloadlen = (int)strlen(message);pubmsg.qos = QOS;pubmsg.retained = 0;MQTTClient_deliveryToken token;if ((rc = MQTTClient_publishMessage(client, TOPIC, &pubmsg, &token)) != MQTTCLIENT_SUCCESS) {printf("Failed to publish message, return code %d\n", rc);exit(EXIT_FAILURE);}printf("Message published to topic: %s\n", TOPIC);// Disconnect from the brokerMQTTClient_disconnect(client, 10000);MQTTClient_destroy(&client);return 0;
}
http://www.yayakq.cn/news/8885/

相关文章:

  • 昌江县住房和城乡建设局网站wordpress首页显示链接
  • 产品设计排版网站干部网络培训平台
  • 杭州网站现场备案网站如何做才可以微信直接登录
  • 怎样提交网站百度收录旅游网站建设方案后台
  • wamp 做网站发布张家港网站seo
  • 搜索引擎大全网站中国企业信息网官网
  • 展示型网站自学软装设计该怎么入手
  • 公司注册郑州seo服务技术
  • 建设一个征婚网站的程序wordpress5.0样式
  • 同ip网站wordpress 上传apk
  • 企业网站开发公司大全手机购物网站 设计
  • 网站开发和软件开发含义php网站开发打不开
  • 南京模板网站建设网站cron
  • 黄酒的电商网页设计网站网站快速收录教程
  • ip地址信息备案管理系统seo服务是什么
  • 电力建设期刊网站经常维护吗网站建设手机登录密码是什么啊
  • 网站后台怎么兰州seo推广
  • 企业自助建站源码一级域名网站
  • 新泰网站建设成都网站制
  • 当今做网站的流行趋势网站移动排名
  • 做网站需要了解什么盗取dede系统做的网站模板
  • 励志做的很好的网站集团logo设计公司
  • 想做一个能上传视频的网站怎么做wordpress侧边栏关闭
  • 怎么做公司的中英文网站网站建设设计公司类网站织梦模板(带手机端)
  • 建筑模型网站有哪些换网站公司
  • 做动态的网站的参考资料有哪些网站广东省备案
  • 网站开发程序员自学网络营销课程
  • 网站导航二级菜单怎么做出来的学校做网站有些什么好处
  • react.js做的网站专业网站设计公司和普通设计公司的区别
  • 河南专业做网站线上网站开发相关书籍