我想构建一个可以与许多客户进行实时轮询的应用程序(想想总部问答)。 以最快的速度和最低的成本实现这一目标的最佳技术/方法是什么?
我以前使用过socket.io,但是对于我要连接的大量客户端来说,这并不足够。
我的服务器在node.js上运行
答案 0 :(得分:1)
这是一个非常广泛的问题,实际上只能通过非常广泛的建议和建议来解决。
基本上,它可以归结为:
Socket.io实际上与连接数无关。通过基于本机http / https模块编写自己的websocket库,也许可以减少CPU周期或内存使用,但是可能会牺牲稳定性,安全性和/或功能。不管您使用什么,只要有足够的流量,最终您都会遇到瓶颈。可能是网络带宽,CPU使用率,内存等。
遇到瓶颈时,您只需要制定一个解决方案即可。您可以通过升级服务器以具有更多的CPU,内存或带宽来做到这一点,或者可以进行负载平衡设置并扩展服务器数量。