Linux MQTT开发之mosquitto
MQTT:
- 使用特点
(1)使用原生Socket的场景
通信拓扑极简:仅两个设备点对点直连,完全不需要一对多、多对多的消息分发。
极致性能需求:要求毫秒级低延迟、无中间代理转发,需要自定义私有二进制协议。
传输大体积数据:需要传输大文件、流媒体等大数据量内容,不受MQTT消息大小限制。
学习或极简实验:仅用于TCP编程原理学习,不想引入额外协议依赖。
(2)使用MQTT的场景
多设备通信:存在大量传感器、执行器,需要按Topic实现灵活的一对多广播分发。
网络环境不稳定:设备处于弱网、频繁断线的移动场景,需要自动重连、离线消息缓存。
降低开发成本:不想从零实现心跳保活、消息重传、连接状态管理等底层逻辑,大幅减少代码量。
需要分级可靠性:可通过内置的QoS 0/1/2等级,灵活匹配不同数据的送达保障要求。
mosquitto 在开发平台的移植与使用:
- 交叉编译
- 将 *.a / *.so 集成到项目代码
- 编写业务代码

浙公网安备 33010602011771号