- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
MQTTCClient实现消息推送〔入门指南〕
MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输〕是IBM开发的一个即时通讯协议,通过MQTT
协议,目前已经扩展出了数十个MQTT效劳器端程序,可以通过PHP,
JAVA,Python,C,C#等系统语言来向MQTT发
送相关消息。随着移动互联网的进展,MQTT由于开放源代码,耗电量小等特点,将会在移动消息推送领域会有更多的奉献,在物联网领域,传感器与效劳器的通信,信息的收集,
MQTT都可以作为考虑的方案之一。在将来MQTT会进入到我们生活的各各方面。ThePahoMQTTCClientisafullyfledgedMQTTclientwritteninANSIstandardC.ItavoidsC++inordertobeasportableaspossible.AC++layeroverthislibraryisalsoavailableinPaho.
名目:
何为MQTT
生成dll库混合编程
MQTTCClient实战
SynchronouspublicationexampleAsynchronouspublicationexample
Asynchronoussubscriptionexample何为MQTT?
MQTT主要用于效劳端对客户端进展消息推送,依据这个具体要求,
很简洁知道它包括两个局部:客户端、效劳端。
MQTT消息推送是基于主题topic模式的,可以分开来说:客户端公布一条消息时,必需指定消息主题。〔如,topic=”
天气”,payload=”北京今日雾霾好大啊~~呜呜”〕,其中topic
就是主题,payload是发送的具体内容。
效劳端推送消息,也是基于主题的。当效劳器觉察有主题
如,topic=“天气”〕时,就会给全部订阅该主题的客户端推送
payload内容。
这里需要个前提,就是有客户端订阅topic=”天气”这个主题;旦客户端订阅该主题,效劳端就会每收到该主题的消息,都会推送
给订阅该主题的客户端。假设客户端不需要关注该主题了,也就是说不想承受到这样的推送消息了,只要取消
otpic=”天气”的主题订阅即可。
MQTT协议是为大量计算力量有限,且工作在低带宽、不行靠的网络的远程传感器和掌握设备通讯而设计的协议,它具
有以下主要的几项特性:使用公布/订阅消息模式,供给一对多的消息公布,程序耦合;对负载内容屏蔽的消息传输;使用TCP/IP供给网络连接;有三种消息公布效劳质量:
解除应用
至多一次”,消息公布完全依靠底层TCP/IP网络。会发生消息丧失或重复。这一级别可用于如下状况,环境传感器数据,丧失一次读记录无所谓,由于不久后还会有其次次发送。
至少一次”,确保消息到达,但消息重复可能会发生。
只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丧失会导致不正确的结果。
在实际编程中,只需要设置QoS值即可实现以上几种不同消息公布效劳质量模式〕小型传输,开销很小〔固定长度的头部是2字
节〕,协议交换最小化,以降低网络流量;使用LastWill和
Testament特性通知有关各方客户端特别中断的机制;
生成dll库?混合编程?在开头开发之前需要做一些预备工作,
MQTT已经把全部的
APIs封装好了,我们可以使用它的dll库,也可以直接导入源码进展混合编程,一般要求不高的话(由于不太懂得话,最好不要修改源码)可以直接将源码生成dll,然后使用即可,
文就是使用该方式:
gitclones://github/eclipse/paho.mqtt.c.git
从这里获得CClient源码之后,可以直接使用VS翻开(我是VS2023〕:对于上图的说明,下载源码后,翻开将是以上界面,包括
来个工程,这里讲解几个:
paho-mqtt3a: 般实际开发中就是使用这个,异步消息推送(asynchronous)。
a表示的是
paho-mqtt3as:as表示的是异步+加密
asynchronous+OpenSSL〕。
Paho-mqtt3c:c表示的应当是同步(Synchronize),一般性能较差,是发送+等待模式。
paho-mqtt3cs:同上,增加了一个OpenSSL而已。
这里依据
您可能关注的文档
- MQ-04微正压说明书.docx
- MQ-2023年PT糖化血红蛋白仪维护作业指导书.docx
- MQ-2烟雾传感器设计资料原理图使用手册.docx
- MQ-3酒精传感器设计原理图及其程序.docx
- MQ-7一氧化碳传感器设计原理图及pcb图程序.docx
- MQ137氨气传感器气体传感器说明书.docx
- MQ2535门座起重机安装方案.docx
- MQ4590K12型门座机总装.docx
- MQ600门座式起重机安装技术.docx
- mq7传感器的内容.docx
- 计及电动汽车移动储能动态电价的微电网优化调度研究及解决方案.pdf
- 浅谈电动汽车充电桩绝缘智能化自检装置的设计与应用 .pdf
- 浅谈电动汽车公共充电桩布局方案评价方法.pdf
- 浅谈基于弹性响应的电动汽车快充电价定价策略 汽车充电桩有序充电.pdf
- 浅谈光储充一体化社区的有序充电策略及解决方案.pdf
- 晚期肾透明细胞癌系统性治疗中国专家共识(2024版).pptx
- 中国膀胱癌保膀胱治疗多学科诊治协作共识(2022版).pptx
- 成人心血管外科手术体外循环患者血液管理指南.pptx
- 下尿路修复重建移植物应用规范中国专家共识.pptx
- 中国儿童急性非静脉曲张性上消化道出血诊治指南(2024).pptx
专注地铁、铁路、市政领域安全管理资料的定制、修改及润色,本人已有7年专业领域工作经验,可承接安全方案、安全培训、安全交底、贯标外审、公路一级达标审核及安全生产许可证延期资料编制等工作,欢迎大家咨询~
文档评论(0)