socket.io 与其余 api 之间的资源比较

resource comparison between socket.io vs rest api

我正在 socket.io 和 node.js expressjs 4 上构建应用程序。 在我看来 socket.io 比 Rest API 占用更多资源。 我想知道如何比较 RestApis 与 Socket.io 在内存、CPU 使用方面的差异,以及哪个最适合大型应用程序 谢谢

为了比较内存和 CPU 使用情况,我建议分别对每个查询执行大量查询(比如一千次)并观察进程的内存和 cpu。现在哪个更好不是那么简单。这一切都取决于... Socket.io 被设计成一个实时工具,所以在有很多实时操作的大型应用程序中,它更好。但是在实时不是问题的大型应用程序中,我相信(从未真正测试过知道数字)你可以使用 RESTful API 获得更少的内存使用,主要是因为 websocket 是有状态的,所以服务器需要有它内存中的每个连接。另一件要记住的事情是 HTTP 协议有很多 websocket 不喜欢的 gzipping、缓存、路由、SEO、代理等等。

一篇关于此的好文章:REST vs WebSocket

你可能会从下面提到的博客中得到帮助

http://www.pubnub.com/blog/websockets-vs-rest-api-understanding-the-difference/

http://blog.arungupta.me/rest-vs-websocket-comparison-benchmarks/

这些说明了差异的完整细节。