我知道我要问的问题有点重复。但是,我仍然在问,因为我想了解最新的技术,在研究了几个小时后我有点迷茫。
我有一个树莓派记录实时温度和湿度。现在,我正在编写一个烧瓶应用程序,将这些数据推送给客户(受权限约束(将能够在不刷新仪表板/页面的情况下连续观察。
考虑到未来将有多个传感器,制造高效系统的最佳选择是什么?我找到的选项:
- 阿贾克斯
- 网络套接字
- 框架,例如散景或破折号
- MQTT
请给我你的意见。
如果你想使用Python编写后端,不错的选择是:
服务器:带 Sokcet.IO+InfluxDB的烧瓶,用于实时数据存储
前端:一些JS框架或纯Js + websocket
UPD(此消息太长,无法将其发布到评论中(:
https://www.smashingmagazine.com/2018/02/sse-websockets-data-flow-http2/
问题是我并不是说 websocket 是所有可能的情况/问题的正确解决方案,应该在任何地方使用。显然,这取决于您的需求和项目架构。我认为这篇文章可以帮助您做出选择:如果您的应用程序架构需要全双工浏览器-服务器连接 - 您可以使用 websocket 来执行此操作,这将为您工作,但是如果您的前端只需要单向数据发送方向- 从服务器到浏览器 - 您可以使用 SSE,正如文章关于 SSE 所说:"我们的主要数据流是从服务器到客户端,在更少的情况下来自客户端到服务器"。总而言之,您需要考虑您的应用程序架构以及如何在浏览器和服务器之间发送数据以选择正确的技术。另外,如果你不想使用websocket或SSE - 你可以使用ajax从服务器中提取数据,这也对你有用。