我想使用node.js来构建一个Web应用程序,可能会使用socket.io,但是我对是否使用socket.io或者使用普通的HTTP协议感到很困惑。在这个应用程序中,node.js服务器基本上是一个API服务器,向JavaScript客户端或移动客户端提供JSON服务。Web应用程序还将为其用户提供聊天功能,这就是socket.io发挥作用的地方。
我不确定是否要在整个应用程序中使用socket.io,还是仅在聊天部分使用。虽然我的应用程序本身可以从socket.io中受益,但我认为只需使用普通的http协议并使客户端向服务器发送更多请求即可完成。
我在几个地方读到过,有时候socket.io很难扩展到更多的用户。
Socket.io经常会崩溃,特别是当客户端系统中存在防火墙时。
更重要的是......我查看了socket.io用户列表,并没有找到很多用户,所以我很好奇像Facebook Messenger、Google Talk等知名聊天网络平台是使用哪种平台构建的,它们是否使用HTTP-AJAX和持续查询服务器。
请帮助我解决这个问题。有人可能会认为这是一个基于观点的问题。但实际上,我想了解socket.io的实现和限制。