什么是我可以用来支持大约 5000 万用户的最佳负载平衡策略和软件,每个用户都有 Http Long Polling/Websockets 请求(这很重要)。我现在正在尝试 Node.js + Nginx 选项,但我也听说过 Erlang。是否有已被证明可以处理此类负载的解决方案?
更新 - 我有一个错字。预计并发量约为 5000 万,而不是 5 亿。
首先,5亿是美国人口的1.6倍。这个数字非常高,甚至可能过高。如果你真的需要扩展到这个数字,你需要一个策略来让不止一台机器工作。没有机器本身可以真正处理这个问题。单独的 TCP 套接字缓冲区很容易打破太字节的内存范围,特别是因为您想使用长轮询。我有一种预感,您的要求高于 Google 对长期连接的要求。
如果你想这样做,没有单一的技术可以做到。您需要使用几个不同的子系统,并且需要考虑如何存储数据、如何移动数据等等。考虑到一个相当大的集群,我认为 Node.js 或 Erlang 作为拼图的一部分确实是不错的选择。但这并不能解决为 5 亿用户存储数据的问题。