【物联网】12.物联网服务器发送方式(HTTP,WebSocket ,MQTT )

本文探讨了如何通过HTTP、WebSocket和MQTT协议实现实时与异步数据传输,重点关注WebSocket和MQTT在解决设备连接问题和简化服务器管理上的优势,尤其是MQTT的发布/订阅模型在设备间通信中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

发送服务器的目的在于向设备发送数据并控制设备。

这篇主要是利用HTTP、WebSocket、MQTT 协议来看看如何实现同步和异步传输。

HTTP 发送数据

发送服务器等待接收HTTP 请求的Web 服务器。设备向这台服务器申请发送数据,作为响应,服务器把数据发给设备。

使用者需要定期从设备执行轮询连接。

原因有二:

1.无法确定唯一地址,例如无法给设备设定全局IP 地址等。这种情况下,发送服务器就不知道应该把数据发送给哪台设备了。

2.考虑到设备频繁断电和移动线路的传输费用。此时,设备没有持续连接网络。即使设备已经连接过网络,但只要没有持续连接,那么,即使发送服务器执行了发送数据的操作,也发不到设备那里去。

WebSocket 发送数据

使用WebSocket 时,需要用设备连接发送服务器,并确立WebSocket连接。只要建立了一次WebSocket 连接,就能实现从发送服务器和客户端发送数据。

 

MQTT 发送数据

前文介绍了HTTP 和WebSocket,它们采用的方法都是由设备访问发送服务器。就这些方法而言,只要客户端没有发出申请,数据就不会被发送。当然使用者也可以在设备上建立HTTP 和WebSocket 协议,由服务器来连接设备。不过,一旦增加了设备,服务器想管理所有设备就
相当困难了。

针对这点,来试着看一下这种服务器:它灵活运用MQTT,并且发挥了发布/ 订阅模型的优点。使用MQTT 时的发送服务器如图所示。

首先设备作为订阅者,向MQTT 中介进行订阅。然后,发送服务器则是发布者,同样向中介进行发布。这样一来,发送服务器只需要把确定的数据加在主题上发送就行了,发送服务器和设备都不需要知道彼此的地址。只要知道中介的地址,就能够实现通信。一旦订阅者断开,中介就会负责在断开时发送通知,并在重新连接时再次发送数据。


通过灵活运用MQTT 的功能,构建发送服务器就变得简单多了。 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CodeAllen嵌入式

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值