具有COAP,MQTT或其他轻量级协议的RESTful API

时间:2017-11-13 14:25:48

标签: rest http mqtt coap

我有一个工作的HTTP RESTful API,它将接收一个ID,然后检查数据库中的数据。根据记录和相关记录的状态,它将返回状态错误,或者如果一切准备就绪,它将返回有关记录的一些信息。它还有一些其他功能,但我的问题是我们用来收集这些数据的设备无法访问WiFi,我们正在计划测试2G蜂窝解决方案,但我知道如果它甚至连HTTP请求都会太慢完成。

我的设备可以将36个字符的UUID发送到服务器并获取JSON响应。我一直在探索有关MQTT和COAP的信息,但是没有看到关于向另一台设备询问记录的特定ID的更多信息,这更像是要求硬件的状态。

此外,如果有解决方案,我可以与我现有的API接口,这将是理想的。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我不确定为什么2G蜂窝解决方案不能很好地与HTTP(S)兼容。

根据另一个SO answer,http的大小是:

  

今天的请求标头各不相同   大小从 ~200字节到超过2KB 。应用程序使用更多cookie   和用户代理扩展功能,典型的标头大小为700-800字节   很常见

根据wiki,你可以达到40kbit / s。我不确定在这种情况下使用http(s)是什么问题。

如果您使用类似UDP的东西,它可以更快,更小,但由于丢包的可能性,它不如HTTP可靠。更不用说你也可以在HTTP请求上应用gzip或其他形式的压缩,使其更小。

次要更新

如果不需要该数据,您可以每小时或半天批量上传,将所有数据存储在本地数据库中,并以特定时间间隔执行1个主要HTTP请求,该请求稍微大一些,但将包含所有数据数据?我不完全确定你的要求是什么,但对于2G以上的情况,HTTP应该没问题