我需要跟踪移动的汽车。
我是否应该在每次位置更改时发布位置,并通过套接字发送它?
或者应该创建一个 REST API 并发布位置(从被跟踪的设备)并每 10 秒检查一次(使用跟踪设备),无论位置是否发生变化?
(该应用程序是使用 React Native 制作的)
最佳答案
通过频繁更新构建 HTTP 请求比通过 websocket 发送消息需要更多资源。与使用 HTTP 相比,保持 Websocket 连接被许多用户打开需要更多的资源。在我看来,答案取决于用户数量、更新频率、是否应用 REST 约束(无服务器端 session )以及您使用的 HTTP 版本(据我所知,HTTP2 比 HTTP1.1 更高效)。我认为如果没有测量,我们无法告诉您这一点。
如果要将数据从服务器推送到客户端也是如此。如果您经常这样做并且更新必须几乎立即进行,那么 websocket 可能是比轮询更好的选择。如果您很少这样做并且延迟(轮询频率)可能是几分钟,那么轮询可能会更好。
请注意,我不是负载扩展方面的专家,这只是外行人的逻辑。
关于node.js - 我应该使用 REST API 还是 Socket.io 作为地理定位应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34714112/