mqttcclient实现消息推送入门指南.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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而已。

这里依据

文档评论(0)

写作定制、方案定制 + 关注
官方认证
服务提供商

专注地铁、铁路、市政领域安全管理资料的定制、修改及润色,本人已有7年专业领域工作经验,可承接安全方案、安全培训、安全交底、贯标外审、公路一级达标审核及安全生产许可证延期资料编制等工作,欢迎大家咨询~

认证主体天津析木信息咨询有限公司
IP属地天津
统一社会信用代码/组织机构代码
91120102MADGNL0R92

1亿VIP精品文档

相关文档